zoukankan      html  css  js  c++  java
  • 用静态工厂的方法实例化bean

    //代码如下:

    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());
        }
    }
  • 相关阅读:
    LNMP 部署
    zabbix3.2安装graphtree3.0.4
    升级java8---from centos
    mysql5.6-5.7性能调优
    samba server install
    centos7 zabbix3 install done
    实验四总结
    第五周学习小结
    个人的一些html、css笔记
    为什么wait,notify,notifyAll定义在Object中?
  • 原文地址:https://www.cnblogs.com/1540340840qls/p/7885114.html
Copyright © 2011-2022 走看看