我有一个名为abc.xml的文件,其中定义了下面的bean,请求你告诉我如何在我的java类中显式调用这个bean,我想把这个bean作为这个bean的引用来调用我的类所以我想从我的java类中明确地调用这个bean
下面的是abc.xml中定义的spring bean
<bean id="springJobExecutor" class="com.scheduler.autosys.core.SpringBeanJobExecutor" singleton="false"/>
我想明确地从java类中调用这个bean,请告知
答案 0 :(得分:0)
你的意思是简单注射吗?您必须创建ApplicationContext对象并从中获取实例:
ApplicationContext context = new ClassPathXmlApplicationContext("abc.xml");
SpringBeanJobExecutor springJobExecutor =
context.getBean("springJobExecutor", SpringBeanJobExecutor.class);
或者,如果你的意思是依赖注入使用构造函数...
<bean id="springJobExecutor"
class="com.scheduler.autosys.core.SpringBeanJobExecutor" singleton="false"/>
<bean id="myObject" class="myClass" >
<constructor-arg index="[argument_index]" ref="springJobExecutor"/>
</bean>
或使用setter ......
<bean id="springJobExecutor"
class="com.scheduler.autosys.core.SpringBeanJobExecutor" singleton="false"/>
<bean id="myObject" class="myClass" >
<property name="[name]" ref="springJobExecutor"/>
</bean>
最后在main中获取对象...
MyClass myObject = context.getBean("myObject", MyClass.class);