本次本家儿要介绍Spring注解 。
注解分为两类:
1、一类是利用Bean,便是把已经在xml文件中设置装备摆设好的Bean拿来用,完当作属性、方式的组装;好比@Autowired , @Resource,可以经由过程byTYPE(@Autowired)、byNAME(@Resource)的体例获取Bean;
2、一类是注册Bean,@Component , @Repository , @ Controller ,@Service , @Configration这些注解都是把您要实例化的对象转化当作一个Bean,放在IoC容器中,等您要用的时辰,它会和上面的@Autowired , @Resource共同到一路,把对象、属性、方式完美组装 。
需要这些哦
电脑
第一步:注解利用Bean1@Autowired或者( @Autowired(required=false))
Spring 2.5 引入了 @Autowired 注释,它可以对类当作员变量、方式及机关函数进行标注,完当作主动装配的工作 。 经由过程 @Autowired的利用来消弭 set ,get方式 。
若是我们想利用名称装配可以连系@Qualifier注解进行利用,如下:
@Autowired() @Qualifier("baseDao")
private BaseDao baseDao;
1、required属性
? required属性值可觉得true( 默认值)和false 。 若是为true的话,没有匹配的类则抛出异常;若是为false,则暗示不是强制必需可以或许找到响应的类,无论是否注入当作功,都不会抛错 。
2、工作道理
?注解解析器:AutowiredAnnotationBeanPostProcessor
2.1、Spring容器启动时,AutowiredAnnotationBeanPostProcessor被注册到容器;
2.2、扫描代码,若是带有@Autowired注解,则将依靠注入信息封装到InjectionMetadata中(见扫描过程);
2.3、建立bean时(实例化对象和初始化),会挪用各类BeanPostProcessor对bean初始化,AutowiredAnnotationBeanPostProcessor负责将相关的依靠注入进来;
3、@Autowired扫描过程
扫描当前类中标注@Autowired的属性和方式;
再查找父类中注@Autowired的属性和方式,依次遍历;
详解在分歧场景利用的体例:https://blog.csdn.net/horacehe16/article/details/79811763
2@Resource(这个注解属于J2EE的)
1、默认安照名称进行装配,名称可以经由过程name属性进行指定,若是没有指定name属性,当注解写在字段上时,默认取字段名进行按照名称查找,若是注解写在setter方式上默认取属性名进行装配 。 当找不到与名称匹配的bean时才按照类型进行装配 。 可是需要注重的是,若是name属性一旦指定,就只会按照名称进行装配 。
Java代码
@Resource(name="baseDao")
private BaseDao baseDao;
2、 保举利用:@Resource注解在字段上,且这个注解是属于J2EE的,削减了与spring的耦合 。 最主要的这样代码看起就比力优雅 。
3. 只指定@Resource注解的type属性,则从上下文中找到类型匹配的独一bean进行装配,找不到或者找到多个,城市抛出异常
【spring常用注解】4. 既指定了@Resource的name属性又指定了type,则从Spring上下文中找到独一匹配的bean进行装配,找不到则抛出异常
文章插图
文章插图
以上内容就是spring常用注解的内容啦,希望对你有所帮助哦!
推荐阅读
- 图解利用IntelliJ IDEA开发的常用快捷键
- 一 图解IntelliJ IDEA插件安装及常用插件
- 如何添加常用功能到支付宝首页
- cad快捷键 cad绘图常用键
- SpringCloud配置实战:演示和测试切换
- springboot使用PageHelper分页插件和验证码功能
- 百度经验提现,与大家分享
- 4种常用捕捉工具
- Word中如何设置居中对齐
- 电脑常用快捷键大全:任务切换篇