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

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

昨天 GigaSpaces 发布了其基于空间架构的最新版本,并为其赋予了新的名称:GigaSpaces eXtreme Application Platform (XAP)。引用他们的新闻稿:

新版本为需要高性能和可跨数百台机器水平扩展的应用提供了完整的中间件平台,用于管理数据、消息传递和业务逻辑。
但公告中吸引我注意的是这一部分
作为新产品发布的一部分,GigaSpaces 采用了更简单、非侵入式的编程模型,允许开发者使用 Plain Old Java Objects (POJO)、普通 .Net 和普通 C++ 对象编写应用程序。对于 Java 而言,GigaSpaces 通过支持 Spring Framework 来实现这一点,Spring Framework 正在迅速成为企业级 Java 编程的实际标准
很高兴看到这种认可,我只想对声明稍作改动,去掉“正在迅速成为”这部分:Spring Framework 企业级 Java 编程的实际标准。

这样的公告是良性循环的一部分(例如 Geoffrey Moore 在其著作《大猩猩游戏》中描述的那样),Spring Framework 的普及使得供应商为其产品提供 Spring Framework 集成变得非常有吸引力,这反过来又增加了 Spring 的整体价值。这当然有助于 Spring 变得更加普及……

关于开源的胡言乱语

工程 | Rod Johnson | 2007 年 6 月 12 日 | ...

关于开源的胡言乱语的领域竞争激烈。然而,我刚刚看到了一篇文章,它提高了(或降低了?)门槛:OpenLogic 的一位博主发表了一篇题为 您的时间值多少钱? 的文章。

这篇文章不长,很方便,因为可以逐段进行解读。我将重点关注企业级 Java,这是我凭借经验可以讨论的领域。

博主开门见山,简洁地阐述了她为何不理解企业级开源:

开发开源软件的开发者通常有报酬不错的工作。因此,他们免费从事开源软件开发,并在白天写代码赚大钱。
哇,我以为我们几年前就已经超越了这种“业余爱好”的想法。让我引用一些关于 Linux 的统计数据,来自 2004 年的一篇文章,题为 Linux 现在是一个企业级巨兽。以下是我强调的部分:
为了消除人们认为 Linux 是由大量孤立工作的独立黑客拼凑而成的看法,负责管理 Linux 内核的人士表示,现在大多数 Linux 改进都来自公司。“人们(对典型 Linux 开发者的)刻板印象是一位男性电脑极客,在地下室工作,利用业余时间写代码,纯粹出于对技艺的热爱。直到大约五年前,这样的人 still 是一股重要的力量,”Andrew Morton 说,他的职责是维护稳定版本的 Linux 内核。Morton 说,这些爱好者的贡献“正在减少”。相反,大多数代码是由按公司工作时间打卡的程序员生成的。Morton 说,大约有 1000 名开发者定期为 Linux 贡献修改。在这 1000 名开发者中,约有 100 人由其雇主支付薪水来从事 Linux 工作。而这 100 人贡献了操作系统最近 38000 项修改中的约 37000 项
这意味着 97% 的提交来自有偿从事 Linux 工作的人。这种转变与 Linux 在企业中的普及程度提高是同步的。看看企业级 Java 中最成功的复杂项目,如 Spring、Hibernate 和 JBoss,它们也呈现出类似的景象。所有这些项目绝大多数都是由其背后公司的开发者编写的。志愿者的作用很小。因此,这些产品取得了快速进展。

这篇文章现在转向了经济学——或者更确切地说,试图论证……

Spring IDE 2.0 RC1 发布

发布 | Christian Dupuis | 2007 年 6 月 12 日 | ...

我们自豪地宣布 Spring IDE 2.0 的第一个发布候选版本已经发布。请在 Spring IDE 博客 上阅读公告。

Spring IDE 2.0 包含许多新特性和一系列 bug 修复。最值得注意的是,我们增加了对 Spring 2.0 基于命名空间的配置、包括 @AspectJ 风格切面的 Spring AOP、Spring Web Flow 和 Spring JavaConfig 的全面支持。

Spring IDE 2.0 Logo

下载 | 文档 | 变更日志

发布候选版本可立即从我们的开发者更新站点 http://springide.org/updatesite_dev 获取。请花一些时间进行测试,并就您可能发现的任何错误、bug 或问题提供反馈。非常感谢所有已经提供反馈和 bug 报告的人。您的反馈对我们来说非常有价值。

下一个(也是有望是最后一个)发布候选版本定于下周发布,而 Spring IDE 2.0 的最终版本预计将在 SpringOne 2007 左右发布。

敬请期待更多内容;还有很多即将到来……

ASM 版本不兼容问题,以及 Spring @Autowired 与 Hibernate 的使用

工程 | Alef Arendsen | 2007 年 6 月 11 日 | ...

本周我和 Joris 一起研究 Spring 2.1 的内容。我们正在准备一个示例,使用了实现依赖注入的所有三种方式该示例不仅突出了依赖注入,还展示了一个基于 Hibernate 的后端。

Spring 2.1 中的一些特性需要 ASM 字节码操作框架。Hibernate 也通过 CGLIB 使用 ASM。ASM 1.5.3 和 2.2.3 之间存在二进制不兼容问题。前者由 Hibernate 使用,后者由 Spring 在各种场景中使用;特别是在一些 AOP 功能和新的 @Autowired 特性中。

更新:阅读……

在多 war Spring 应用中使用共享父应用程序上下文

工程 | Joris Kuipers | 2007 年 6 月 11 日 | ...

上个月我在土耳其进行了一次核心 Spring 培训。课程结束时,我讨论了一个应用程序的架构,一些学员在完成课程后将构建这个应用程序。这个应用程序将由一个 ear 文件组成,其中包含多个 war 文件,问题是是否可以定义一个单独的 ApplicationContext,用作所有 war 文件的 WebApplicationContext 的共享父级。这个上下文将包含服务、DAO 和其他不特定于单个 Web 模块的 bean 定义。

实际上,Spring 使其……

我们为何融资 1000 万美元?

工程 | Rod Johnson | 2007 年 6 月 6 日 | ...

您可能听说了 Interface21(Spring 背后的公司)最近融资 1000 万美元的消息。考虑到我们已经成立了将近 3 年,并且迄今为止取得了许多成就,您可能会感到好奇为什么。

我们为何融资,以及我们打算用这笔钱做什么?

在过去两年里,我们建立了一支出色的团队。Juergen Hoeller, Adrian Colyer, Keith Donald, Colin Sampaleanu, Mark Pollack, Ben Alex, Rob Harrop…… 开始列这个名单真是令人不安,因为我知道我无法列出公司所有才华横溢的技术人员,我也不想暗示任何排名或优劣……

Eric Evans 将在 SpringOne 发表演讲!

工程 | Steven Schuurman | 2007 年 6 月 6 日 | ...

再次举办 距离首次讨论举办一个专为不断壮大的 Spring 社区而设的欧洲会议的想法,已经过去了两年多。在 JavaPolis 2005 上宣布首届(2006 年)SpringOne 后,有 400 多人报名参加会议——比我们预期的多出了 20% 以上。SpringOne 2006 非常成功。

由于我们在 2006 年大会后收到了大量的积极反馈,许多与会者对会议强烈关注 Spring 和企业级 Java 反应非常积极,大约 7 个月前我们决定组织 2007 年大会。因此……

关于 Java 配置的更多信息

工程 | Costin Leau | 2007 年 6 月 5 日 | ...

就像现在大多数人已经知道的那样,Spring 不仅仅关乎 XML,因为最近,核心的一些“官方”扩展提供了配置容器的替代方式。

Spring Java Configuration 1.0 M2 是在 JavaOne 前后发布的产品之一,虽然仍标记为里程碑版本,但包含大量重要的更新和 bug 修复。

  • 根包已更改为 org.springframework.config.java
  • <li>scoped beans are fully supported</li>
    
    <li>the bean name generation can be customized</li>
    
    <li>the distribution contains a 'transformed' sample (petclinic) which uses XML, JavaConfig and Groovy.</li>
    

事实上,1.0 M2 大部分工作是整合对初始公告收到的反馈……

Spring:简单,而非简化……

工程 | Alef Arendsen | 2007 年 6 月 5 日 | ...

上周的一次培训中,我第一次使用了 Spring Web Services 的第一个发布候选版本。距离 Arjen 发布他珍贵的 RC1 只有不到两周时间,所以很高兴能向一些学员展示这个新产品。

就在 Web Services 部分之前,我们稍微讲解了 JMX 和 Remoting,展示了 Spring 的 exporter 功能。您可能知道,这允许您以非常少的声明式配置,将任何 Spring 管理的 bean 导出到远程端点或 JMX 注册表。


<bean id="myService" class="com.mycompany.MyServiceImpl">
    <property name…

Spring Framework 2.1 M2 发布

发布 | Juergen Hoeller | 2007 年 6 月 1 日 | ...

亲爱的 Spring 社区,

我很高兴地宣布 Spring 2.1 M2 已经发布!

这是 Spring 2.1 系列的第二个里程碑版本,在注解配置支持方面进行了改进,并支持 AspectJ 加载时织入(load-time weaving)以及其他各种新特性。

此版本还引入了 Spring 模块 jar 的修订结构,现在已为 OSGi 做好准备。请注意,已放弃对 Hibernate 2.1 的支持:Spring 现在通常需要 Hibernate 3.1 或更高版本。 

Spring 2.1 M1 Released

 

请查看变更日志JIRA 路线图,了解更多关于新特性……

获取 Spring 新闻通讯

订阅 Spring 新闻通讯,保持联系

订阅

抢先一步

VMware 提供培训和认证,助力您的职业发展。

了解更多

获取支持

Tanzu Spring 在一个简单的订阅中提供对 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件。

了解更多

即将举行的活动

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

查看全部