spring入门实例 初始化bean
实例factory bean
配置文件
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<!--
<bean name="xmlData" class="com.myspring.DataBaseXMLOutput" factory-method="createInstance"/>
-->
<bean name="xmlbeanfactory" class="com.myspring.DataBaseXMLOutput"/>
<bean name="xmlbean" class="com.myspring.DatabaseXMLBean" factory-bean="xmlbeanfactory" factory-method="createInstance"/>
</beans>
bean和测试main:
public class DataBaseXMLOutput
{
private String root = "";
public String getRoot()
{
return root;
}
public void setRoot(String root)
{
this.root = root;
}
public String getChild()
{
return child;
}
public void setChild(String child)
{
this.child = child;
}
private String child = "";
public static void main(String[] args)
{
ApplicationContext context = new ClassPathXmlApplicationContext("com/myspring/databasexmloutput.xml");
DataBaseXMLOutput output = (DataBaseXMLOutput) context.getBean("xmlData");
System.out.println(output.getChild());
public static DatabaseXMLBean createInstance()
{
DatabaseXMLBean bean = new DatabaseXMLBean();
bean.setName("emp");
bean.setLength(10);
return bean;
}
}
可是会报:factory bean 'xmlbeanfactory'; factory method 'createInstance()'. Check that a method with the specified name exists and that it is non-static.