Spring:企业级 Java 编程事实上的标准

工程 | Adrian Colyer | 2007 年 6 月 13 日 | ...

昨天 GigaSpaces 发布了他们基于空间的架构的最新版本,并且它也有了一个新名称:GigaSpaces eXtreme 应用平台 (XAP)。引用他们的新闻稿:

新版本提供了一个完整的中间件平台,用于管理需要高性能并能够横向扩展到数百台机器的应用程序的数据、消息和业务逻辑。
然而,公告中引起我注意的部分是这个:
作为新产品发布的一部分,GigaSpaces 采用了更简单、非侵入性的编程模型,允许开发人员使用纯 Java 对象 (POJO)、纯 .Net 和纯 C++ 对象编写应用程序。对于 Java,GigaSpaces 通过支持 Spring 框架来实现这一点,Spring 框架正迅速成为企业级 Java 编程的事实标准
很高兴看到这种认可,我对这句话唯一需要做的细微改动就是去掉“迅速成为”这部分:Spring Framework 就是企业级 Java 编程的事实标准。

诸如此类的公告构成了良性循环的一部分( Geoffrey Moore 在其著作《大猩猩游戏》中曾对此进行过描述),即 Spring Framework 的普及使得供应商极具吸引力地在其产品中提供 Spring Framework 集成,这反过来又增加了 Spring 的整体价值。当然,这有助于使 Spring 更加普及,给更多供应商施加压力,促使它们进行更深入的集成。

那么,在您的产品中“支持 Spring”意味着什么?最简单的层面意味着认同 Spring 的理念:简单的 Java 对象支持外部化配置和轻松测试。以下是一些关于如何让您的产品“兼容 Spring”的建议。

  1. 允许 Spring 管理配置。最基本的意思是拥有一组配置元数据类,可以在应用程序上下文中作为 Spring bean 连接。如果可能,请避免创建自己的自定义配置文件和格式。为了进一步简化用户的使用,您可以考虑添加对 Spring 命名空间的支持,以便更容易地进行配置。例如,Gigaspace 提供了一个“gigaspaces”命名空间,允许在 Spring 配置文件中直接使用诸如 <gigaspaces:config> 和 <gigaspaces:caching> 之类的元素。
  2. 在 API 中使用 Spring 的抽象和设计惯例。例如,“Template”的概念对 Spring 用户来说非常熟悉。GigaSpaces 提供了一个“GigaSpacesTemplate”。
  3. 支持单元测试和集成测试。以一种易于在使用您产品的 Spring 应用程序中对业务逻辑进行单元测试和集成测试的方式来设计您的 API。
  4. 与 Spring 使用的基础设施服务抽象集成。例如,GigaSpaces 的 JMS 和 JDBC 抽象可以直接与 Spring 一起使用。GigaSpaces 还提供了 Spring 的 PlatformTransactionManager 的几个实现,允许 Spring 框架划分基于空间的事务。
当然,并非所有集成选项都适用于每个产品,但这些想法至少应该能帮助您开始。

获取 Spring 新闻通讯

通过 Spring 新闻通讯保持联系

订阅

领先一步

VMware 提供培训和认证,助您加速进步。

了解更多

获得支持

Tanzu Spring 提供 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件,只需一份简单的订阅。

了解更多

即将举行的活动

查看 Spring 社区所有即将举行的活动。

查看所有