Spring Integration 4.0 发布

工程 | Gary Russell | 2014年4月30日 | ...

我们高兴地宣布 Spring Integration 4.0.0.RELEASE 版本现已可用。

工件现已在 Spring 存储库 (repo.spring.io/release) 和 Maven Central 中可用。

一些新功能已在里程碑 4候选版本公告(包括 Spring Boot 示例)中进行了深入介绍,但总而言之:

  • 需要 Spring Framework 4.0.3 或更高版本
  • 极大地扩展了用于配置集成流的注解支持,为正在扩展存储库中开发的Java DSL奠定了基础
  • 新的端点,以及更多…

有关候选版本以来的更改,请参阅GA 版本说明

本周 Spring - 2014年4月29日

工程 | Josh Long | 2014年4月29日 | ...

欢迎来到另一期《本周 Spring》!上周我在印度班加罗尔度过了非常愉快的时光,昨天应疯狂流行的 Devoxx 会议创始人Stephan Janssen的邀请,我去了比利时鲁汶,短暂拜访了比利时 Java 用户组,在那里我与一些非常热情友好的当地人以及我的朋友兼 Spring 框架提交者 Stéphane Nicoll共度时光。当然,整个活动的视频应该很快就会出现在 Parleys 上!

让我们直接进入正题!

  1. Spring Social 的联合创始人兼负责人 Craig Walls 刚刚宣布了期待已久的Spring Social 1.1.0 版本!这个新版本太棒了!如果您过去一年半一直在关注预发行版本,那么您就会知道在如何轻松公开 Spring Social 的 Java 配置方面已经进行了一些深思熟虑。最终版本既简洁又通用。我对此感到非常兴奋,并将相应地开始更新我的各种 Spring Social 驱动的 OAuth 客户端!非常棒的工作,Craig!
  2. 您看到新的“次要”Spring Boot 版本 1.0.2了吗?我之所以加引号,是因为对于 Spring Boot 来说,即使是次要版本也功能强大!Syer 博士宣布了该版本,并指出了——除其他事项外——花哨的新@IntegrationTest注解。太棒了!(现在请原谅我去更新我的 Boot 项目……)
  3. 加入我和来自 New Relic 的 Ashley Puls,我们将在明天 4 月 30 日一起跟踪和追踪 Javascript(前端)和 Java/Spring(后端)应用程序。
  4. Spring Integration 正在开发一个令人难以置信的新版本——完全支持注解和 Java 配置 + 一些 Spring Boot 支持!使用 4.0,您可以创建无 XML 集成应用程序。项目负责人 Gary Russell 将在网络研讨会《Spring Integration 4.0,新的前沿》中带您了解所有新特性,5月13日
  5. Spring Data Neo4j 负责人 Michael Hunger 和我将在 5 月 20 日举办一个关于新的令人敬畏的Spring Data Neo4j 3.0 和 Neo4j 2.0 的网络研讨会
  6. 在关于Project Sagan的系列文章中,Spring 框架专家 Brian Clozel 刚刚撰写了一篇关于Project Sagan 如何处理客户端 JavaScript的非常好的文章。这篇文章很好地展现了使用npmgruntgulp的现代客户端应用程序是什么样的。最好的部分?内容以视频形式提供!完美!
  7. Spring Roo 有一个主要的贡献者 DISID!看看我的朋友Pieter Humphrey关于 Spring Roo 未来发展方向的这篇精彩文章。
  8. 在 SpringOne2GX 2013 上与 Chris Richardson 交流 90 分钟,他将讨论 Java、Scala 和 Javascript 的未来。不,我们指的不是产品路线图。看看他的演讲,主题是:Futures 和 Rx Observables:用于异步使用 Web 服务的强大抽象
  9. 您是否仍然认为 Spring 仅用于依赖项注入?加入 Mark Secrist,深入了解框架的基本概念,例如底层设计模式和构建块——高度可重用的见解。观看他在SpringOne2GX 2013 演讲的回放:超越依赖项注入
  10. Xavier Padró 撰写了一篇不错的文章,介绍了如何使用 Spring Integration 配置充当 Web 服务客户端时的超时
  11. IntelliJ 专家 Andrey Cheptsov 撰写了一篇精彩的文章,介绍了如何将 Jetbrains 原生的 Kotlin 语言、NoSQL 数据库 MongoDB、Spring Boot 和 PaaS Heroku 结合使用。不错!
  12. Petri Kainulainen 又回来了,这次他写了一篇关于使用jOOQ(简化 SQL 操作)以及 Spring 处理分页和排序的精彩文章。
  13. Roger Hughes 撰写了一篇关于使用 Spring 的 Quartz 调度支持跟踪异常的精彩文章。
  14. 在《时间不等人》博客上有一些不错的文章。第一篇值得注意的文章是这篇关于在 JBoss EAP 6.2 上的旧版 Spring Integration 中出现的奇怪ClassNotFoundException的文章。
  15. 第二篇稍旧的文章是关于使用Spring Integration MQTT 适配器与 MQTT 支持的服务进行通信的文章。MQTT 是一种轻量级消息传递协议,是当今许多物联网解决方案的核心。谁知道呢?您的冰箱可能正在使用它!:)
  16. 想在本地机器上运行更类似于生产环境的 Hadoop 实例吗?不想运行完整的虚拟机吗?查看这篇关于使用 Docker 部署 Pivotal 的 HD Hadoop 发行版的文章!(然后,查看用于 Hadoop 的 SpringSpring XD!)

Project Sagan:客户端架构

工程 | Brian Clozel | 2014年4月28日 | ...

既然我们对 JavaScript 模块有了更多了解,我们就可以深入研究 Sagan 应用程序的客户端架构了。

注意:如果您还没有阅读关于Sagan 项目的之前的博客文章,您应该知道这是为本博客和spring.io上的其他所有内容提供支持的 Spring 参考应用程序。之前的文章展示了如何运行此应用程序我们如何进行零停机部署以及我们如何升级 Sagan 以使用最新的 JDK8 功能

在这篇文章中,我想介绍 Sagan 应用程序客户端架构的基础知识。

  1. 为什么客户端应用程序位于单独的sagan-client项目模块中?
  2. 它是如何与sagan-site模块关联的?
  3. 什么是npmbowergulp
  4. 这些工具如何协同工作以创建客户端应用程序?

本周 Spring - 2014年4月22日

工程 | Josh Long | 2014年4月22日 | ...

欢迎来到另一期《本周 Spring》!本周我在印度班加罗尔参加伟大的印度开发者峰会,与开发者们讨论(等等……)Spring!我还与班加罗尔电子城的一家大型系统集成商会面,并向一个大型架构师和工程师团队讲解了在全球项目中使用 Spring 的情况。印度是一个有趣的地方,因为他们的很多业务都来自国外的公司,这些公司试图在本来就非常繁重的项目中获得额外的帮助。当然,任何有助于更快完成更多工作的事情在这里都备受关注,而 Spring 也是一个热门选择。不用说,Spring Boot 非常受欢迎!不过,并非只有工作,当当地的食物如此美味时!:)

本周有很多网络研讨会和回放——我们有很多内容要介绍,所以让我们开始吧!

Sagan 项目:升级到 JDK 8

工程 | Chris Beams | 2014 年 4 月 18 日 | ...

我相信大多数读者都知道,Java SE 8 上个月发布了。结合最近发布的 STS 3.5.0及其对 JDK 8 的完全支持,我们认为现在是升级 Sagan 以利用新语言特性和 API 的理想时机。

注意:还不熟悉Sagan 项目?它是为本博客和spring.io上的所有其他内容提供支持的 Spring 参考应用程序。查看本系列中的第一篇三篇文章以了解更多详细信息。

Cloud Foundry 的Java 构建包自发布之日起就提供了对 JDK 8 的支持。为了开始使用它,我们创建了自己的构建包分支将 JDK 版本从 1.7.0 提升到 1.8.0,并配置了我们的 Gradle 构建……

本周 Spring - 2014 年 4 月 15 日

工程 | Josh Long | 2014 年 4 月 15 日 | ...

欢迎来到另一期本周 Spring!本周,我正在法国巴黎与开发人员讨论 Spring Framework 4.0、Spring Boot 以及更多内容,地点在Devoxx FR。下周将前往印度班加罗尔参加伟大的印度开发者峰会。与往常一样,如果您在任何一个地方并想讨论 Spring,请在线联系我

  1. 4 月 30 日星期二网络研讨会 - 不要错过 Ashley Puls(New Relic)和我,我们将一起跟踪和追踪现代 Web 应用程序:使用 Java 和 Javascript 进行 Web 应用程序诊断
  2. 4 月 22 日星期二网络研讨会 - 查看窃取 EclipseCon 2014 主题演讲的内容:Martin Lippert 和 Mike Milinkovich 演示 Project Flux 的 Alpha 版本:将 Eclipse 连接到基于云的开发者工具时代。立即注册
  3. Thomas Risberg 和 Janne Valkealahti 在这篇 SpringOne2GX 2013 回放中展示了他们如何对 Java MapReduce、Streaming、Hive、Pig、Cascading 或 HBase 使用单一编程模型/配置模型:Spring Data 和 Apache Hadoop 入门
  4. 在 SpringOne2GX 2013 上与 Jags Ramnarayan 和 Anthony Baker 进行 90 分钟的交流:基于 Hadoop 的内存数据和计算
  5. 查看 Kevin Nilson(Google)和我在 SpringOne2GX 2013 上共同介绍 Spring Profiles,以及它如何成为一个管理代码通过常规开发/阶段/生产生命周期的绝佳工具:多环境 Spring 应用程序
  6. 我在 SpringOne2GX 2013 上与 Roy Clarkson 再次合作,讨论 Spring Mobile/Android、REST/OAUTH 等:使用 Spring 构建智能客户端
  7. Erdem Günay 撰写了一篇非常好的文章,介绍了他如何使用 Spring 表达式语言 (SpEL) 和 Spring Boot动态地向各种 Android 客户端动态发送远程安装说明。
  8. 我们的朋友 Sam Brannen 将在亚特兰大 Spring 用户组发表演讲!其中一个聪明人
  9. Moritz Schulze 撰写了一篇非常、非常详细的文章,介绍他的公司如何使用 Java 8 和 Spring Boot 开发名为 Trackr 的时间跟踪、假期管理应用程序
  10. Mario Arias 使用Kotlin 语言构建了 Spring关系数据入门指南的一个版本。Kotlin是 JetBrains 的静态类型编程语言,用于 JVM 字节码和 JavaScript。非常酷!我以前从未见过 kotlinprimavera 模块,但我喜欢它!
  11. Patrick Chanezon(微软企业布道总监)最近参加了我关于 Spring Boot 的 vJUG 会议演讲,并开始着手进行黑客攻击!结果是一些关于如何将 Spring Boot 应用程序部署到微软 Azure PaaS的指导。不错!谢谢,Patrick!
  12. Hai Nguyen 撰写了一篇非常好的文章,介绍了如何配置/使用嵌入式 Jetty 的 JNDI 绑定DataSource
  13. 您错过了 Spring 框架负责人 Juergen Hoeller 在 GOTO 阿姆斯特丹关于 Spring 4 和 Java 8 的精彩演讲吗?别担心,您可以在线观看
  14. 这是一个特别 PaaS 的本周 Spring!Kim Saabye Pedersen 撰写了一篇关于在 RedHat 的 OpenShift PaaS 上使用 Spring Boot的好文章
  15. 我们的朋友 Petri Kainulainen 回来了,这次他撰写了一篇关于使用 JOOQ 与 Spring 的非常好的文章。Petri 是社区中一个了不起的人物。我希望您不需要我告诉您这一点。收藏他的网站。它几乎总是值得的。
  16. 我们来自 Netflix 的朋友 Tomás Lin 回来了!这次他发表了一篇关于使用 Spring Boot 和 Gradle 打包 Web 内容的文章
  17. Michael Simons 发布了一篇非常详细的文章,介绍了他如何开发 Boot Web 应用程序。感谢您撰写这篇详细的文章,Michael。非常有价值的反馈。

使用 Geb 进行 Spring MVC 测试

工程 | Rob Winch | 2014 年 4 月 15 日 | ...

在我的第三篇文章中,我讨论了如何使用WebDriver通过页面对象模式使测试设计更容易。在这篇文章中,我将讨论如何使用Geb使我们使用MockMvc进行的测试更具 Groovy 风格。

为什么选择 Geb 和 MockMvc

Geb 基于 WebDriver,因此它提供了许多与 WebDriver 相同的优势。但是,Geb 通过处理一些样板代码使事情变得更加容易。当然,我们希望使用 MockMvc,这样我们就无需将代码部署到服务器。了解使用 Geb 的优势最简单的方法是进入一个示例。


注意:Geb 的另一个强大功能是其出色的文档……

缓存抽象:JCache (JSR-107) 注解支持

工程 | Stéphane Nicoll | 2014年4月14日 | ...

Spring 的缓存抽象从Spring 3.1 开始可用,现在是时候更加关注它了。在这篇文章中,我想带您了解该领域的主要改进,即 JCache (JSR-107) 注解支持。

您可能已经听说过,JSR-107 最终定稿了,在最初的提案提出 13 年后。对于熟悉 Spring 缓存注解的人来说,下表描述了 Spring 注解和 JSR-107 对应项之间的映射

Spring JSR-107
@Cacheable @CacheResult
@CachePut @CachePut
@CacheEvict @CacheRemove
@CacheEvict(allEntries=true) @CacheRemoveAll

JavaScript 模块化(无需流行语)

工程 | Brian Clozel | 2014年4月11日 | ...

大约十年前,Adrian Colyer 写了一篇令人难忘的博文,对面向方面编程 (AOP) 做出了最好的解释:风格清晰简洁,内容准确,没有流行语。如果您查看了本系列中较早的两篇文章,您可能已经注意到我们在 Sagan 应用程序的客户端模块中的一些架构选择,包括**使用 JavaScript 模块**。

在这篇文章中,我想以 Adrian 文章的风格向您介绍 JavaScript 模块的基础知识:清晰、简单、准确,没有流行语!

为什么 JavaScript 也需要模块化

如果,像我一样……

本周 Spring — 2014 年 4 月 8 日

工程 | Josh Long | 2014年4月8日 | ...

欢迎来到另一期《本周 Spring》!

明天,我将在vJUG(一个虚拟 JUG)上做一个关于Spring Boot的演讲。别告诉任何人,但演讲本身将基于Spring Boot 联合创始人Phil Webb和我一直在计划的一个演讲。代码已经上线,所以请查看一下,我期待着明天见到你!如果您错过了演讲,并且碰巧在湾区,那么周四晚上加入我们在旧金山的 Pivotal 办公室,我们将与 Phil 和我一起进行一个更浓缩版本的相同演讲!

然后,本周日,我将传播 Spring 的魅力!我将先降落在巴黎参加Devoxx FR。从那里,我将前往印度班加罗尔参加伟大的印度开发者峰会。自 2012 年以来我就没去过那里了,我非常期待这次活动,也期待在那里见到优秀的 Spring 社区成员。然后,在我回家的路上,我会顺便去比利时参加比利时 JUG 的演讲……

获取 Spring 新闻通讯

通过 Spring 新闻通讯保持联系

订阅

领先一步

VMware 提供培训和认证,以加快您的进度。

了解更多

获取支持

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

了解更多

即将举行的活动

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

查看全部