Java进阶---spring工场的实现(又叫ioc容器)

spring工场的实现(又叫ioc容器)

问题:你想让bean工厂帮你new对象,首先要告诉spring bean工厂需要产生什么对象?

第1步:导spring ioc相关的jar包
官网jar包下载地址

第2步:通过配置告诉spring bean工厂生产什么样的bean?

配置方式一:基于xml配置
配置xml的配置文件链接

  1. BeanFacotry 按需实例化
    ① getBean(id/name名称)
    ② getBean(类Class)
    ③ getBean(id/name,class)
    ④ getBean(class,构造方法参数)
    ⑤ getBean(id/name,构造方法参数)
    实例
  2. ApplicationContext 容器启动实例化所有的bean
    ① ClassPathXmlApplicationContext
    ② FileSystemXmlApplicationContext
    注意:classpath:spring-beans.xml
    ③  WebApplicationContext 集成 mvc框架
    ④ 默认spring bean工厂中产生的bean都是单例bean ,可以通过scope属性来修改
    例如:
    在这里插入图片描述
    配置方式2:基于注解配置
    1、xml+注解配置 (第1步:在xml中开启注解配置)
    注意:这里需要额外导入spring-aop的jar包
@Component被标示类会被纳入spring ioc容器进行管理,相当于
@Value为spring中所有管理的该类对象注入基本类型和String属性值
@Autowired为spring中所有管理的该类对象注入引用类型属性值;默认按类型注入,可以通过@Qualifier(“dog2”)指定注入哪个bean,同时也可以通过bean加入 primary=“true” 优先被Autowired注入
@Resource默认按类型注入,如果指定了name属性,则按bean名称注入

例如:
在这里插入图片描述

2、java配置+注解配置 (第1步:在配置类中开启注解扫描)
@ComponentScan(“com.cc.config”) 会去com.cc.config扫描@Component @Value @Autowired进行创建bean或注入属性值
在这里插入图片描述
配置方式3:基于java的配置(主流)
注意:需要再多导入一个包spring-aop-5.0.14.RELEASE.jar

@Configuration指定该类为spring ioc容器配置类,相当于beans.xml文件
@Bean(name=“user”)将方法返回值纳入到spring ioc容器进行管理,相当于 bean

在工厂中配置你所需要的
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值