最近在课余了解了一下在Spring开发中使用注解的一些知识,在当前的项目中也开始着手使用全注解的方式开发,自己也是切切实实感受到了使用注解的好处。首先省掉了一大部分麻烦复杂的xml配置文件,而且在团队开发中这样效率更高,在程序中一看注解就明白,不用来来回回地对照着配置文件看了。下面对在Spring中使用注解完成对Bean的定义和装配简单总结一下,并在此留下问题供日后更深入的学习后回来解决。
Spring在2.5版本开始全面支持注解,并在3.0后对其有着一些补充。
首先对于Bean的定义可以使用@Component(name="cnblog") 注解,其作用相当于在配置文件中配置一个Bean:<bean id="cnblog" class=""/>;
此外Spring还提供了几个与@Component 作用相似的注解,可以说是其衍生版:@Repository 用于对Dao实现类进行注解; @Service 用于对Service实现类进行注解; @Controller 用于对Controller实现类进行注解。
对于Bean的自动装配,Spring为其提供了@Value @AutoWired @Qualifier @Resource 等注解:
@Value() 对于简单属性提供注解,写在属性上面,很简单方便,不需要提供setter方法;
@AutoWired() 对于复杂对象提供注解,按照类型注入,与名称无关(我使用最多的也是这个);
@AutoWired() @Qualifier() 这个是按照名称注入,要制定注入Bean的名称,且要与前面注册的一致;
@Resource() 作用相当于上面一个
对于Bean的初始化:@PostConstruct
对于Bean的销毁:@PreDestroy
对于Bean的作用范围:@Scope 内容有singleton(单例:默认的)、prototype(多例)、request、session、global session
@Configuration 制定POJO类为Spring提供Bean定义信息
@Bean 提供一个Bean定义信息
未完待续……
快日出了,出门跑个步买早餐去