I „myspring.xml“ in web.xml mit context-paramwie aus einer anderen Klasse Frühling Bohne laden
in „myspring.xml“ Ich Bohne ich Argumente als Konstruktorargument bestanden haben, auf die geschrieben haben, geladen haben
<bean id="abc" class="com.Hello">
<constructor-arg ref="dataSource"/>
<constructor-arg value= “dummy data”/>
</bean>
in Hallo Bohne ich habe initialisiert Konstruktor wie
public class Hello{
public Hello(datasource,dummydata){
}
public void methodFromHelloBean(){
// use here dummydata from constructor
}
}
Hier ‚Hallo‘ Bohne wird immer beim Serverstart initialisiert, wie ich in web.xml definiert und es funktioniert gut.
Meine Frage ist -
ich auf exisitng applciation arbeite. Ich möchte methodFromHelloBean() in meiner anderen Klasse sagen MyService-Klasse. Wie kann ich die Methode in der Klasse MyService aufrufen.
Eine Möglichkeit, die ich kenne, ist die Verwendung von ApplicationContext. Aber in meiner bestehenden Anwendung habe ich keine Bean mit Anwendungs-Kontext Pfad geladen.
was anders ist, wie ich 'Hallo' Bohne von 'MyService' Klasse initialisieren kann. Muss ich Parameter an Konstruktoren übergeben, während & wie initialisiert wird.
Vielen Dank im Voraus.
Wie wäre es, Hello Bean in MyService zu injizieren? Ist MyService als Spring Bean definiert? –
Ja, in vorhandenen Anwendungs-Beans wurde automatisch verdrahtet. Aber wenn ich denke, Auto-Draht zu verwenden, öffentliche Klasse MyService {@AutoWired Hallo. Nun, wie kann ich methodFromHelloBean aufrufen und Konstruktorargumente übergeben? –
Sie können nicht. Konstruktorargumente müssen zur Entwurfszeit im Spring-Kontext angegeben werden. Wenn Sie Ihrer Hello-Bean Parameter zuweisen müssen, muss dies über die Methode erfolgen, die Sie aufrufen möchten. –