In diesem Artikel werde ich Ihnen verschiedene Methoden zur Instanziierung von Bohnen im Frühling durch den Beispielcode vorstellen. Schauen wir uns den spezifischen Inhalt an.
1. Verwenden Sie den Klassenkonstruktor, um die Instanziierung zu implementieren (Bean's eigener Konstruktor)
<bean id = "orderService"/>
2. Verwenden Sie statische Fabrikmethoden, um Instanziierung zu erreichen
<bean id = "personSservice" class = "cn.itcast.orderFactory" factory-method = "createorder"/> öffentlicher Klasse orderfactory {private statische OrderFactory orderfactory = new OrderFactory (); private orderfactory (); public static orderFactory createorder () {return orderFactory; }}A.
<bean id = "personSserviceFactory" class = "cn.itcast.service.orderfactory"/> <bean id = "perssionService" factory-bean = "personServiceFactory" Material-method = "createorder"/> öffentlich-klassen-ordnungsfaktor {private statische Ordnerservice = new orderservice (); private orderfactory (); public static orderService createorderservicebean {return orderService; }}Normalerweise rufen wir den Beanfaktor- oder Anwendungscontext an, der für das Laden von Bohnen -Federbehältern verantwortlich ist. Beide werden mit Bohnen über die XML -Konfigurationsdatei geladen. Im Vergleich zu ApplicationContext und Beanfacotry besteht der Hauptunterschied darin, dass Beanfacotry faul geladen ist und die Bean so sofort wie Getbean () aufgerufen wird. Wenn ein bestimmtes Attribut der Bohne nicht injiziert werden kann, wird zu diesem Zeitpunkt eine Ausnahme ausgelöst. und ApplicationContext standardmäßig, wenn Sie sich selbst initialisieren, es sei denn, Lazy-init = "True" ist auf die Bohne festgelegt, was für die Überprüfung der Überprüfung der Injektion des Abhängigkeitsattributs förderlich ist.
Darüber hinaus bietet ApplicationContext mehr Erweiterungsfunktionen, z. B. die internationale Verarbeitung von Ressourcendateien und die Verarbeitung von BeanPostProcessor. Daher verwenden wir in J2EE -Anwendungen normalerweise die AnwendungContext. Unabhängig davon, ob Beanfactory oder ApplicationContext, initialisiert Spring Bohnen standardmäßig in Singleton.
Zur Initialisierung von Beanfaktorien wird normalerweise der folgende Code verwendet:
Classpathresource ressource = new classpathresource ("beans.xml"); Beanfactory factory = new XmlbeanFactory (Ressource);Für die Initialisierung von ApplicationContext ist es normalerweise in web.xml konfiguriert:
<Context-Param> <param-name> contextconfigLocation </param-name> <param-value> classpath: conf/Appcontext.xml </param-value> </context-param> <Hörer> <Listener-Class> org.springFramework.web.context.context.contexturteerListener-Veriste </hörer-claser> context.context.
Zusammenfassen
Das obige ist die detaillierte Erläuterung des Code der Frühlings -Instantiationsbohnen. Ich hoffe, es wird für alle hilfreich sein. Interessierte Freunde können weiterhin auf andere verwandte Themen auf dieser Website verweisen. Wenn es Mängel gibt, hinterlassen Sie bitte eine Nachricht, um darauf hinzuweisen. Vielen Dank an Freunde für Ihre Unterstützung für diese Seite!