Spring框架@Autowired注解详解
需积分: 16 190 浏览量
更新于2024-09-09
收藏 19KB DOCX 举报
"Spring注解的收集与自动注入"
在Spring框架中,注解是简化配置和增强代码可读性的重要工具。本资源主要介绍了Spring中的@Autowired注解以及@Service注解,以及如何通过XML配置启用注解驱动的组件扫描。
@Autowired注解是Spring 2.5引入的一个关键特性,它允许开发者实现依赖注入(Dependency Injection, DI)而不必在XML配置文件中显式声明bean。这个注解可以应用于字段、方法或方法参数上,Spring容器会自动寻找合适的依赖并注入。例如,在提供的代码示例中,Man接口有两个实现类Chinese和American,它们都实现了sayHello()方法。
@Service注解是Spring中的一个组件注解,它属于Spring的 stereotype 注解类别,包括@Component、@Repository和@Controller。@Service通常用于业务层组件,表示一个bean。当使用@Service时,Spring会自动根据类名创建一个bean,bean的名称是类名的小写形式。如Chinese类会被实例化为"chinese",American类为"american"。如果需要自定义bean名称,可以通过@Service("你自己改的bean名")来实现。
在XML配置文件中,为了使Spring能够识别和处理这些注解,我们需要添加两行配置:
1. `<context:annotation-config/>`:这行配置启用了Spring对注解的处理,使得Spring容器能够识别并处理类上的注解,如@Autowired和@Service等。
2. `<context:component-scan base-package="testspring.main"/>`:这行配置告诉Spring在指定的包(及其子包)下查找带有@Component、@Service、@Repository和@Controller注解的类,并将它们注册为bean。
通过这样的配置,Spring容器会在启动时扫描指定包下的所有类,找到带有@Service注解的类,并根据注解自动实例化bean。同时,由于@Autowired注解的存在,Spring会自动将合适的依赖注入到需要的地方,比如如果一个类中有一个Man类型的字段,Spring会自动将Chinese或American注入,具体取决于哪种bean是默认首选或有其他策略(如类型匹配、@Qualifier注解等)。
总结来说,Spring的@Autowired和@Service注解结合XML配置中的组件扫描,极大地简化了bean的声明和依赖注入的过程,提高了开发效率。理解并熟练运用这些注解是Spring开发中不可或缺的一部分。
2017-02-25 上传
2023-09-09 上传
2010-12-23 上传
2020-10-19 上传
2019-08-09 上传
2012-01-10 上传
2020-08-29 上传
2022-06-09 上传
点击了解资源详情
垃圾,不用了
- 粉丝: 1
- 资源: 3
最新资源
- Android圆角进度条控件的设计与应用
- mui框架实现带侧边栏的响应式布局
- Android仿知乎横线直线进度条实现教程
- SSM选课系统实现:Spring+SpringMVC+MyBatis源码剖析
- 使用JavaScript开发的流星待办事项应用
- Google Code Jam 2015竞赛回顾与Java编程实践
- Angular 2与NW.js集成:通过Webpack和Gulp构建环境详解
- OneDayTripPlanner:数字化城市旅游活动规划助手
- TinySTM 轻量级原子操作库的详细介绍与安装指南
- 模拟PHP序列化:JavaScript实现序列化与反序列化技术
- ***进销存系统全面功能介绍与开发指南
- 掌握Clojure命名空间的正确重新加载技巧
- 免费获取VMD模态分解Matlab源代码与案例数据
- BuglyEasyToUnity最新更新优化:简化Unity开发者接入流程
- Android学生俱乐部项目任务2解析与实践
- 掌握Elixir语言构建高效分布式网络爬虫