Heim  >  Artikel  >  Java  >  Eine kurze Diskussion über die Initialisierung von Bohnen in Federbehältern

Eine kurze Diskussion über die Initialisierung von Bohnen in Federbehältern

高洛峰
高洛峰Original
2017-01-24 15:19:241261Durchsuche

Wenn wir dem Spring-Container eine Bean hinzufügen und deren Bereichsattribut nicht angegeben ist, ist der Standardwert Singleton, also ein Singleton.

Deklarieren Sie beispielsweise zuerst eine Bean:

public class People {
 private String name;
 private String sex;
 public String getName() {
  return name;
 }
 public void setName(String name) {
  this.name = name;
 }
 public String getSex() {
  return sex;
 }
 public void setSex(String sex) {
  this.sex = sex;
 }
   
}

Konfigurieren Sie

<?xml version="1.0" encoding="UTF-8"?>
<beans
 xmlns="http://www.springframework.org/schema/beans"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:p="http://www.springframework.org/schema/p"
 xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.1.xsd">
  
 <bean id="people" class="People" ></bean>
 
</beans>

in der applicationContext.xml Datei

Dann durch den Federbehälter holen:

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
  
  
public class SpringTest {
  
 public static void main(String[] args) {
  ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml");
  People p1=(People) context.getBean("people");
  People p2=(People) context.getBean("people");
  System.out.println(p1);
  System.out.println(p2);
 }
  
}

Nach dem Ausführen können Sie die Eingabe sehen von p1 und p2 Der Inhalt ist derselbe, was darauf hinweist, dass es sich bei den Bohnen im Frühjahr um Singletons handelt.

Wenn Sie keine Singleton-Bean möchten, können Sie das Scope-Attribut in Prototyp ändern

<bean id="people" class="People" scope="prototype" ></bean>

Auf diese Weise werden die Bohnen über den Federbehälter erhalten sind keine Singles.

Der Spring-Container erstellt standardmäßig automatisch Objekte für alle Beans. Wenn Sie sie erstellen möchten, wenn wir die Beans erhalten, können Sie das Lazy-Init-Attribut verwenden.

Dieses Attribut hat drei Wert standardmäßig, wahr, falsch. Der Standardwert ist derselbe wie „false“. Das Bean-Objekt wird erstellt, wenn der Spring-Container gestartet wird. Wenn er als „true“ angegeben ist, wird das Objekt nur dann erstellt, wenn wir die Bean erhalten.

Der obige Artikel, in dem die Initialisierung von Bohnen im Spring-Container kurz erläutert wird, ist der gesamte vom Herausgeber geteilte Inhalt. Ich hoffe, er kann Ihnen eine Referenz geben und hoffe, dass Sie die chinesische PHP-Website unterstützen.

Weitere Artikel zur Initialisierung von Bohnen in Federbehältern finden Sie auf der chinesischen PHP-Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn