spring框架:IOC注解形式的管理

目录

半注解形式:

 全注解形式:(详见笔记)


之前,我们一直在配置文件里写bean标签,用DI注入的方式,将实现类交给spring工厂去管理,然后通过spring工厂去创建实现类的对象

下面我们来看一种新的将实现类交给spring工厂去管理的方式:IOC注解

好处:不用再写配置文件,进行注入

首先我们来看

半注解形式:

使用注解进行注解扫描,但是仍然存在配置文件,最后加载类创建实例对象的时候仍然使用配置文件去加载和创建。

用法:

1、在配置文件里面加上注解扫描:

<context:component-scan base-package="com.qcby.service"/>
可以把范围写大一点

2、在需要交给IOC容器管理的类上加上注解:

比如:

@Component("us") 任何地方 通用的

@Controller("us") 只使用于表现层

@Repository("us") 持久层

@Service("us") 业务层

里面的参数:可以自己指定参数作为名称

如果没有指定名称,则默认使用首字母小写的类名

注解实现DI注入:

常用的注解:

​ @Value 用于注入普通类型(String,int,double等类型)

​ @Autowired 默认按类型进行自动装配(引用类型,对象) 注意,此时引用类型注入仍需在配置文件书写

举例:

@Qualifier 和@Autowired一起使用,强制使用名称注入

​ @Resource Java提供的注解,也被支持。使用name属性,按名称注入,可以代替上面的两个注解

 @Scope 生命周期注解,取值singleton(默认值,单实例)和prototype(多例)

放在类的上面

 全注解形式:(详见笔记)

使用注解进行注解扫描,编写配置类完全替换配置文件,在配置类上加扫描器

1、在实体类上加注解

2、编写配置类:

此时即可实现与配置文件相同的功能

3、测试类进行测试的方法

拿到对象:

现在有一个问题,不写配置文件,可以通过在实体类或者属性上加注解来进行扫码或注入

那么下面这个dataSource,如何加注解扫描注入?

可以在配置类写一个方法加上@bean注解,效果与上面配置类书写的bean标签效果一致

@Bean注解 只能写在方法上,表明使用此方法创建一个对象,对象创建完成保存到IOC容器中

如果有多个配置类,可以在主配置类加注解导入另一个配置类

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值