Spring IoC(三)bean属性、方法注释
1、环境配置
使用注解开发jdk1.5、Spring2.5支持,在xml中添加context相关的是四个配置;
<beans default-lazy-init="true" 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
https://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
https://www.springframework.org/schema/context/spring-context.xsd"> <context:annotation-config /> </beans>
2、注释类别
2.1 @Autowired (required =true) //【常用】默认为true,表示注释了就必须装配上,属于Spring的注解。默认是使用byType的形式查找,找不到或同类型有多个bean就会报错
应用于构造函数:
如果只有一个构造方法可以不写;多个构造方法注释后表示容器以哪些构造方法为默认注入。
应用于属性:
会自动寻找对应类型的bean;set方法可以忽略。如果没找到会报错。可以添加required =false
应用于方法上:
同理,如果没找到会报错;
2.2 @Qualifier(value = "beanID") 一般是和@Autowired一起搭配使用,属于Spring的注解
2.3 @Resource 属于Javax的注解,效果相当于@Autowired和@Qualifier一起用,可以指定绑定beanID(name = beanID),仅支持具有单个参数的字段和bean属性设置器方法,效率相对@Autowired差一些。
2.4 @Autowired和@Resource的区别
@Autowired通过byType的方式实现
@Resource 默认通过byName的方式实现,如果找不到则通过ByType实现。
2.5 @Primary 属于Spring的注解,用于有多个共同类型的bean存在时,如果有一个bean申明了primary="true",那么就会使用那个bean,而不是报错。只能用于方法上。
2.6 @NonNull可以标注在方法、字段、参数之上,表示对应的值不可以为空;(辅助功能)
2.7 @Nullable注解可以标注在方法、字段、参数之上,表示对应的值可以为空;(辅助功能)
以上两个注解在程序运行的过程中不会起任何作用,只会在IDE、编译器、FindBugs检查、生成文档的时候有做提示;只有安装了FindBugs插件并运行后会做对应的提示;
Spring IoC(三)bean属性、方法注释的更多相关文章
- Spring IOC的Bean对象
---恢复内容开始--- 在Spring IOC模块中Bean是非常重要的.在这里我想给大家讲讲关于Bean对象实例化的三种注入方式: 首先,我先讲一下关于Bean对象属性值的两种注入方式:set注入 ...
- 使用Spring IoC进行Bean装配
Spring概述 Spring的设计严格遵从的OCP(开闭原则),保证对修改的关闭,也就是外部无法改变spring内部的运行流程:提供灵活的扩展接口,也就是可以通过extends,implements ...
- spring ioc三种注入方式
spring ioc三种注入方式 IOC ,全称 (Inverse Of Control) ,中文意思为:控制反转 什么是控制反转? 控制反转是一种将组件依赖关系的创建和管理置于程序外部的技术. 由容 ...
- Spring配置文件解析--bean属性
1.bean设置别名,多个别名用逗号隔开 <!--使用alias--> <bean id="app:dataSource" class="...&quo ...
- Spring IOC 之Bean作用域
当你创建一个bean定义的时候,你创建了一份通过那种bean定义的bean的创建类的真正实力的处方.bean的定义是一个处方 的想法是很重要的的.因为这意味着,对于一个类你可以创建很多对象实例从一个单 ...
- Spring IOC之Bean 概述
1.Bean概述 一个Spring IOC容器管理一个或者多个bean.这些bean是根据你提供给容器的配置数据信息创建的,例如XML形式的的定义. 在容器内部,这些bean的定义表示为BeanDef ...
- spring IOC装配Bean(注解方式)
1 Spring的注解装配Bean (1) Spring2.5 引入使用注解去定义Bean @Component 描述Spring框架中Bean (2) Spring的框架中提供了与@Componen ...
- 面试官:spring中定义bean的方法有哪些?我一口气说出了12种,把面试官整懵了。
前言 在庞大的java体系中,spring有着举足轻重的地位,它给每位开发者带来了极大的便利和惊喜.我们都知道spring是创建和管理bean的工厂,它提供了多种定义bean的方式,能够满足我们日常工 ...
- 【Spring Framework】12种spring中定义bean的方法
前言 在庞大的java体系中,spring有着举足轻重的地位,它给每位开发者带来了极大的便利和惊喜.我们都知道spring是创建和管理bean的工厂,它提供了多种定义bean的方式,能够满足我们日常工 ...
- Spring系列(三) Bean装配的高级技术
profile 不同于maven的profile, spring的profile不需要重新打包, 同一个版本的包文件可以部署在不同环境的服务器上, 只需要激活对应的profile就可以切换到对应的环境 ...
随机推荐
- 杭电oj 2072————统计单词数(java)
problem:统计单词数 思路:利用HashMap的特性——不能反复存储同一个键得数据,所以可以保证map里边儿的元素都是不重复的,存储完毕之后直接输出size就好了 注意事项: 1.利用strin ...
- [USACO19OPEN]I Would Walk 500 Miles 贪心
题目 洛谷P5425(点击可跳转) 题目描述 Farmer John想要将他的编号为 \(1 \ldots N\)的 N N 头奶牛( \(N \leq 7500\) )分为非空的 \(K\) 组( ...
- 记录 shell学习过程(5)continue break
1.continue ;i<;i++)) do ];then continue fi echo $i done # ./continue.sh12346789 2.break ;i<;i+ ...
- HIT大作业——hello的一生
hello的一生 关键词:计算机系统:功能:流程:P2P;O2O;hello 目 录 第1章 概述- 4 - 1.1 Hello简介 - ...
- 图的dfs遍历模板(邻接表和邻接矩阵存储)
我们做算法题的目的是解决问题,完成任务,而不是创造算法,解题的过程是利用算法的过程而不是创造算法的过程,我们不能不能陷入这样的认识误区.而想要快速高效的利用算法解决算法题,积累算法模板就很重要,利用模 ...
- resize2fs: 报错
报错如下 [root@localhost ~]# resize2fs /dev/mapper/centos-root resize2fs (-Dec-) resize2fs: Bad magic nu ...
- CentOS7网络配置:静态IP和DHCP
1.打开并编辑网络配置文件:/etc/sysconfig/network-scripts/ifcfg-ens33 [root@localhost network-scripts]# vim ifcfg ...
- 查看和设置mysql字符集
http://218.194.248.2/~wuxiaogang/cpcourse/database/mysql/charset.htm 1. 修改mysql的my.cnf# vi /etc/my.c ...
- 每天进步一点点------Allegro 动态显示走线长度
手工布线时还可以动态显示当前走线的长度,设置方法为执行菜单命令Setup->User preferences,打开User preferences Editor对话框.在Etch对应的环境变量中 ...
- jenkins新建任务详解
一.新建任务 点击左侧新建任务 输入任务名称-->选择构建一个自由风格的软件项目-->确认 进入任务配置页面 二.基本配置 General 配置构建保留天数,保留个数,必要时并发构建 源码 ...