读书人

怎么使用Spring架构中的注释功能基

发布时间: 2012-09-19 13:43:54 作者: rapoo

如何使用Spring架构中的注释功能——基础篇

在传统Spring架构中配置POJOs的基本操作有两种:装配和依赖注入。下面的例子中装配了两个POJO,同时指定了两个对象之间的依赖关系。

例1:实现一个简单类(Main.java)

?例2:基本服务类(BasicService.java)

?例5:注释版BasicService.java

?对于Spring架构中的注释功能而言,我们需要掌握哪些要点呢?

?

@Component

所有的Spring注释中最重要的莫过于@Component,其作用就是在Spring容器中装配一个POJO对象。@Component作用于类声明之前,其用法有两种:

@Component
@Component(“Spring容器内的对象名”)

第一种注释方法会在Spring容器中实例化一个以类名的首字母为小写命名的POJO对象。如例4中对Main类的注释将会在Spring容器中实例化一个名为main的POJO对象:

?当然,如果不满意类名首字母小写的命名规则,第二种注释方法允许我们自定义POJO的名称。如例5中对BasicService的注释:

?

@Autowired

与@Component对应,@Autowired用于Spring容器中POJOs之间的依赖注入操作,使用该注释的最大好处是不必提供传统JavaBeans的setter方法。如例4与例1相比,私有的成员变量service没有提供settter方法,仅靠@Autowired就可以注入与之对应的service对象。@Autowired作用于类的成员变量、类的setter方法或类的构造函数。其用法有以下两种:

@Autowired
@Autowired(required = false)

独立的@Autowired以byType方式进行依赖注入。如例4中对service成员变量的注释:

?与传统Spring配置文件相比,最大的不同在于配置文件中不必使用bean标签来装配已经使用了注释的POJOs,配置文件的内容将变得简洁明了。

其中标签<context:component-scan/>的作用有两点:
1. 允许使用Spring架构中的所有注释功能,包括上述所有注释;
2. 指定了需要扫描的类包,类包及其递归子包中所有的类都会被处理。

总之,Spring2.5的注释功能可以极大的提高开发效率,使大量的维护工作得以简化。我们没有理由不掌握这样的技术!

转载自:http://darxin.info/archive/2010/07/946c714c/

读书人网 >软件架构设计

热点推荐