解释@Component @Controller @Service @Repository

对Spring的注解标签刚刚接触,因此就找了几个经常使用的,记录下,感受注解用了以后,会在*.xml文件中大大减小配置量。之前咱们每一个Bean都获得配置文件中配置关联下。spring2.5后,引入了完整的annotation配置注解,使得咱们的程序配置更简单更容易维护。 

@Component;@Controller; @Service ;@Repository 

      在annotaion配置注解中用@Component来表示一个通用注释用于说明一个类是一个spring容器管理的类。即就是该类已经拉入到spring的管理中了。而@Controller, @Service , @Repository是@Component的细化,这三个注解比@Component带有更多的语义,它们分别对应了控制层、服务层、持久层的类。  @Repository标签是用来给持久层的类定义一个名字,让Spring根据这个名字关联到这个类。  例如:  @Repository("userDao")  public class UserDaoImpl  implements UserDao{     ........................................  }  声明了UserDaoImpl  在Spring容器中叫userDao这个名字。  @Service是用于服务层的IServiceImpl类文件,功能与@Repository相似。  另外标签:@Autowired 用来注入。  例如:  @Autowired  private UserDao userDao;  这样就注入进去了,至关于咱们new了个实现类,咱们就无需写setter方法了。  咱们还得有配置文件进行配置:  <?xml version="1.0" encoding="UTF-8"?>  <beans xmlns="http://www.springframework.org/schema/beans"         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"         xmlns:aop="http://www.springframework.org/schema/aop"         xmlns:tx="http://www.springframework.org/schema/tx"         xmlns:context="http://www.springframework.org/schema/context"         xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd       http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd       http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd       http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd">      <context:annotation-config/>      <context:component-scan base-package="com.zxr.manager">          <context:include-filter type="regex" expression=".*DaoImpl"/>          <context:include-filter type="regex" expression=".*ServiceImpl"/>      </context:component-scan>  </beans>  这样就把com.zxr.manager包下的全部.*DaoImpl,.*ServiceImpl都注册关联到Spring容器中去了。 
相关文章
相关标签/搜索