Spring 2.5的新特点:配置简化和基于注解的功效[Java编程]
本文“Spring 2.5的新特点:配置简化和基于注解的功效[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
简介
从诞生之初,Spring框架就扼守它的目标:简化企业级利用开辟,同时给复杂问题供应强盛的、非侵入性办理筹划.一年前公布的Spring 2.0就把这些主题推到了一个新的高度.XML Schema的支持和自定义命名空间的利用大大削减了基于XML的配置.利用Java 5及更新版本java的开辟人员目前可以操纵植入了像泛型(generic)和注解等新语言特点的Spring库.近来,和AspectJ表达式语言的精密集成,使得以非侵入方法增添超越定义杰出的Spring管理对象分组的行为成为大概.
新公布的Spring 2.5持续保持了这个发展趋向,分外是为那些利用Java 5或更新版本java的开辟人员供应了进一步简化而强盛的新特点.这些新特点包含:注解驱动的依靠性注入(annotation-driven dependency injection),利用注解而非XML元数据来自动侦测classpath上的Spring组件,注解对生命周期办法的支持,一个新的web掌握器模子将恳求映射到加注解的办法上,在测试框架中支持Junit4,Spring XML命名空间的新增内容,等等.
本文是探究这些新特点的3篇系列文章中的第一篇.本文将主要关注于简化的配置和在Spring利用程序上下文(application context)核心新增的基于注解的功效;第二篇文章将涵盖web层可用的新特点;最后一篇文章将侧重介绍集成和测试的新增性能.这一系列的三篇文章中引用的例子都基于Spring PetClinic利用程序典范.此典范近来被重构以用于展示Spring最新功效,并被包含于Spring 2.5的公布下载包中,可以从Spring Framework 下载网页下载.查看“samples/petclinic”目录下的“readme.txt”文件可以得知关于若何构建和布置PetClinic利用程序,掌握本文提到的新技术的最佳办法大概就是对PetClinic利用程序中所展示的特点举行试验.
Spring支持JSR-250注解
Java EE5中引入了“Java平台的大众注解(Common Annotations for the Java Platform)”,并且该大众注解从Java SE 6一开始就被包含此中.2006年5月,BEA系统公布了他们在一个名为Pitchfork的项目上与Interface21的合作,该项目供应了基于Spring的Java EE 5编程模子的实现,包含支持用于注入(injection)、拦阻( interception)和事件处理(transactions)的JSR-250注解和EJB 3注解(JSR-220).在2.5版本中,Spring框架的核心(core)目前支持以下JSR-250注解:
◆@ Resource
◆@ PostConstruct
◆@ PreDestroy
结合Spring,这些注解在任何开辟环境下都可以利用——无论能否有利用程序服务器——乃至是集成测试环境都可以.激活这样的支持仅仅是注册一个单独的Spring post-processor的事情:
class="org.springframework.context.annotation.CommonAnnotationBeanPostProcessor"/>
@Resource注解
@Resource注解被用来激活一个命名资源(named resource)的依靠注入,在JavaEE利用程序中,该注解被典型地转换为绑定于JNDI context中的一个对象. Spring确切支持利用@Resource通过JNDI lookup来解析对象,默许地,拥有与@Resource注解所供应名字相匹配的“bean name(bean名字)”的Spring管理对象会被注入. 在下面的例子中,Spring会向加了注解的setter办法传送bean名为“dataSource”的Spring管理对象的引用.
@Resource(name="dataSource")
public void setDataSource(DataSource dataSource) {
this.dataSource = dataSource;
}
直接利用@Resource注解一个域(field)一样是大概的.通过不表露setter办法,代码愈发紧凑并且还供应了域不可改正的额外好处.正以下面将要证明的,@Resource注解乃至不需求一个显式的字符串值,在没有供应任何值的情形下,域名将被当作默许值.
@Resource
private DataSource dataSource; // inject the bean named 'dataSource'
该方法被利用到setter办法的时刻,默许名是从呼应的属性衍生出来,换句话说,命名为'setDataSource'的办法被用来处理名为'dataSource'的属性.
private DataSource dataSource;
@Resource
public void setDataSource(DataSource dataSource) {
this.dataSource = dataSource;
}
以上是“Spring 2.5的新特点:配置简化和基于注解的功效[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |