Spring 2.0 Final的更新

Spring 2.0最初应该在6月/ 7月发布,为什么要延迟呢? InfoQ与包括Rod Rod Johnson,Rob Harrop,Adrian Colyer和Juergen Holler在内的Spring团队进行了交谈,以了解该框架正在发生的事情以及即将发生的事情。

1)Spring 2.0最终发布的状态是什么? 那里发生了什么事?

在评估了多个关键领域的状态之后,我们才更新了2.0发布计划。 现在,Spring 2.0最终版本的目标日期是2006年9月26日。我们还将在本周宣布另一个候选发布版(RC4)。

自从2005年12月在去年的Spring Experience会议上启动Spring 2.0开发以来,我们已经收到了来自社区的大量反馈。 这确实是一个令人难以置信的回应-用户不仅在积极地提出改进建议,而且还在各种环境中进行了广泛的质量检查测试。 这导致对关键新功能的重大改进,例如异步JMS功能,JPA支持和新的JSP表单标签库。

目前,我们正在努力确保Spring 2.0在OSGi环境中能够很好地运行,这对于我们和我们的用户而言非常重要。 另外,我们的文档也投入了大量精力。 当您打开2.0参考手册并查看涵盖范围时,可以看到明显的回报。

总体而言,我们对此版本特别重视质量和向后兼容性。 我们对该决定感到高兴。 我们的用户群可以肯定,向Spring 2.0的迁移将尽可能轻松。 该发行版应100%向后兼容,并且可以作为现有项目的直接替代品,无论它们多么复杂。 这很难实现,但是考虑到企业中采用Spring的范围,这对我们和用户至关重要。

2)最近发生了哪些JPA更改?

JPA 1.0规范直到Spring 2.0发行周期才能顺利完成,并且实现方式才刚刚成熟,因此我们一直在努力应对不断变化的目标。 我们低估了这对我们时间表的影响。

但是,与整个Spring 2.0一样,我们最终还提供了超出预期功能的功能。 我们已经扩展了JPA集成的范围,以支持规范中“扩展”持久性上下文和注入注释的概念。 我们已经从JPA领域的许多领导者那里得到了宝贵的意见,包括规范的共同领导者Mike Keith。 我们还完成了增值工作,通过提供一致的配置功能来使用户更轻松地在JPA提供程序之间进行切换,这些功能超出了每个提供程序所提供和每个用户所需的规范。 总的来说,我们已经获得了一个一致的,易于使用的模型来跨环境使用JPA,对此我们感到非常高兴。

从技术上讲,JPA支持是一个挑战,因为规范需要字节码检测。 为了在所有环境(包括测试环境)中提供支持,我们必须构建一个抽象层,该层可以允许进行检测,然后在每个环境中实现和测试它。 虽然最初的驱动因素是JPA规范,但这为未来开辟了令人兴奋的可能性。 例如,这意味着我们可以便捷地使用Spring期望的便捷性,从而可移植地,高效地启用AspectJ加载时编织。

我们已经与Mike Keith和TopLink团队的其他成员进行了很多富有成果的工作,以确保Spring与TopLink Essentials能够很好地配合。 我们对OpenJPA项目也感到非常兴奋,并且正在与OpenJPA团队合作,以在2.0最终版本中与OpenJPA进行现成的集成。 我们还提供了与Hibernate EntityManager的集成,并希望其他JPA供应商将与他们的产品进行集成或自行交付。

3)JMS呢?

Spring的JMS消息侦听器功能已经针对所有主要的JMS提供者进行了测试,并且已根据用户反馈进行了显着改进,从而能够适应任何JMS场景-J2EE或非J2EE,XA或本地事务,可以是池化的或非池化的。 现在,它已成为最灵活的JMS消息侦听器功能,提供了与本机JMS提供程序和本地JMS事务一起使用的独特功能。

4)在OSGi环境中使用Spring是什么意思?

OSGi为将应用程序划分为模块(在OSGi术语中称为“捆绑”)提供了出色的基础,并且对模块可见的类型具有严格的可见性规则。 它支持并发部署模块的多个版本,并根据其导入规范将客户端绑定到最新的兼容版本。 OSGi还提供了一个动态环境,可在运行时安装,更新,启动,停止和卸载模块。 但是,OSGi缺乏将模块内的组件连接在一起的任何方法,仅(通过声明性服务规范)提供了将模块之间的服务连接在一起的基本支持。 那就是我们进来的地方。

Spring OSGi支持使使用Spring配置捆绑软件变得容易,激活捆绑软件时会自动实例化Spring应用程序上下文。 OSGi的新Spring命名空间处理程序使定义代表OSGi服务的bean(并跟踪这些服务的生命周期),将bean导出为OSGi服务以及从OSGi配置管理服务获取配置属性同样容易。 Spring还透明地管理上下文类加载器,以便为OSGi设计的企业库可以继续在OSGi环境中使用。

简而言之,Spring-OSGi旨在提供底层OSGi框架的功能,以及与Spring相关的简单性和易用性。

5)IBM,BEA和Oracle对OSGI做了什么?为什么Spring参与其中很重要?

许多组织都认识到OSGi可以为企业软件带来的价值。 例如,IBM的WebSphere 6.1基于OSGi内核。 支持企业空间是OSGi联盟的新方向,并且正在组织一个特殊的企业研讨会 ,以将感兴趣的各方聚集在一起,以期组成一个专家组。 IBM,BEA和Oracle都将参加该活动。

IBM,BEA和Oracle还在Spring-OSGi支持上与Interface21合作。 Spring和OSGi是很自然的契合:随着OSGi向企业发展,使用户能够通过Spring释放OSGi的功能是显而易见的事情。

6)Spring Post 2.0有什么想法?

我们认为Spring 2.0是前进的坚实基础,而不是目标本身。 为在接下来的6-18个月内将要进行的工作提供了一个稳定的平台,已经进行了许多工作。

在AOP领域就是一个例子。 在Spring 2.0中与AspectJ的集成非常优雅且功能强大。 无论用户使用的是Spring AOP的基于代理的运行时还是AspectJ,我们都为AOP提供一个单一的编程模型。 在Spring 2.0之外,我们有兴趣探索更多可用的方面的案例。 我们将在为JPA集成开发的加载时编织抽象的基础上开发,因为它提供了一些令人兴奋的可能性,例如,使用AspectJ构建Spring方面成为可能。

我们还计划在JPA领域进行进一步的工作,例如与JPA供应商合作,以一种便携式的方式提供超出规范的通用功能,例如标准样式的API。 这是Spring 2.0已被设计用来为将来开发提供基础的另一个领域。

我们将稳步发布进一步的易用性功能,例如更多的XML扩展标签以简化重复的任务。 使用Spring 2.0的经验已经比Spring 1.x简单得多,并且我们正在该领域(尤其是Web应用程序领域)进行持续的工作。

在今年余下的时间里,首要任务是提供完整的OSGi集成。 我们已经完成了Spring 2.0的基础工作,但是完整的实现将在2.1或2.2之后进行。 一旦技术集成完成,我们认为对于应用程序开发人员以及开发服务器软件的公司来说,将带来一些令人兴奋的收益。

7)Spring的子项目,Acegi Security,Spring Web Flow和Spring Web Services如何与Spring 2.0相适应?

我们希望这三个项目都将利用最新的Spring 2.0功能,同时尽可能保留Spring 1.2的兼容性。

Acegi是一款可靠的软件,深受用户欢迎。 Spring 2.0特别提供了简化其配置的机会,因此可以覆盖更广泛的受众。

Spring Web Flow是让人兴奋的下一代Web应用程序开发技术。 它比其他任何方法都更好地解决了编排多步用户对话框的问题,并且1.0最终版本将为我们期望将产品定位为将来变得更加通用奠定基础。 1.0版的发布时间与Spring 2.0的发布时间相同。 下一个候选版本(RC4)将于本周发布,并引入一个自定义的Spring 2.0 XML模式,该模式通过默认设置来简化流执行引擎的配置。

Spring Web Services是一个年轻的项目,实际上已经开始出现。 它基于Spring提供支持,以支持在Java中实现轻量级文档驱动的Web服务。 未来的版本将利用Spring 2.0网站的改进和远程支持。

通常,Spring框架核心提供了一个通用的服务基础,我们自己的子项目也利用这些服务来解决更具体的领域。 Spring 2.0为这些项目,Spring社区中的其他新兴项目以及最终用户打开了新的大门,我们感到非常兴奋。

其他资源

在今年12月的Spring体验会议上了解如何应用最新的Spring 2功能。

Spring21背后的公司Interface21 ,在全球范围内提供与Spring相关的培训,咨询和支持服务。

下载最新的Spring 2.0候选版本。

TopLink Essentials是Oracle TopLink产品和JPA参考实现的开源社区版本。

Open JPA旨在成为适合生产使用的完全合规的企业级开源JPA实施。

在Spring环境中开始使用Java Persistence Architecture(JPA)

了解消息驱动的POJO ,这是在Spring环境中具有独立JMS提供程序的可执行异步消息侦听器。

阅读有关使用Spring 2.0和AspectJ进行面向方面编程的更多信息

OSGi联盟是一家独立的非营利性公司,由专注于基于OSGi平台的应用程序互操作性的技术创新者组成。

翻译自: https://www.infoq.com/articles/spring-2-update/?topicPageSponsorship=c1246725-b0a7-43a6-9ef9-68102c8d48e1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值