spring中注解:@service,@Qualifier,@Autowired关键字


@service注解的使用:

<context:component-scan base-package=""/> 
加上这一行以后,将自动扫描路径下面的包,如果一个类带了@Service注解,将自动注册到Spring容器,不需要再在applicationContext.xml文件定义bean了,
类似的还包括@Component、@Repository、@Controller。如果加了注解还在配置bean,就会导致重复报错。

@service("xxx")括号里的xxx是要实现的类的一个对象名,比如在一个Student实现类上加上@Service("student"),括号里面就是给实例化后的Student对象取个名字。。。
这是在一个接口有多个实现类的情况下区分实现类的方式。。。。
比如Student实现了Person接口,在你的controller里面@Autowired(自动装配) Person时,假如这时Person还有另一个实现类User,为了确定实例化Student还是User, 
@Service括号里面的东西就有用了, @Autowired @Qualifier("xxx") ---合格者,多个实现时,表示实现的具体是哪一个。xxx是@service("xxx")中的xxx private Person person; 这样就确定实例化了一个Person指向一个Student对象。。。

       1、@Service用于标注业务层组件
       2、@Controller用于标注控制层组件(如struts中的action)
       3、@Repository用于标注数据访问组件,即DAO组件.
       4、@Component泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM