//代码如下:
package com.timo.domain;
public class ClientService {
//use static factory method create bean
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public static ClientService getClientService() {
return clientService;
}
public static void setClientService(ClientService clientService) {
ClientService.clientService = clientService;
}
private static ClientService clientService=new ClientService();
private static People people=new People();
private ClientService(){}
public static ClientService createInstance(){
clientService.setName("杨贵妃");
return clientService;
}
public static People createPeopleInstance(){
return people;
}
}
配置文件
applicationContext-static-factory.xml
的代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<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.xsd">
<bean id="clientService" class="com.timo.domain.ClientService" factory-method="createInstance"/>
</beans>
测试类的代码如下:
package com.timo.test;
import com.timo.domain.ClientService;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Test4 {
public static void main(String[] args) {
ClassPathXmlApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext-static-factory.xml");
ClientService clientService = applicationContext.getBean(ClientService.class);
System.out.println("name="+clientService.getName());
}
}
来源:https://www.cnblogs.com/1540340840qls/p/7885114.html