spring 基于注解配置

注解Bean,通用类型为@Component
I.@Repository:用于对DAO实现类进行注解
I.@Service:用于对Service实现类进行注解
II.@Controller:用于对Controller实现类进行注解

@Autowired为类型匹配
若容器启动没有一个和标注变量类型匹配的Bean,Spring容器启动时将抛出NoSuchBeanDefinitionException的异常,@Autowired(required=false)可避免异常的抛出
@Qualifier指定注入的bean名称
@Autowired
@Qualifier(“userDao”)
对类方法进行注解:spring 允许对方法内入参标注@Qualifier以指定注入Bean的名称
@Autowired
Public void init(@Qualifier(“userDao”)UserDao userDao,LogDao logDao){}
对集合类进行注解
@Component

Public class MyComponent{
@Autowired(required=false)
Private List<Plugin>plugins;
}
Plugin为一个接口,它有两个实现类,分别是OnePlugin和TwoPlugin,通过@Component标注为Bean,Spring会将这两个Bean 都注入到plugins中
对标准注解的支持:
@Resource(“car”)
Private void setCar(Car car){
System.out.println(“execute in setCar”);
This.car = car;
}
如果未指定”car”属性,则也可以根据属性方法得到需要注入的Bean名称。@Autowired默认按类型匹配注入的Bean,@Resource则按名称匹配注入的Bean。@Inject和@Autowired一样也是按类型匹配注入的Bean的,只不过没有required属性,@Resource和@Inject都没有@Autowired丰富,除非必要,可不必在乎这两个注解
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值