Spring的焦点原理

打印 上一主题 下一主题

主题 1992|帖子 1992|积分 5986

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
一、IOC容器的运行原理

  • 容器:Spring容器是整个焦点的载体(如BeanFactory和ApplicationContext)像一个超级工厂负责(既Bean)的创建、管理形成一套生命周期
  • IOC反转控制:IOC本质是一种头脑,是根据依赖倒置原则(DIP)来实现的一种规则,其焦点是通过对象的创建和依赖关系,将控制权从应用程序代码转移到容器,实现模块间的解耦。
  • 依赖注入(DI):依赖注入是IOC的焦点实现手段
补充:
DIP原则:高层模块不直接依赖低层模块,二者均依赖抽象(接口/抽象类)。抽象不依赖细节,细节依赖抽象。
解决痛点:
将所有的创建都交给工厂同一管理,而非开辟者手动创建,让开辟者将重心更倾向于业务代码上
二、Spring <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>IoC <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>容器定义 <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>XML <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>设置文件
以下是创建容器设置文件的几种方式
实现类
  1. [/code]
  2. [list]
  3. [*]id:表示bean在容器中的唯一标识,在获取bean时是根据id来获取
  4. [*]class:Bean的完整类名,通过反射创建实例后纳入容器中管理
  5. [/list]弁言
  6. [indent]以上得知bean标签的是通过class属性读取实现类,从而进行让Spring容器接管,那我们是不是也可以将自定义的工厂容器也一并交给Spring容器进行管理
  7. [/indent]业务接口如下:
  8. [code]public <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>interface <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>UserService <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>{
  9. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>/**
  10. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>* <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>添加用户
  11. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>*/
  12. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>void <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>add();
  13. }
复制代码
前提条件是要给实现类引入接口,例子如下:
  1. public <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>class <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>UserServiceImpl <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>implements <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>UserService <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>{
  2. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>@Override
  3. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>public <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>void <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>add() <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>{
  4. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean><bean <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>id="peopleServiceFactory" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>></bean>
  5. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>
  6. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean><bean <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>id="peopleService" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>factory-bean="peopleServiceFactory" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>factory-method="create"></bean>System.out.println("添加用户");
  7. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>}
  8. }
复制代码
容器的设置文件如下:
1.装配自定义工厂
自定义工厂如下:
  1. public <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>class <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>PeopleServiceFactory <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>{
  2. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>public <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>UserService <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>create(){
  3. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean><bean <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>id="peopleServiceFactory" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>></bean>
  4. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>
  5. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean><bean <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>id="peopleService" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>factory-bean="peopleServiceFactory" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>factory-method="create"></bean>//创建出来的对象也一并会纳入容器中管理
  6. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean><bean <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>id="peopleServiceFactory" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>></bean>
  7. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>
  8. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean><bean <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>id="peopleService" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>factory-bean="peopleServiceFactory" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>factory-method="create"></bean>return <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>new <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>PeopleServiceImpl();
  9. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>}
  10. }
复制代码
  1. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean><bean <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>id="peopleServiceFactory" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>></bean>
  2. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>
  3. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean><bean <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>id="peopleService" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>factory-bean="peopleServiceFactory" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>factory-method="create"></bean>
复制代码
Spring同样将这个工厂视为Bean来管理,也就是所谓的(FactoryBean)
2.装配静态工厂
自定义静态工厂如下:
  1. public <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>class <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>StudentServiceFactory <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>{ <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>public <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>static <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>UserService <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>create(){ <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean><bean <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>id="peopleServiceFactory" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>></bean>
  2. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>
  3. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean><bean <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>id="peopleService" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>factory-bean="peopleServiceFactory" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>factory-method="create"></bean>return <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>new <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>StudentServiceImpl(); <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>}}
复制代码
  1. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>
复制代码
目的是将创建出来的对象纳入容器中,而工厂本身不托管。
为什么说工厂本身不托管,由于通过静态方法是可以通过类名直接调用属于类别,从而不需要容器托管
3.基于FactoryBean来创建受管的Bean对象
  1. public <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>class <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>TeacherServiceFactoryBean <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>implements <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>FactoryBean <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>{ <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>/** <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>* <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>工厂方法,将创建的对象纳入容器管理 <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>* <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>@return <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>* <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>@throws <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>Exception <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>*/ <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>@Override <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>public <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>UserService <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>getObject() <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>throws <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>Exception <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>{ <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean><bean <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>id="peopleServiceFactory" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>></bean>
  2. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>
  3. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean><bean <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>id="peopleService" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>factory-bean="peopleServiceFactory" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>factory-method="create"></bean>return <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>new <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>TeacherServiceImpl(); <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>} <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>/** <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>* <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>Bean的class类型 <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>* <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>@return <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>*/ <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>@Override <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>public <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>Class <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>getObjectType() <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>{ <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean><bean <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>id="peopleServiceFactory" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>></bean>
  4. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>
  5. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean><bean <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>id="peopleService" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>factory-bean="peopleServiceFactory" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>factory-method="create"></bean>return <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>TeacherServiceImpl.class; <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>} <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>/** <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>* <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>是否是以单例来管理(默认就是单例模式) <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>* <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>@return <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>*/ <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>@Override <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>public <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>boolean <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>isSingleton(){ <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean><bean <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>id="peopleServiceFactory" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>></bean>
  6. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>
  7. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean><bean <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>id="peopleService" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>factory-bean="peopleServiceFactory" <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>factory-method="create"></bean>return <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>true; <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>}}
复制代码
自定义FactoryBean对象,必须实现Spring提供的FactoryBean接口
  1. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>
复制代码
Bean的作用域
Bean的作用域可以通过scope属性指定值如下:
singleton(默认项):单例,容器唯一保存的实例
prototype:原型,每次从容器中获取都会重新实例一次
容器设置文件xml如下:
  1. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>
复制代码
测试类如下:
  1. <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>ApplicationContext <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>context <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>= <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>new <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>ClassPathXmlApplicationContext("beans.xml"); <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>UserService <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>s1 <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>= <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>context.getBean(UserService.class); <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>UserService <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>s2 <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>= <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>context.getBean(UserService.class); <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>System.out.println(s1); <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean> <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>System.out.println(s2);
复制代码
通过输出的地点值即可知道两者区别,毋容置疑两者地点值相同则是从容器中拿出的唯一实例,后者相反。
弁言

  • 在容器底层中Bean标签的相应属性值是由Map集合保存如key保存唯一标识id,value则是存储组件实例。
  • 而不同作用域存储的Map也截然不同
单例原理解析如下:
  1. Map <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>singleTon <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>= <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>new <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>HashMap();Object <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>object <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>= <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>clazz.getConstructor() <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>.newInstance();singleTon.put("userService", <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>object);
复制代码
从value的类型可知存储的是创建好的实例
原型原理解析如下:
  1. Map <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>beanClass <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>= <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>prototypeMap.get("userService");beanClass.getConstructor().newInstance();
复制代码
Class是一个泛型类型,可接收恣意类的 <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>Class <bean id="userService"  scope="prototype"></bean><bean <bean id="userService"  scope="prototype"></bean>id="studentService" <bean id="userService"  scope="prototype"></bean> <bean id="userService"  scope="prototype"></bean>factory-method="create"></bean>,而Map的值中存储的是按需创建类的Class,从而通过类来重新实例

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

篮之新喜

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表