查看“@Autowired”的源代码
←
@Autowired
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
[[category:Spring]] == 关于 == <span style="color: blue; font-size: 150%">'''@Autowired'''</span> 是属于 Spring 的容器配置的一个注解,与它同属容器配置的注解还有:@Required、@Primary、@Qualifier 等等。 @Autowired:字面意义即“'''自动装配'''”。在 Spring 的世界当中,自动装配指的就是“'''将 Spring 容器中的 bean 自动的和我们需要这个 bean 的类组装在一起'''”。 === 与 @Resource 区别 === 简单来说:<span style="color: blue; font-size: 120%">'''@Resource'''</span> 相当于“@Autowired”和“@Qualifier” 一起使用。 比较: ::{| class="wikitable" ! !! @Autowired !! @Resource |- | '''相同''' | colspan="2" style="text-align:center;" | 都是通过注解实现依赖注入。 |- | rowspan="3" | '''不同''' | 由 '''Spring''' 定义 | 由 '''JSR-250'''(Java 注解规范)定义 |- | 默认方式:'''ByType''',可以配合“@Qualifier”使用 ByName 方式 | 默认方式:'''ByName''',如果找不到则使用 ByType 方式 |- | 可以对:'''构造器'''、'''方法'''、'''参数'''、'''字段'''使用 | 只能对:'''方法'''、'''字段'''使用 |} === 相关注解 === # <span style="color: blue">'''@Required'''</span>:与 @Autowired 配合使用,用于指定是否必须有 Bean 候选者。 #* 与“@Autowired(required=true)”作用一样; # <span style="color: blue">'''@Qualifier'''</span>:与 @Autowired 配合使用,用于指定 Bean Name 来强制使用名称装配。 #* 可以用于解决“<span style="color: green">'''依赖对象冲突'''</span>”(即,具有多个符合条件的依赖对象); # <span style="color: blue">'''@Primary'''</span>:与 '''@Component''' 配合使用,用于指定该类型(ByType)下的“默认注入对象”。 #* 可以用于解决“<span style="color: green">'''依赖对象冲突'''</span>”(即,具有多个符合条件的依赖对象); # <span style="color: blue">'''@Lazy'''</span>:与 @Autowired、'''@Component''' 配合使用,用于“推迟‘带注解的 bean’和‘带注释的 @Autowired 位置’的初始化”。 #* 可以用于解决“<span style="color: green">'''循环依赖'''</span>”(即,A 依赖 B 的同时 B 依赖 A); == 常见方式 == @Autowired 相对于 xml 方式的注入,特点仅仅是“自动装配”而无需通过 xml 配置类间关系,它与 xml 方式同样有'''不同的注入方式'''。 === Field 注入 === === 构造器注入 === === Setter注入 === == 其他方式 == == 附:其他注入 == DI(Dependency Injection):依赖注入,使用 IOC 创建类的过程中,将类所依赖的属性设置进去。 注入的内容是“类所依赖的属性”:“属性”并一定是“类”,也可以是“'''基本类型'''”。
返回至“
@Autowired
”。
导航菜单
个人工具
登录
命名空间
页面
讨论
大陆简体
已展开
已折叠
查看
阅读
查看源代码
查看历史
更多
已展开
已折叠
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
笔记
服务器
数据库
后端
前端
工具
《To do list》
日常
阅读
电影
摄影
其他
Software
Windows
WIKIOE
所有分类
所有页面
侧边栏
站点日志
工具
链入页面
相关更改
特殊页面
页面信息