Spring学习3--基于注解的组件扫描
2015-10-29 20:03
495 查看
什么是组件扫描?
指定一个包路径,spring会自动扫描该包及其子包的所有组件类,当发现组件类定义前有特定的注解标记时,就将该组件纳入到Spring容器中。(等价于bean定义功能),组件扫描可以代替大量xml配置bean的定义。
@Name—通用注解
@Repository—持久化层组件注解
@Service—业务层组件注解
@Controller—控制层组件注解
也可以在口号中自定义
第一个组件id的名字为userDao
第二个组件id的名字为loginService
@Autowired/@Qualifier
@Inject/@Named
以上几种方式都可以指定依赖注入关系
1.在xml配置中指定要注入的properties文件
2.在setter方法前使用@Value注解
指定一个包路径,spring会自动扫描该包及其子包的所有组件类,当发现组件类定义前有特定的注解标记时,就将该组件纳入到Spring容器中。(等价于bean定义功能),组件扫描可以代替大量xml配置bean的定义。
1.指定扫描路径
<context:component-scan base-package="要扫描的路径(com.test)" />
2.自动扫描的注解标记
@Component—通用注解@Name—通用注解
@Repository—持久化层组件注解
@Service—业务层组件注解
@Controller—控制层组件注解
3.自动扫描组件的命名
默认情况下为小写开头的类名也可以在口号中自定义
@Repository public class UserDao(){....} @Service("loginService") public class UserService(){...}
第一个组件id的名字为userDao
第二个组件id的名字为loginService
4.指定组件的作用域
@Scope("prototype") @Repository public class UserDao(){...}
5.指定依赖注入关系
@Resource@Autowired/@Qualifier
@Inject/@Named
以上几种方式都可以指定依赖注入关系
6.注入Spring表达式
@Value注解可以注入Spring表达式1.在xml配置中指定要注入的properties文件
<util:properties id="jdbcProps" location="classpaath:db.properties"/>
2.在setter方法前使用@Value注解
public class JDBCDataSource{ @Value("#{jdbcProps.url}") private String url; @Value("#{jdbcProps.driver}") public void setUrl(String driver){... } }
相关文章推荐
- java 装饰者模式 详解
- Spring 入门知识点笔记整理
- java定时器的几种用法
- JAVA练习之消费用户折扣卡模拟
- java中的 equals + hashCode
- Java随记-Collection和Itearator的使用
- java导出doc和docx
- Java NIO系列教程(六) Selector
- java继承中的 equals + hashCode+toString
- JAVA类的继承学习笔记
- java获取泛型的真实类型
- Java判断数字是否为整数
- JAVA类与对象学习笔记
- eclipse设置黑色主题
- Eclipse快捷键
- java.security.cert.CertificateException: No subject alternative names present
- java.lang.UnsupportedClassVersionError: t : Unsupported major.minor version
- Java读取csv文件
- Servlet
- (java)leetcode Move Zeros