易学笔记--第2章:spring中的Bean/2.2 Bean的实例化

第2章:spring中的Bean/2.2 Bean的实例化/2.2.1 调用构造方法

  • 调用构造方法

 

  1. 无参构造方法: 第1章:spring注入/1.1 元数据配置/1.2 XML配置方式/1.2.2 XML文件结构/1.2.2.3 Bean的定义
  2. 有参数构造方法: 第1章:spring注入/1.2 依赖注入/1.2.2 构造方法注入/1.2.2.0 目录

第2章:spring中的Bean/2.2 Bean的实例化/2.2.2 调用静态方法

  • 调用静态方法

 

  1. 格式:在 第1章:spring注入/1.1 元数据配置/1.2 XML配置方式/1.2.2 XML文件结构/1.2.2.3 Bean的定义基础上,添加factory-method="静态方法"

    <bean id="bean的名称" class="含包名的类名"  factory-method="静态方法">

  2. 静态方法要求:
    1. 静态方法没有传人参数
    2. 返回值为具体的类或者接口,但是可以和  class="含包名的类名"  中的类没有任何关系
    3. 静态方法 属于  class="含包名的类名"中的方法
  3. 举例:
    1. @Component

      public class FooFactory {

           @Bean(name="foo31")

           public static Foo createFoo3() {

                 Foo foo = new Foo();

                 foo.setName("foo3");

                 return foo;

           }

    2.      <!-- 要求静态方法属于com.wiley.beginningspring.ch2.FooFactory 这个类 -->

           <bean id="foo3" class="com.wiley.beginningspring.ch2.FooFactory" factory-method="createFoo3"/>


第2章:spring中的Bean/2.2 Bean的实例化/2.2.3 调用工厂方法

  • 调用静态方法

 

  1. 格式:
    1. 先生成工厂Bean,格式参照:在 第1章:spring注入/1.1 元数据配置/1.2 XML配置方式/1.2.2 XML文件结构/1.2.2.3 Bean的定义
    2. 利用工厂Bean调用不同的工厂方法(非静态)生成不同的Bean

      工厂Beans是第一步生成的bean

       <bean id="bean名称" factory-bean="工厂Bean" factory-method="工厂方法"/>

  2. 工厂方法要求:
    1. 工厂方法没有传人参数
    2. 返回值为具体的类或者接口,但是可以和  class="含包名的类名"  中的类没有任何关系
    3. 工厂方法 属于  class="含包名的类名"中的方法
  3. 举例:
    1. 定义工厂方法

      @Component

      public class FooFactory {

           @Bean(name="foo4")

           public Foo createFoo4() {

                 Foo foo = new Foo();

                 foo.setName("foo4");

                 return foo;

           }

    2. XML文件定义:

      <!-- 生成工厂Bean -->

           <bean id="fooFactory" class="com.wiley.beginningspring.ch2.FooFactory"/>

           <!-- 利用工厂Bean,调用相关的方法初始化Bean -->

           <bean id="foo4" factory-bean="fooFactory" factory-method="createFoo4"/>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

易学笔记(qq:1776565180)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值