zoukankan      html  css  js  c++  java
  • Spring初学之FactoryBean配置Bean

    实体bean:

    Car.java:

    package spring.beans.factorybean;
    
    public class Car {
        private String name;
        private int price;
        public Car(String name, int price) {
            super();
            this.name = name;
            this.price = price;
        }
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public int getPrice() {
            return price;
        }
        public void setPrice(int price) {
            this.price = price;
        }
        @Override
        public String toString() {
            return "Car [name=" + name + ", price=" + price + "]";
        }
    }
    CarFactoryBean.java:
    package spring.beans.factorybean;
    
    import org.springframework.beans.factory.FactoryBean;
    
    /**
     * 通过factoryBean来创建实例
     * @author Administrator
     *
     */
    public class CarFactoryBean implements FactoryBean<Car> {
    
        private String name;
        private int price;
        
        public void setName(String name) {
            this.name = name;
        }
    
        public void setPrice(int price) {
            this.price = price;
        }
    
        /**
         * 返回一个bean实例
         */
        @Override
        public Car getObject() throws Exception {
            
            return new Car(name, price);
        }
    
        /**
         * 返回bean的类型
         */
        @Override
        public Class<?> getObjectType() {
            // TODO Auto-generated method stub
            return Car.class;
        }
    
        /**
         * 是否是单实例
         */
        @Override
        public boolean isSingleton() {
            // TODO Auto-generated method stub
            return true;
        }
    
    }

    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">
    
    <!-- 
        通过factorybean来创建实例
        我们设置的是CarFactoryBean的属性,
        返回的是Car的实例
     -->
    <bean id="car" class="spring.beans.factorybean.CarFactoryBean">
        <property name="name" value="奥迪"></property>
        <property name="price" value="300000"></property>
    </bean>
    
    </beans>
  • 相关阅读:
    Centos 7.9 部署可道云
    shell简单检查URL
    TIME_WAIT和CLOSE_WAIT状态过多的分析与解决
    win10 关闭自动更新
    Python3 按backspace问题 ^H
    CentOS7设置笔记本合盖不休眠
    centos7 /boot/分区处理
    if __name__ == '__main__'
    在Linux中了解TCP包装器(/etc/hosts.allow&/etc/hosts.deny)
    华为路由器端口映射
  • 原文地址:https://www.cnblogs.com/hyyq/p/6701801.html
Copyright © 2011-2022 走看看