栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

spring ioc控制反转 注解注入

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

spring ioc控制反转 注解注入

spring 的注解注入有两种情况:第一种是配置文件引用注解,第二种是配置类引用注解

 ioc常用的注解 标志bean的注解

 上面4个注解的作用都是标志类的 bean id,其中第4个注解标志的是Dao、service、controller层的类,一般用在不确定类所处的层级使用,而其他3分别对象mvc的3层。这样就能够使得我们在维护和操作时能够更加的简单。

标志Dao层

 标志service层

如果把注解都更换成Component,代码执行的功能相同,但是在维护的时候更费力,所以一般都是使用对应的注解进行标识。

注入属性的注解

 @Autowired(不用填入参数) 和 @Qualifier (填入的参数为 bean 的 id)

 这两个注解一般同时使用。代表着通过属性的类型和属性的名称在spring容器中自动导

@Resource注解(这个注解的参数可以传入一个数组,里面的值为 bean 的 id)

该注解可以取代 @Autowired 和 @Qualifier 的共同使用,用于简化代码

@Value注解(使用在基本数据类型之上,参数为传入的值)

 不过这个注解一般不这样使用,一般我们通过这个注解读取配置信息,然后再通过SpEL去注入,所以它一般跟@PropertySource 注解一起使用

@PropertySource 注解(参数为配置信息的 path )

 我们如果使用读取配置信息的注解使用Value注解时,我们呢一般通过spring的El表达式去传入值给value

配置类的注解

@Configuration 注解 (没有参数)

这个注解的作用是标识我们的类为配置类,每一个配置类都需要有这个标识

 @ComponentScan 注解 (参数为注解扫描的包的路径)

这个注解跟 Configuration 注解一样,再配置类都需要标识

 @Import 注解 (参数可以存放数组,数组元素的类型是一个 Class 对象)

 这个注解用来引入另外的注解,我们再 spring 的配置类中,只有一个总的配置类,其他的模块配置类需要导入再总配置类中。

 其他注解

 @Bean 注解 (参数为设置bean 对象的 id 值)

在单例的模式中或者需要返回一个对象的方法中,我们使用这个方法可以将我们需要返回的对象直接的储存在 spring 容器中,并且给这个对象一个唯一标识 id 

剩下的注解就不再说明了 

配置文件引入注解依赖

使用配置文件引入注解时,需要在默认创建的配置文件上添加语句

xmlns:context="http://www.springframework.org/schema/context"

http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd

添加之前

添加之后

 在添加完成之后需要设置包扫描的位置

使用 context:component-scan 标签添加

 在这之后我们的spring就会识别到我们的注解,使用这个方法我们实例化的 ApplicationContext 是他的一个实现类ClassPathXmlApplicationContext ,在它的构造器中需要传入我们的xml文件的path

配置类引入注解依赖

配置类引入注解依赖其实在上面的配置类注解上已经说完了,只是在实例化的时候需要注意他实例化的是 AnnotationConfigApplicationContext ,它的构造器传入的参数是配置类的一个 Class 对象

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/820351.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号