Spring注解总结(一)
Spring注解总结
传统的spring做法就是使用.xml文件来对bean进行注入或者配置APO、事务,这样会有以下几个缺点:
- 所有内容都写在xml中,文件会很大,如果按需分开xml,文件数量又会很多。总之造成了配置文件的可读性和可维护性变得很低
- 开发中.java和.xml之间来回不断切换,很麻烦,降低了开发效率
为了解决这个问题引入了注解
- 通过@xxx的方式,让注解和Javabean紧密结合,减少了配置文件的体积,又增加了Javabean的可读性和内聚性
传统的spring配置为:定义一个Javabean,写上配置文件,bean id class property name ref等等。主要是注入,让框架帮我们管理,测试的时候,我们需要先读取配置文件,然后获取bean,最后利用bean里面的方法等其他数据
@Autowired就是自动装配,其作用就是消除java代码中的getter,setter方法以及bean文件中的property。 所以不需要写property,两个方法同理自动装配了里面的成员变量。
<bean id="zoo" class="com.spring.model.Zoo" > <property name="tiger" ref="tiger" /> <property name="monkey" ref="monkey" /> </bean> //只需要写一行,自动装配两个属性 <bean id="zoo" class="com.spring.model.Zoo" />
@service
- 做了两件事:声明Zoo.java是一个bean,只有说明他是bean,其他类才可以使用@Autowired将Zoo作为成员变量自动注入 二:表明ZOO.java在bean中的id为zoo
首先有一个类,然后再配置文件中声明他为一个bean,让框架取管理他,也就是注入的代码表示,而利用注解的方式,直接在java代码上可以说明他为一个bean,然后还可以自动装配把自己的成员变量都注入,这样配置文件就没有了
context 环境 conponent组件 component-scan 自动扫描组件
使用注解来构造IOC容器
- 使用注解前要开启扫描
@Service用于标注业务层组件、
@Controller用于标注控制层组件(如struts中的action)
@Repository用于标注数据访问组件,即DAO组件。
@Component泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。
这几个都是组件