Beispiel für Spring-Init-Methode und Destroy-Methode
Im Frühjahr können Sieinit-method unddestroy-method als Attribut in der Bean-Konfigurationsdatei für Bean verwenden, um bestimmte Aktionen bei der Initialisierung und Zerstörung auszuführen. Alternative zuInitializingBean and DisposableBean interface.
Beispiel
Hier ist ein Beispiel, das Ihnen zeigt, wie Sieinit-method unddestroy-method verwenden.
package com.example.customer.services;
public class CustomerService
{
String message;
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public void initIt() throws Exception {
System.out.println("Init method after properties are set : " + message);
}
public void cleanUp() throws Exception {
System.out.println("Spring Container is destroy! Customer clean up");
}
}
File : Spring-Customer.xml, definieren Sie die Attributeinit-method unddestroy-method in Ihrer Bean.
Starte es
package com.example.common;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.example.customer.services.CustomerService;
public class App
{
public static void main( String[] args )
{
ConfigurableApplicationContext context =
new ClassPathXmlApplicationContext(new String[] {"Spring-Customer.xml"});
CustomerService cust = (CustomerService)context.getBean("customerService");
System.out.println(cust);
context.close();
}
}
Die Datei ConfigurableApplicationContext.close schließt den Anwendungskontext, gibt alle Ressourcen frei und zerstört alle zwischengespeicherten Singleton-Beans.
_
Output_
Init method after properties are set : i'm property message com.example.customer.services.CustomerService@47393f ... INFO: Destroying singletons in org.springframework.beans.factory. support.DefaultListableBeanFactory@77158a: defining beans [customerService]; root of factory hierarchy Spring Container is destroy! Customer clean up
DieinitIt()-Methode wird aufgerufen, nachdem die Nachrichteneigenschaft festgelegt wurde, und diecleanUp()-Methode wird nach context.close () aufgerufen.
Thoughts…
Es wird immer empfohlen,init-method unddestroy-method in der Bean-Konfigurationsdatei zu verwenden, anstatt die Schnittstellen InitializingBean und DisposableBean zu implementieren, damit Ihr Code unnötig an Spring gekoppelt wird.
Quellcode herunterladen
Laden Sie es herunter -Spring-init-method-destroy-method-Example.zip