@Autowired默认按照类型进行注入

本文深入解读Spring框架中的自动装配与手动装配机制,详细介绍了`@Autowired`注解的不同使用方式,包括按类型、名称、构造器及自检装配,并通过示例代码展示了实际应用。同时,文章探讨了`@Component`注解的作用及其在分层开发中的应用,以及如何通过`@Resource`注解实现依赖注入。
@Autowired默认按照类型进行注入
@Autowired @Qualifier("personDaoxxx")这样就是按照名称进行装配
@Autowired(required=true)必须注入值,不能为null,为false无论注入什么值都是null

以上都是手工装配
自动装配依赖对象
对于自动装配,大家了解一下就可以了,实在不推荐大家使用。例子:
<bean id=”…” class=”….”>
autowire属性取值如下:
byType:按类型装配,可以根据属性的类型,在容器中寻找根该类型匹配的bean.如果发现多个,那么将会抛出异常。如果没有找到,即属性值为null。
byName:按名称装配,可以根据属性的名称,在容器中寻找根该属性名相同的bean,如果没有找到,即属性值为null。
Constructor与byType的方式类似,不同之处在于它应用于构造器参数。如果在容器中没有找到与构造器参数类型一致的bean,那么将会抛出异常。
Autodetect:通过bean类的自省机制来决定是使用constructor还是byType方式进行自动装配。如果发现默认的构造器,那么将使用byType方式。

0


http://zhidao.baidu.com/link?url=4T5FVlKL1HqHHpGSCwCXI3h3QaZZ0HRe_9gnFuZE74pRMJ2L0LF64ZzoNVTAdq7y2EY_at8_5QVYsnhltr_o7K

@Component("userManager")
public class UserManagerImpl implements UserManager {
private UserDao userDao ;
public UserDao getUserDao() {
return userDao;
}
@Resource
public void setUserDao(UserDao userDao) {
this.userDao = userDao;
}
/* (non-Javadoc)
* @see com.wjs.registration.service.UserManager#exists(com.wjs.registration.model.Users)
*/
public boolean exists(Users u){
return userDao.checkUserExistsWithName(u.getUsername());
}
/* (non-Javadoc)
* @see com.wjs.registration.service.UserManager#add(com.wjs.registration.model.Users)
*/
public void add(Users u){
userDao.save(u);
}
}
这里表示什么意思哦@Component("userManager")

在持久层、业务层和控制层分别采用 @Repository、@Service 和 @Controller 对分层中的类进行注释,而用 @Component 对那些比较中立的类进行注释

这里就是说把这个类交给Spring管理,重新起个名字叫userManager,由于不好说这个类属于哪个层面,就用@Component

参考地址:http://www.ulewo.com/user/10001/blog/273
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值