spring的annotation

来源:互联网 发布:清华大学软件学院校友 编辑:程序博客网 时间:2024/06/02 22:31

spring的annotation注入简化了beans.xml,将很多bean用很简单的方式处理掉

1.dao持久层

原始的方法是在beans.xml里面设置


<bean id="userDao" name="user" class="cn.lsc.spring.dao.UserDao">
  在annotation里面,我们只需要在beans.xml里面设置以下2步
<!-- 第一步:打开annotation(注释) --> <context:annotation-config/> <!--设置在哪些包中找到annotation  --> <context:component-scan base-package="cn.lsc.spring"></context:component-scan>
然后就可以在各个层里面进行代理注入。
持久层

//等于在bean。xml中完成<bean id="userDao" class="org.itat.spring.UserDao"/>

//@Component("userDao")@Repository("userDao")//一般用于dao的注入public class UserDao implements IUserDao{public void add(User user) {System.out.println("add:"+user);}
原始的service层也是要在beans.xml里面设置

<bean id="userService" class="cn.lsc.spring.service.UserService"> <!-- ref指的是bean。xml里面的id值 --> <property name="userdao" ref="userDao"></property> </bean></span>

在annotation里面就简单很多了,在userService.java里面

//@Component("userService")@Service("userService")public class UserService implements IUserService {private IUserDao userdao;public IUserDao getUserdao() {return userdao;}@Resource(name="userDao")public void setUserdao(IUserDao userdao) {this.userdao = userdao;}

@Service("userService")这个就相当于在配置文件里写了一个bean,就是<bean id="userService" class="cn.lsc.spring.service.UserService">,@Resource(name="userDao")就是注入bean里面的属性UserDao,<property name="userdao" ref="userDao"></property>

总的来说,annotation很简便,而且简化了配置文件





1 0