Jedes Mal werden neue Bean-Instanzen von referenzierenden Beans abgerufen

Ich habe zwei Fragen ...

1) Ich habe eine Abfrage, ob Beans im Spring-Container selbst initialisiert werden, wenn der Spring-Container initialisiert wird, und bevor die Methode get bean () aufgerufen wird, ist dies das Standardverhalten. Wie kann ich die Anwendung auf diese Weise konfigurieren? Diese Bohne sollte nur dann im Container initialisiert werden, wenn ein Aufruf von getbean () erfolgt. Dazu müssen wir die Bohne als Prototyp deklarieren.

2) Die zweite Frage ist, dass Sie zuerst das folgende Beispiel durchgehen müssen ...

 <beans>
<bean id="triangle"  class="Demo.Triangle" scope="singleton" >
<property  name="pointA" ref="zeropoint"/>
<property  name="pointB" ref="firstpoint"/>
<property  name="pointC" ref="secondpoint"/>
</bean>

<bean id="zeropoint"  class="Demo.Point"  scope="prototype" >
<property name="x" value="10" /> 
<property name="y" value="20" /> 
</bean>


<bean id="firstpoint"  class="Demo.Point"  scope="prototype" >
<property name="x" value="10" /> 
<property name="y" value="20" /> 
</bean>

<bean id="secondpoint"  class="Demo.Point" scope="prototype">
<property name="x" value="10" /> 
<property name="y" value="20" /> 
</bean>

Wie oben angegeben, ist die Triangle-Bean Singleton und die Verweise auf Bean Protoype. Wenn ich nun auf Singleton zugreife, werden die anderen Referenzbeans ZeroPoint, FirstPoint und SecondPoint auch nur einmal in Bezug auf Triangle initialisiert Um erstellt zu werden, wenn die Triangelbohne abgerufen wird, teilen Sie uns bitte mit, wie dies möglich ist. Ist es durch mein Pojo erreichbar, das die ApplicationContextAware-Schnittstelle implementiert?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage