@Component注解的解析

2018-10-18 14:45:33 浏览数 (1)

今天在写程序的时候看见一个以前没有见过的注解(@Component),在网上查找过后,经过实践,决定把它记录下来。

 1、@controller 控制器(注入服务)

  • 用于标注控制层,相当于struts中的action层

2、@service 服务(注入dao)

  • 用于标注服务层,主要用来进行业务的逻辑处理

3、@repository(实现dao访问)

  • 用于标注数据访问层,也可以说用于标注数据访问组件,即DAO组件.

)">4、@component (把普通pojo实例化到spring容器中,相当于配置文件中的  <bean id="" class=""/>
  • 泛指各种组件,就是说当我们的类不属于各种归类的时候(不属于@Controller、@Services等的时候),我们就可以使用@Component来标注这个类 下面写这个是引入component的扫描组件  1  其中base-package为需要扫描的包(含所有子包)         1、@Service用于标注业务层组件         2、@Controller用于标注控制层组件(如struts中的action)         3、@Repository用于标注数据访问组件,即DAO组件.         4、@Component泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。                  @Service public class UserServiceImpl implements UserService { }                   @Repository public class UserDaoImpl implements UserDao { } getBean的默认名称是类名(头字母小写),如果想自定义,可以@Service(“***”)               这样来指定,这种bean默认是单例的,如果想改变,可以使用@Service(“beanName”)             @Scope(“prototype”)来改变。可以使用以下方式指定初始化方法和销毁方法(方法名任意): @PostConstruct public void init() { }
代码语言:javascript复制
<context:component-scan base-package=”com.mmnc”>

0 人点赞