• 用静态工厂的方法实例化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());
        }
    }
  • 相关阅读:
    DownloadManager
    Android(蓝牙)
    Android下集成Paypal支付
    java 网络(socket)
    java 泛型的几点备忘
    设计模式(模板方法)
    STM32F4_引领入门
    如何查找STM32开发资料
    Keil(MDK-ARM)使用教程(三)_在线调试
    Keil(MDK-ARM)使用教程(二)_菜单
  • 原文地址:https://www.cnblogs.com/1540340840qls/p/7885114.html
Copyright © 2020-2023  润新知