- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
注解配置文件
使用 context:annotation-config/ 简化配置
使用 context:annotation-config/ 简化配置
Spring 2.1 添加了一个新的 context 的 Schema 命名空间,该命名空间对注释驱动、属性文件引入、加载期织入等功能提供了便捷的配置。我们知道注释本身是不会做任何事情的,它仅提供元数据信息。要使元数据信息真正起作用,必须让负责处理这些元数据的处理器工作起来。
而我们前面所介绍的 AutowiredAnnotationBeanPostProcessor 和 CommonAnnotationBeanPostProcessor 就是处理这些注释元数据的处理器。但是直接在 Spring 配置文件中定义这些 Bean 显得比较笨拙。Spring 为我们提供了一种方便的注册这些 BeanPostProcessor 的方式,这就是 context:annotation-config/。请看下面的配置:
清单 19. 调整 beans.xml 配置文件
?xml version=1.0 encoding=UTF-8 ?
beans xmlns=/schema/beans
xmlns:xsi=/2001/XMLSchema-instance
xmlns:context=/schema/context
xsi:schemaLocation=/schema/beans
/schema/beans/spring-beans-2.5.xsd
/schema/context
/schema/context/spring-context-2.5.xsd
context:annotation-config/
bean id=boss class=com.baobaotao.Boss/
bean id=office class=com.baobaotao.Office
property name=officeNo value=001/
/bean
bean id=car class=com.baobaotao.Car scope=singleton
property name=brand value= 红旗 CA72/
property name=price value=2000/
/bean
/beans
context:annotationconfig/ 将隐式地向 Spring 容器注册 AutowiredAnnotationBeanPostProcessor、CommonAnnotationBeanPostProcessor、PersistenceAnnotationBeanPostProcessor 以及 equiredAnnotationBeanPostProcessor 这 4 个 BeanPostProcessor。
在配置文件中使用 context 命名空间之前,必须在 beans 元素中声明 context 命名空间。
HYPERLINK /developerworks/cn/java/j-lo-spring25-ioc/ \l main 回页首
使用 @Component
虽然我们可以通过 @Autowired 或 @Resource 在 Bean 类中使用自动注入功能,但是 Bean 还是在 XML 文件中通过 bean 进行定义 —— 也就是说,在 XML 配置文件中定义 Bean,通过 @Autowired 或 @Resource 为 Bean 的成员变量、方法入参或构造函数入参提供自动注入的功能。能否也通过注释定义 Bean,从 XML 配置文件中完全移除 Bean 定义的配置呢?答案是肯定的,我们通过 Spring 2.5 提供的 @Component 注释就可以达到这个目标了。
下面,我们完全使用注释定义 Bean 并完成 Bean 之间装配:
清单 20. 使用 @Component 注释的 Car.java
package com.baobaotao;
import org.springframework.stereotype.Component;
@Component
public class Car {
…
}
仅需要在类定义处,使用 @Component 注释就可以将一个类定义了 Spring 容器中的 Bean。下面的代码将 Office 定义为一个 Bean:
清单 21. 使用 @Component 注释的 Office.java
package com.baobaotao;
import or
您可能关注的文档
- 中国书画教育协会简介.doc
- 烛之武退秦师.ppt
- 烷烃、同系物教案.doc
- 焦点关注:政府工作报告与当前教育热点20090306-22.ppt
- 灯具调研报告.doc
- 烛之武退秦师翻译及知识点总结.doc
- 照片与图像处理的高级技巧.ppt
- 招标文件范例表格.doc
- 煤矿各部门职能的规定.doc
- 爱情诗词或名言名句-OK.ppt
- DB44_T 2611-2025 城市排水管网有毒有害气体监测与风险分级管理技术标准.pdf
- DB44_T 2612-2025 竞赛类科普活动策划与实施服务规范.pdf
- DB43_T 2947-2024 烟草种子质量控制规程.pdf
- DB37_T 4836-2025 煤矿风量实时监测技术要求.pdf
- 叉车防撞系统,全球前22强生产商排名及市场份额(by QYResearch).docx
- 超滤膜,全球前18强生产商排名及市场份额(by QYResearch).docx
- DB62T 4172-2020 玉米品种 酒623规范.pdf
- DB62T 4160-2020 在用真空绝热深冷压力容器综合性能在线检测方法.pdf
- DB62T 4164-2020 辣椒品种 酒椒1号.pdf
- DB62T 4133-2020 公路隧道地质超前预报机械能无损探测技术规程.pdf
最近下载
- 2024年上半年教师资格证考试《初中语文》真题.docx
- 耳鼻喉科考试题及答案.docx VIP
- 超星尔雅学习通《组织行为学》章节测试答案满分版.doc
- 高中数学椭圆、双曲线抛物线综合练习题及答案-.pdf VIP
- 2024 巡察整改专题民主生活会个人对照检查材料.docx VIP
- 2024年上半年教师资格证考试《初中语文》真题.pdf
- 基于Modbus总线的马铃薯贮藏库温湿度采集.doc VIP
- 2025年全国保密教育线上培训考试试题库及完整答案【全优】.docx VIP
- 2024年上半年教师资格证考试《教育知识与能力》(中学)真题.pdf
- 晓磊(CHXL)Lei3000变频器说明书用户手册.pdf
文档评论(0)