使用注解代替配置文件
1,在applicationContext.xml下配置
<context:component-scan base-package="com.cl.bean"></context:component-scan>
意思就是自动扫描此基础包下各个类的注解,然后自动注册为beans
2,实体类中
在类上面使用@Component("user")注解表示这个bean的名字就是user,也可使用更具体的注解:@Service/@Controller/@Repository分别表示三个层(作用差不多,这样标注是给开发人员看的)
类上面还可以使用@Scope(scopeName = "prototype")注解,表示这个bean是原型,否则默认为单例。
可以直接在字段上面注入值,如
@Value("tom")
private String name;
这种方式采用反射,会破坏封装性,但是写代码和阅读都很方便。将@Value("tom")标注在set方法上面则不会破坏封装性
如果是引用字段
注入方式有:
a,@Autowired自动装配,类中只能有此引用类型字段一个
b,@Qualifier("car1")具名化,但是car1这个bean必须在xml文件中配置
c,手动注入@Resource(name="car1")也需要配置car1这个bean。推荐