Spring 的@Component和@Autowired

来源:互联网 发布:淘宝充值平台怎么提现 编辑:程序博客网 时间:2024/06/05 20:37

Spring提供的几个Annotation来标注Spring Bean。

  • @Component:标注一个普通的Spring Bean类。在这种下,Bean实例的名称默认是Bean类的首字母小写,还可以在使用@Component标注时指定Bean实例的名称。如@Component(”steel2”).
  • @Controller:标注一个控制器组件类。
  • @Service:标注一个业务逻辑组件类。
  • @Repository:标注一个DAO组件类
  • @Repository、@Service和 @Controller。@Component是所有受Spring管理组件的通用形式;而@Repository、@Service和 @Controller则是@Component的细化,用来表示更具体的用例(例如,分别对应了持久化层、服务层和表现层)。

搜索Bean类
Spring要求显示指定搜索哪些路径下的Java类(context:component-scan方法)。然后将合适的Java类注册成Spring Bean(合适的意思就是被Annotation标注的类)。
这里写图片描述
context:component-scan/>:将会把包下及其子包下的所有Bean类。
这里写图片描述

如上图,第一个配置和第二个都可以获得HelloWorld这个spring Bean。用注解就不用在xml中配置Bean了。

3,Spring提供@Autowired注解来指定自动装配。
@Autowired 注释,默认采用byType自动装配策略 ,它可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作。 通过 @Autowired的使用来消除 set ,get方法。

这里写图片描述

1 0