Spring03
自动装配的注解
单元测试的代码在打包编译时不包括其中的代码
单元测试代码的测试函数不允许有参数
@Autowired实现自动装配。在配置文件中要指明组件扫描。(组件扫描+注解)
public class UserServerlete {
@Autowired
UserDao userDao;
//private UserDao userDao;//不需要公开的访问权限
public void reg() {
System.out.println("Serverlete_reg()");
userDao.reg();
}
}
- 自动装配不使用SET方法实现属性注入
- Spring通过反射机制直接为属性赋值;–>不需要给出公开的访问权限
- 优先byType,优先判断与类型匹配的对象的个数,如果只有一个与类型匹配的对象,则直接装配;如果有多个,尝试byName来装配,如果失败,则抛出异常。
@Resource实现自动装配
- 来自于javaee环境,需要先配置Tomcat环境
- 默认通过byName的方式进行属性注入,如果都不符合按bytype,再不符合则报错
- 可以在属性注入时给该属性起名字