Spring基于annotation的依赖注入实现

本文介绍了Spring3.0开始提供的注解驱动的依赖注入,包括使用@Repository、@Service、@Controller、@Component注解标识Bean,以及通过自动扫描组件和@Autowired、@Resource进行自动装配。讲解了如何避免XML配置,提高代码可读性和可维护性。
摘要由CSDN通过智能技术生成

Spring基于annotation的依赖注入实现



一、工作目的

以前通常我们将Action、Service、Dao层的对象都以配置文件的形式交给Spring管理,Spring将各层的对象以松耦合的方式组织在一起,Action对象无须关心Service对象的具体实现,Service对象无须关心持久层对象的具体实现,各层对象的调用完全面向接口。当系统需要重构时,代码的改写量将大大减少。不过上述方式有一定的局限性,试想我们的系统规模比较大的时候,需要交给Spring管理的Bean数量庞大,如果都写在Spring配置文件applicationContext.xml中,代码的可读性、可维护性会变得很差。本例将简要介绍 Spring中常使用的annotation,并以演示通过annotation的方式完成Spring的依赖注入。

二、具体内容及步骤

Spring3.0 以前,使用 XML 进行依赖配置几乎是唯一的选择。Spring 3.0 的出现改变了这一状况,它提供了一系列的针对依赖注入的注解,这使得Spring IoC 在 XML 文件之外多了一种可行的选择。

1、将类标识为 Bean

使用@Repository、@Service、@Controller和@Component,@Repository 注解属于最先引入的一批,它用于将数据访问层 (DAO 层 ) 的类标识为 Spring Bean。具体只需将该注解标注在 DAO 类上即可。同时,为了让 Spring 能够扫描类路径中的类并识别出 @Repository 注解,需要在 XML 配置文件中启用 Bean 的自动扫描功能,这可以通过 <context:component-scan/> 实现。如下所示:

<span style="font-family:Times New Roman;"><!-- Spring搜索路径配置,如下配置将搜索工程com目录下标识的Bean-->
	<context:annotation-config />
  	          <context:component-scan base-package="com" >
  	</context:component-scan></span>

这样我们不再需要在XML中显式使用 <bean/> 进行 Bean 的配置。Spring 在容器初始化时将自动扫描 base-package 指定的包及其子包下的所有 class 文件&#x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值