本周 Spring - 2012 年 10 月 16 日

工程 | Josh Long | 2012 年 10 月 17 日 | ...

欢迎来到 本周 SpringSpringOne2GX 2012 大会版!我正在华盛顿特区的 SpringOne2GX 大会的第二天整理这篇内容!

昨晚,大会在 Juergen Hoeller(上图)、Dr. Mark PollackGraeme RocherAdrian Colyer 的精彩主题演讲、国际舞者 Agame 惊人的街舞表演以及一只神秘的袋鼠(见下文)中拉开帷幕!

这是 JVM 开发者最重要的活动,邀请了来自 VMWare、SpringSource、TypeSafe、Neo4j 等众多公司的优秀演讲者,涵盖了各种主题。这周才刚刚开始。大会期间,还将举办一场竞赛,寻找使用 SpringSource 技术(Spring、Grails)构建并部署到 Cloud Foundry 的最佳应用。我已经看到了奖品(上图),如果可以的话,我也想参赛!

<P> If you're at the show, be sure to stop by the SpringSource and Cloud Foundry booths in the expo hall and pick up shwag and answers to your lingering questions. I'll be there tomorrow, in the evening.</p><P> Anyway, I won't linger <EM>too</EM> much on what you're missing! Let's move on to this week's roundup because, as usual, there's a lot to cover! </p> 
	
	<OL> 
		<LI>Want to learn about what else has happened at SpringOne2GX? Check <a href= "http://www.springsource.org/node/3704">out this fantastic wrap up of day 1</a></LI>
		<LI> The Spring Data release train has finally arrived…

Spring Data 发布列车已抵达

工程 | Oliver Drotbohm | 2012 年 10 月 15 日 | ...

很高兴地宣布,我们刚刚发布了多种 Spring Data 模块的 GA 版本。通过此次发布,我们继续兑现 SpringSource 的承诺,为 Java 开发者提供与最先进的持久化技术协同工作的工具。在这篇博客文章中,我想详细介绍此次发布包含的内容、我们为何决定采用发布列车方式,并简要展望 Spring Data 路线图的下一步。

发布列车

回顾 Spring Data 模块的开发方式,发布周期通常由各个模块负责人管理。鉴于模块的进度和成熟度不同,这在同时使用多个模块时会造成一些问题。特别是依赖 Spring Data Commons 的项目受到了这个问题的影响。

我们一直在努力将这些问题最小化,但最终得出结论,协调... 是有意义的。

Scripted:VMware 的 JavaScript 编辑器

工程 | Andy Clement | 2012 年 10 月 11 日 | ...

Scripted 代码编辑器的第一个版本已于本周在 github 上发布:https://github.com/scripted-editor/scripted

尽管 Scripted 是一个通用代码编辑器,但最初的重点是构建出色的 JavaScript 编辑体验。Scripted 本身完全使用 JavaScript 和 HTML/CSS 构建。它是一个基于浏览器的编辑器,在开发人员的机器上本地运行,并使用 Node.js 实例来提供编辑器代码并执行编辑器操作。运行 Scripted 的唯一先决条件是您已安装最新版本的 Node.js(我们目前正在使用 Node 0.8.11 进行测试)。Scripted 重用了 Eclipse Orion 的编辑器组件……

本周 Spring - 2012 年 10 月 9 日

工程 | Josh Long | 2012 年 10 月 10 日 | ...

欢迎回到新一期的 本周 Spring!。随着我们迈向 SpringOne 的最后阶段,本周 SpringSource 活动频繁!距离大会只剩一周了,每天都在朝着有史以来最好的大会前进!我们希望能在那儿见到您!不要错过 Adrian Colyer、Jurgen Hoeller、Mark Pollack、Graeme Rocher 的第一天和第二天主题演讲,以及我们在过去四周内在 SpringSource.org 上重点介绍的精彩议题:走向异步 - 推送通知客户端 UI 对决分解应用以实现可部署性和可伸缩性如何使用 OSS 为 Hadoop 构建大数据管道

  1. Alvin J Rayes 写了一篇很棒的文章,关于使用 Spring MVC 3 和模板引擎 Apache Tiles
  2. Tool Suites 负责人 Martin Lippert 宣布 Spring Tool Suite 和 Groovy/Grails Tool Suite 3.1.0 已发布!干得好,Martin!
  3. Spring Security 负责人 Rob Winch 宣布 Spring Security 2.0.8、3.0.8 和 3.1.3 已发布!这使得未解决的 bug 总数降至 0。Rob,干得漂亮!
  4. 您是否一直在关注 Spring Integration 团队关于即将发布的 Spring Integration 2.2 新特性的精彩博客?
    	 <A href = "http://blog.springsource.org/2012/10/09/spring-integration-2-2-retry-and-more/">Gary Russell has put together a nice blog on the new support for retry in Spring Integration</A>.  The support for retry capabilities originally comes from Spring Batch's support for retrying  
    	 operations, and was then factored out to the <a href="http://www.github.com/springsource/spring-retry">Spring Retry</A> project. Now, you can take advantage of it in Spring Integration flows!
    
  5. Gunnar Hillert 写了一篇很棒的文章,介绍如何在 Spring Integration 2.2 中使用新的适配器来使用 JPA
  6. 正在学习 OAuth?想了解 OAuth 在哪些场景下可以更好地保护您的 RESTful API?请阅读Spring 专家 Dr. David Syer 的文章,介绍 OAuth,以及 Cloud Foundry 如何将其用于 UAA 服务
  7. 	<LI> Krishna Prasad has put together some very cool posts recently.  I liked his post on connecting systems using…

Spring Integration 2.2 的新特性(第四部分 - 重试及更多)

工程 | Gary Russell | 2012 年 10 月 9 日 | ...

简介

这是系列博客文章的第四部分,重点介绍了 Spring Integration 2.2 的一些新特性,紧随最近发布的候选版本 1第一部分介绍了 MongoDB 适配器,第二部分介绍了事务同步;第三部分介绍了 JPA 支持。

Spring Integration 2.2 引入了为消息处理器应用一个或多个局部 AOP Advice 元素的能力。还提供了一些标准的 Advice 类以及一个探索这些功能示例应用程序。

背景

关于面向切面编程 (AOP) 的一般介绍,请参阅Spring 文档

到目前为止,在 Spring Integration 中,可以将一个 <advice-chain/> 应用于一个轮询器。假设使用的是 Direct 通道,则这种链中的 AOP Advice 会应用于整个流程,包括所有下游组件。然而,有时只对单个端点进行通知会更有优势,例如,重试……

Spring Integration 2.2 的新特性(第三部分 - JPA 支持)

工程 | Gunnar Hillert | 2012 年 10 月 5 日 | ...

这是系列博客文章的第三部分,重点介绍Spring Integration 2.2 中的一些新特性,紧随最近发布的候选版本 1第一部分描述了新的一套 MongoDB 适配器。 在第二部分中,我们重点介绍了同步非事务性资源与事务的新的扩展支持。

在今天的第三部分中,我们想介绍自 Spring Integration 2.2 开始提供的新的 Java 持久化 API (JPA) 支持。JPA 模块与持久化提供者无关,并已使用以下技术进行测试:

作为新的 JPA 模块的一部分,我们提供了几个用于检索和持久化 JPA 实体对象的组件:
  • JPA 入站通道适配器
  • JPA 出站通道适配器
  • JPA 更新出站网关
  • JPA 检索出站网关
使用这些组件,您可以在数据库中选择、创建、更新和删除实体。除了直接使用实体类持久化数据外,您还可以使用 Java 持久化查询语言 (JPQL) 以及本地 SQL 查询执行查询。此外,还支持命名查询。

JPA 示例

在我们的 Spring Integration Samples 仓库中,我们提供了一个示例应用程序来演示 JPA 支持,我们希望在本博客文章中使用它来向您展示如何轻松入门。

提供的示例使用了一个嵌入式 H2 数据库,其中包含一个名为 PEOPLE 的表。此表映射到包 org.springframework.integration.samples.jpa 中的 Person 实体类……

Spring 仍处于企业级 Java 的最前沿:大数据、NoSQL 和云可移植性

工程 | Adrian Colyer | 2012 年 10 月 1 日 | ...

又到了 JavaOne 大会时间,今年您会看到关于 Spring 如何与 Java SE 协同应对 大数据NoSQL 和企业集成挑战的议题。我们始终努力工作,通过及时支持新兴趋势和技术来确保 Spring 处于企业级 Java 的最前沿。数据显示,我们的用户对此表示赞赏。Evans Data 最近的一份报告(《Spring Source 使用研究》,Evans Data Corporation,2011 年 9 月)显示:

  • Spring 是 Java 专家开发人员的首选框架。超过三分之二的 Java 开发人员目前正在使用 Spring 或计划使用。
  • Spring 的使用率持续增长。超过一半的现有 Spring 用户预计会增加或显著增加对 Spring 的使用。
  • Spring 正在带来成果。70% 的 Spring 用户表示使用 Spring 至少提高了 50% 的生产力,73% 的用户表示完成项目的时间至少减少了 50%。
  • Spring 用户处于企业级 Java 的最前沿。Spring 用户对云更准备充分,采用 Spring 的用户更有可能已经将应用部署到云端。

Spring 始终提供部署灵活性。早期这意味着可以选择应用服务器,但现在已扩展到选择云平台,包括我们自己的 Cloud Foundry。Spring 始终提供强大的数据访问支持。早期这意味着选择访问关系数据库的方法,现在已扩展到一系列大数据和 NoSQL 存储、数据处理以及内存数据网格功能。Spring 始终重视开发人员的生产力,并为编写服务器端 Web 应用提供了第一流的支持。如今,这已扩展到满足基于 HATEOAS 的 REST API 的现代需求。

这些是当今企业中真实而紧迫的问题。云无处不在,现在大数据也牢牢地进入了企业项目视野,带来了一系列新需求:

  • 大数据:需要存储千兆字节、万亿字节或拍字节的非结构化或半结构化数据并从中获取分析结果
  • 快速数据:日益增长的与大数据集进行低延迟交互的需求,这通常由当今的移动和社交应用驱动
  • 灵活数据:需要根据每个应用的需求调整数据访问方式以采用最适合的模型
  • 云交付:日益增长的以服务形式访问数据的需求,可根据您选择的云进行部署。

《哈佛商业评论》最新调查显示,85% 的组织计划或正在进行大数据项目。应用程序开发人员需要提供功能强大、高质量的解决方案,这些解决方案能够与这个新世界集成,并且可以部署在任何地方,无论是在本地还是在云端。NoSQL 和 NewSQL 也被用于解决广泛的用例,包括:

  • 管理大量的非事务性数据流(日志、点击流)
  • 欺诈检测
  • 时间线(类似于 Twitter)
  • 同步离线和在线数据
  • 在线游戏
  • 文档、目录和内容管理
  • 归档 - 存储大量持续的数据流,并且在线仍然可访问
  • 嵌入式系统(设备中的小型数据库)

有关更多详细信息,请参阅这篇High Scalability 博客文章

451 Research 最近的调查数据突显了数据格局的变化。一刀切的方式不再适用。

企业开发人员今天就可以利用 Spring 和熟悉的 Spring 编程模型开始利用这些新技术。Spring 提供:

围绕 NoSQL 的蓬勃发展的开源社区,与 Spring 一道,使得为下一代数据存储和数据处理进行开发在今天变得更具生产力。我们不为所有持久化存储提供单一的 Java API;考虑到它们之间的根本差异,这是不现实的。但我们确实提供了一个基于模板概念和(如果可用)仓库的通用且熟悉的编程模型。有关更多详细信息,请参阅 Tobias Trelle 最近的 InfoQ 文章

总而言之,JavaOne 2012 肯定会是充满活力的一个星期,包含许多精彩的 Java 技术演讲、主题演讲和会议,包括对我们自己的大数据NoSQL集成方案的介绍。希望现在就亲自动手实践这些技术的开发者也不容错过 2012 年 10 月 15-18 日在华盛顿特区举行的 SpringOne 2GX 大会。我们有一个内容丰富的技术议程,涵盖了现代企业应用开发的各个方面。

本周 Spring - 2012 年 9 月 25 日

工程 | Josh Long | 2012 年 9 月 26 日 | ...

欢迎回到新一期的 本周 Spring!本周有太多好东西值得一看。你能相信我们已经要进入十月份了吗?

是时候想想万圣节你要打扮成什么了!

随着十月的到来,SpringOne2GX,这个 Spring 开发者最重要的活动也来了。快来看看今年活动的最终日程演讲者及议题!SpringOne 2GX 是您向 Spring、Groovy/Grails、Tomcat 和 Cloud 技术领域的开发负责人和已出版书籍的作者学习的机会。

  1. Spring Security 负责人 Rob Winch 介绍 Spring Security 的网络研讨会视频现已上线
  2. Oleg Zhurakousky 通过一篇博客介绍了 Spring Integration 2.2 中的新 MongoDB 功能,开启了迈向 Spring Integration 2.2 的进程。
  3. Gary Russell 宣布了 Spring Integration 2.2 的候选版本 1
          This is intended to be the final release before GA, so users are encouraged to give feedback on this release.  
    
    </LI>
    
  4. Costin Leau 宣布了 Spring Shell 的 1.0.0.RC1 版本,它是从 Spring Roo 中使用的 Shell 中提取出来的,通过 Spring 编程模型提供。
       </LI>
    
  5. Roger Hughes 又回来了,这次他带来了关于 Spring 3.1 缓存和配置选项的文章,特别关注了如何设置 CacheManager
  6. vFabric 博客对 Spring Insight 背后的“分离代理”架构进行了有趣的探讨,该架构允许将收集阶段与分析阶段分开。
  7. Krishna Prasad 写了一篇很棒的文章,关于获取 Spring Web Flow 应用程序的测试覆盖率信息
  8. Mattias Severson 写了一篇很棒的文章,关于如何在基于 Spring MVC 的 RESTful 应用程序中处理错误
  9. Ronillo Ang 制作了一个非常简短的演示文稿,介绍了Spring MVC 应用程序的基本组成部分
  10. JavaCode Geeks 博客有一篇很棒的文章,关于使用 Spring 框架编写持久层
  11. L'Artech 博客有一篇很酷的文章,关于使用 Spring MVC 创建 Web 应用程序的登录表单,这是系列文章的第三部分。

Spring Integration 2.2 的新特性(第二部分 - 事务同步)

工程 | Gary Russell | 2012 年 9 月 26 日 | ...

简介

这是系列博客文章的第二部分,重点介绍了 Spring Integration 2.2 的一些新特性,紧随最近发布的候选版本 1第一部分介绍了 MongoDB 适配器。

Spring Integration 2.2 引入了将非事务性资源与事务同步的扩展支持。

背景

多年来,Spring 一直提供一流的支持,用于将资源与事务同步。在许多情况下,此功能用于同步由多个事务管理器管理的事务,以便实现 Dave Syer 在他出色的JavaWorld 文章中描述的“尽最大努力 1PC”模式。

例如,它通常用于将 JMS 提交与 JDBC 提交同步。

Spring Integration 通过在轮询器上定义 <transactional/> 元素,长期以来一直支持此功能。此版本将此功能向前推进了一步,允许非事务性资源与事务同步。

例如,考虑一个 <file:inbound-channel-adapter/> 和一个集成应用程序,该应用程序在目录中出现文件时读取该文件,并更新数据库。这……

Spring Integration 2.2.RC1 的新特性(第一部分 - MongoDB)

工程 | Oleg Zhurakousky | 2012 年 9 月 24 日 | ...

简介

Spring Integration 2.2.RC1 已发布,我们将在未来几天推出一系列博客,讨论其一些新特性。在第一篇博客中,我们将讨论 MongoDB 入站和出站通道适配器。讨论过的完整示例集可在此处获取

MongoDB 出站通道适配器

MongoDB 出站通道适配器允许您将消息载荷写入 MongoDB 文档存储。

您可以在下方看到 MongoDB 通道适配器的最简单配置:

<int-mongodb:outbound-channel-adapter id="deafultAdapter"/>

它将使用 MongoDbFactory 的默认实例(默认 Bean 名称为 'mongoDbFactory')进行初始化,否则您可以通过 mongodb-factory 属性提供其引用。

现在您可以运行 MongoDbOutboundAdapterDemo。运行后,打开终端窗口并启动 MongoDB CLI。

$> mongo

进入 MongoDB CLI 后,输入查询:

> db.data.find({})

您应该看到我们刚刚创建的 3 个文档条目。

{ "_id" : ObjectId("505ff83d03649ed6881d…

获取 Spring 新闻通讯

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

订阅

领先一步

VMware 提供培训和认证,助您快速提升。

了解更多

获取支持

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

了解更多

即将到来的活动

查看 Spring 社区中所有即将到来的活动。

查看全部