您的位置:首页 > 编程语言 > Java开发

java实训笔记_Spring的注解注入

2020-07-19 12:10 10 查看

1 前言

上一篇写了spring的事务
这一篇写一下spring的注解注入

2 本篇内容

本篇介绍了spring的注解注入中的引入、注解介绍

3 注解的引入

首先需要引入注解注入,定义扫描的包

3.1引入注解注入

Spring的配置文件写为

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd">

</beans>

3.2 定义扫描的包

<beans></beans>
标签内定义
<context:component-scan base-package=""></context:component-scan>

其中base-package就是要扫描的包的路径,也会扫描到它的子包。
扫描多个包时,用逗号隔开,也可单独写成不同的标签。

4 注解介绍

和参考链接3中那样按功能将注解分类

4.1 用于对象创建的注解

用于对象创建的注解有四个 @Component,@Controller,@Service,@Repository
作用相同,在Spring容器中注册,类似于

<bean></bean>
标签,用value值指定bean的id,不指定value时默认为当前类名首字母小写。
用的地方不同,
@Service: service层
@Controller: web层
@Repository: dao层
@Component:任意

4.2 用于注入数据的注解

注入数据其实就是类中属性的值的注入,按属性类型来分

4.2.1 基本数据类型和String型的注入

基本数据类型和String型使用@Value注入
value用于指定数据的值,可以使用spring中的SpEL,SpEL没学过,不展开。

4.2.2 引用类型的注入

引用类型注入可以使用@Autowired或者@Resource注入,@Qualifier注解用于当一个接口中有多个实现的时候,指明具体实现类。
@Autowired注解可以用于属性、构造方法、setter方法,spring会去容器中找对于的类型,注入到该属性中,使用@Autowired注解可以不提供getter、setter方法,如果有多个实现可以配合@Qualifier指定具体的实现。
@Resource注解作用相当于@Autowired注解,只不过@Autowired按byType自动注入,@Resource默认按byName注入。
如果想要更进一步了解可以查看参考链接4

4.2.3 集合类型的注入

集合类型只能通过xml来实现

4.3 用于改变作用范围的注解

@Scope注解,与

<bean scope=""></bean>
类似,用于指定bean的作用范围,用在类上
value值有singleton、prototype、request、session

4.4 与生命周期相关的注解

@PreDestory指定销毁方法,@PostConstruct指定初始化方法,用在方法上

5 结语

1.在chrome中可以使用ctrl多选,然后左键拖拽到其他地方将选中的窗口建立成新的窗口。
2.现在关于什么什么层的概念还比较模糊,以后项目实战了应该会有更清晰的理解。
3.因为是上课的时候老师一笔带过,自己课后找的资料,所以本文会更偏理论一些。

6 参考链接

1.spring-包扫描时-包名写多个
2.spring 配置扫描多个包
3.spring 使用注解注入
4.Spring-注解依赖注入
5.Spring之基于注解的注入
6.@Repository的作用?
7.关于spring中的@Service注解
8.@Service注解的使用
9.Spring的注解@Qualifier用法
10.@Scope注解的作用详解

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: