欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【spring】实例化Bean(使用静态工厂方法实例化、使用实例工厂方法实例化)

程序员文章站 2022-05-21 22:44:15
...

1. 使用构造器实例化 默认

无法干预实例化过程

    <bean class="com.test.User" id="user">
        <constructor-arg name="id" value="1"></constructor-arg>
        <constructor-arg name="username"  value="zhangsan"></constructor-arg>
        <constructor-arg name="realname"  value="lisi"></constructor-arg>
    </bean>

2. 使用静态工厂方法实例化

factory‐method属性标签

<bean class="com.tuling.service.impl.UserServiceImpl" id="userService2"
factory‐method="createUserServiceInstance" >
</bean>

public static UserServiceImpl createUserServiceInstance()
  return new UserServiceImpl();
}

注意createUserServiceInstance()方法是静态的

3. 使用实例工厂方法实例化

与静态工厂实例方法类似,但是方法是实例方法,在bean的参数额外多了一个 factory-bean属性标签,用以区分是实例的。

<bean class="com.tuling.service.impl.UserServiceImpl" id="userService"
      factory-bean="serviceFactory"
      factory-method="createUserService" >
</bean>
public class createUserService{

    public UserServiceImpl createUserFactory(){
        return new UserServiceImpl();
    }
}

注意createUserFactory()方法是实例方法

相关标签: Java