首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

Spring3.0的变更(2):特性

2012-10-26 
Spring3.0的变化(2):特性[续上篇http://liuu.iteye.com/blog/479438]?3、新特性及功能增强我最关注的,是Spr

Spring3.0的变化(2):特性

[续上篇http://liuu.iteye.com/blog/479438]

?

3、新特性及功能增强

我最关注的,是Spring3能带来哪些新的功能变化:

?

1、迁移到Java5

?

由于完全基于Java5构建了,应该很多接口增加了泛型的支持,如getBean()后可以不用再转型了,任务执行器继承了Java5的Executor。

?

2、新增Spring表达式语言,简称SpEL

?

??? Spring终于支持了在配置文件中使用表达式语言,而不再是简单的属性文件变量,这应该是一个不错的特性。不只是配置文件,注解里也支持EL。

?

3、支持以Java代码+注解方式来配置元数据

???? 曾记得在07年的时候,发现Spring推出一个有意思的子项目JavaConfig,它不使用XML,而是采用Java的类和方法,来定义容器和Bean,感觉很新颖。不过当时想来,用代码来配置,虽然能获得强类型检查的好处,防止配置输入错误,但是也失去了最大的好处:直接修改的灵活性。

???

???? 时隔两年,Spring才在核心包里加入了这个特性,或许就是因为这个缺点。而之所以在3.0里加进来,最大的原因或许是由于SpEL,既然能够在注解里使用EL,那么灵活性就大大提高了,只要合理规划元数据结构,应该可以获得 强类型配置 + 灵活性变更的双重好处。Spring3发布后,JavaConfig + SpEL或许会成为一种较好的元数据定义方式。

?

4、对象到XML的映射

又是一个从子项目移入核心包的特性,对象XML隐射(OXM),来自WebServices子项目,提供JAXB、XmlBeans以及XStream等方式的实现。

?

5、全面的REST支持

包括服务端和客户端,提供了RestTemplate支持全功能的REST客户端,基于HttpClient。

?

6、注解声明式验证框架

??? 支持自动发现HibernateValidator的jar,设置为对JSR303注解验证框架的实现。

???

?? ?JSR303的声明示例:

 public static class FieldValueTestBean  @Value("#{ systemProperties['user.region'] }")  private String defaultLocale;  public void setDefaultLocale(String defaultLocale)  {    this.defaultLocale = defaultLocale;  }Spring Framework3.0 Reference Documentation 169。。。

热点排行