Spring IOC (3)
标签: JAVA框架
利用注解配置应用IOC
在JDK5.0时追加一些新特性
List<String> 泛型
for(String s : list)
Integer i = 10;
注解:在类定义,方法定义,成员变量定义面使用,格式@注解标记名
a.组件自动扫描
可以按照指定的包路径,将包下所有组件扫描,如果发现组件类定义前有以下标记,会将组件扫描到Spring容器
@Commponent//其他组件
@Controller//控制层组件
@Service//业务层组件
@Repository//数据访问层组件
@Named(需要引入第三方标准包)
@Scope("singleton")等价于<bean scope="">
@PostConstruct等价于<bean init-method="">
@PreDestroy等价于<bean destroy-method="">
b.注入
@Resource:可以定义在变量前,也可以放在SetXX方法前.如果放在变量前可以省略Set,利用底层反射操作注入
@Autowired:可以定义在变量前,也可以放在SetXX方法前.
一般使用时,功能等价,都可以实现注入.
如果不存在多个匹配类型,使用@Resource或者@Autowired都可以
如果存在多个匹配类型,建议指定按名称注入
@Resource(name="指定名称")
与Qualifier同时使用
@Autowired
@Qualifier("指定名称")
如果指定名称注入则不会再按照类型注入