Spring YARN 快速入门指南介绍

工程 | Janne Valkealahti | 2014 年 6 月 13 日 | ...

现在 Spring for Apache Hadoop 2.0 版本已正式发布 (GA),我想借此机会介绍我们的新的 Spring IO 快速入门指南,用于构建 Hadoop YARN 应用。

我们提供了关于如何使用 Gradle 或 Maven 操作 Spring YARN 的通用指南。我们的指南设计用于支持这两种构建系统。

这两篇指南展示了熟悉的“hello world”应用类型,代码库非常简洁。这些应用的行为完全相同,区别仅在于项目结构…

本周 Spring 动态 - 2014 年 6 月 10 日

工程 | Josh Long | 2014 年 6 月 11 日 | ...

欢迎来到最新一期的《本周 Spring 动态》。本周是精彩纷呈的一周!我先是在波兰克拉科夫,在精彩的 33rd Degree 大会上与开发者交流,然后前往波兰华沙,在出色的本地 Spring Labs 用户组发表演讲。明天,我将前往伦敦参加 Devoxx UK,在那里我会帮助推广 Spring Boot 的出色之处。接着,周五,我将前往多伦多,下周在那里会见 4 家客户和使用 Spring 的团队。这对你意味着什么?首先,如果你在伦敦和多伦多,请打个招呼!这也意味着会议季正在如火如荼地进行。我们努力出现在需要我们的地方。今年除了 SpringOne2GX 2014 之外,你还会参加哪些会议?我很想知道你今年会参加哪些会议。请帮助我们确定优先顺序。谢谢!(Twitter 话题标签 #twiSpring)

  • Spring Boot 1.1 已发布!它包含了对 GSP、Spring Social、Velocity、Freemarker、Spring Mobile、Spring HATEOAS 等等众多新特性。还有大量的新的自动配置支持:GemFire、HornetQ、Elasticsearch、Solr、Spring Social、Spring Integration、Spring Mobile 和 Spring HATEOAS。说实话,你最好还是先阅读博文再回来。那里有太多精彩内容了。
  • 我们的 CFSummit 大会正在旧金山举行!Cloud Foundry 周边有很多很棒的东西。我找到了一些新闻稿,这里是 eWeek 关于 PCF 1.3 新特性的一篇报道
  • 如果你本周没参加旧金山的 CloudFoundry Summit,你可能错过了 Matt Stine 精彩的演讲:Cloud Foundry 和微服务:互利共生关系。你在这里听到的第一手消息:CloudFoundry 和 Spring Boot 将是微服务的绝佳组合。
  • 为庆祝 Spring Boot 发布,出色的 Greg Turnquist 将于 7 月 8 日带来 使用 Spring Boot 构建应用管理工具 的演讲。
  • 加入 Glenn Renfro 的行列,他将在 6 月 17 日的 以 Spring Boot 风格实现 Spring Integration 演讲中带你体验 Spring Integration 4.0 的 Boot/JavaConfig/注解驱动开发。
  • Casey Doolittle 和 Phil Dutson 将于 7 月 15 日带来终极电商功能演练:使用 Spring 在 24 小时内构建购物车
  • 观看去年 SpringOne2GX 2013 会议的演讲回放,SpringOne2GX 2013 回放:太空探索:使用 Sencha Space 为安全的互联 HTML5 应用构建 API
  • 出色的 Craig Walls 去年在 SpringOne2GX 2013 上做了一个很棒的 关于 Spring Social 的演讲,看看吧!毕竟 Spring Social 1.1 刚刚发布。现在是了解并连接到客户正在使用的服务的好时机。
  • Greg Turnquist 发表了一篇非常不错的博客,讲述了 贡献 Spring IO 指南的过程。Greg 也是这些指南的主要贡献者之一,所以如果他批准了,那你就知道这很棒。开源万岁!
  • 说到那篇新指南,你应该去看看:它讲述了如何使用 Spring WS 构建 SOAP 服务。(嘿,对很多人来说,这仍然很重要,而且 Spring WS 基于 Java 配置的新端点模型非常适合这项任务!)
  • Ramnivas Laddad,AspectJ 的幕后推手之一,Cloud Foundry 的架构师之一,以及我们的本地云忍者,最近做了一个关于 Spring Cloud 的网络研讨会,它使得以一种干净的、依赖注入中心的方式轻松消费绑定到 PaaS 的服务:去看看吧!
  • Manuel Jordan,我们社区的一位出色成员(我几本书的编辑,因他在论坛上回答的问题比任何人都多而获得 Springy 奖,而且是一个非常不错的人)在秘鲁阿雷基帕撰写了一系列 介绍 Spring 各部分的史诗级博文。去看看吧。Manuel,干得漂亮!
  • softwarecave 博客有一篇文章关于如何在 Spring 中使用 Hibernate。我很喜欢,但想提醒大家,现在几乎没有理由再使用 XML 了,即使有理由,也几乎没有理由再编写这类配置了。直接使用 Spring Boot 吧。@EnableAutoConfiguration 带来的变化令人惊叹!
  • GeekAByte 博客有一篇不错的文章,介绍了 Spring 中各种基于注解的自动注入方式。去看看吧!

首篇社区撰写的快速入门指南已发布

工程 | Greg L. Turnquist | 2014 年 6 月 5 日 | ...

致 Spring 社区的朋友们,

今天,我们刚刚发布了第一篇由社区成员撰写并提交的快速入门指南:构建 SOAP Web 服务

Maciej Walkowiak 编写了一篇满足他需求的指南,并决定贡献给社区。这与其他人表达的对这类指南的兴趣一致。Maciej 使用 https://github.com/spring-guides/getting-started-guide 作为模板,并提交了一个包含他所编写指南的拉取请求

我们将他的所有提交合并到了一个独立的仓库中,进行了一些编辑润色,并在最终审核后…

Spring Cloud 介绍

工程 | Ramnivas Laddad | 2014 年 6 月 3 日 | ...

开发、部署和运维云应用应该像本地应用一样简单(甚至更简单)。这应该是任何云平台、库或工具背后的指导原则。Spring Cloud——一个开源库——使得为云开发 JVM 应用变得容易。有了它,应用可以在 Cloud Foundry 和 Heroku 等多个云环境中轻松连接服务并发现云环境的信息。此外,你还可以将其扩展到其他云平台和新服务。

在这篇博客(系列的第一篇)中,我将介绍 Spring Cloud 并从应用开发者的角度展示其用法。我们将开发一个简单的应用并部署到 Cloud FoundryHeroku

本周 Spring 动态 - 2014 年 6 月 3 日

工程 | Josh Long | 2014 年 6 月 3 日 | ...

欢迎来到最新一期的《本周 Spring 动态》。本周是令人兴奋的一周!好吧,老实说。每周都很令人兴奋。但特别是,本周会让很多人高兴。请关注博客,我们下周在这里回顾! :)

  1. 天哪!Spring Boot 1.1.0.RC1 现已发布!新版本继续保持辉煌,支持 Spring Data Elasticsearch、HornetQ 和 Spring Social,以及更多!获取最新版本,试用一下,并在TwitterGitHub 上提供反馈。
  2. Mark Pollack 博士刚刚宣布 Spring XD 的最新版本 1.0.0.M7 现已可用。新版本提供了许多出色的新特性。我最喜欢的是将数据固定到特定流的能力——可以将其视为使用消息内容进行关联——以便保留有状态操作。可以将其视为根据有用的业务键路由和划分消息的绝佳方式。发布说明中有一个很好的例子。
  3. Azul 的巨星 Gil Tene 在 SpringOne2gX 2013 上做了一个精彩的 关于减少延迟的演讲,现在可以在线观看。Gil 是我们行业中的一位“疯狂科学家”。我还没看过这个演讲,但我会的,我也强烈建议你们去看。Azul 提供高性能、低延迟的 JVM,既有硬件设备也有可交付软件。因此,他的演讲源于大量吃力不讨好的研究和开发,我宁愿通过观看并向他的演讲学习来省去这些麻烦。加油,Gil!
  4. 六月的网络研讨会来了!Michael Minella 将于 6 月 10 日带来 Spring Batch 3.0.0 的演讲,Glenn Renfro 将于 6 月 17 日带来 以 Spring Boot 风格实现 Spring Integration 的演讲。
  5. Spring 忍者 Greg Turnquist 在 SpringOne2GX 2014 演讲之前,撰写了一篇关于 在前端 REST 客户端中使用出色的 when.js Promises/A+ 实现 的预告文章。查看这篇文章参加他在会议上的演讲
  6. Ramnivas Laddad,一位 Spring 忍者,AspectJ 的早期领导者,Cloud Foundry 的架构师之一,刚刚发布了一篇非常棒的 Spring Cloud 介绍,它使得从各种平台即服务 (PaaSes) 上的不同中间件/基础设施服务(数据库、消息队列)消费客户端服务,变成了简单的平台解耦配置问题。
  7. ADP 的 Jeffery Sologov 演讲回放,内容关于构建大型应用的陷阱,现已发布!去看看吧!
  8. http://twitter.com/JakubJirutka 插话告诉我们这个史诗级由 Spring Expression Language (SpEL) 支持的 Bean Validation API (JSR 303/349) 实现。GitHub 上有一个有趣的观点,“它对于使用纯粹的 Bean Validation 很难实现的跨字段验证尤其有用。”我也非常喜欢这些示例。
     
    @SpELAssert(value = "password.equals(passwordVerify)",
            applyIf = "password || passwordVerify",
            message = "{validator.passwords_not_same}")
    public class User {
      private String password;
      private String passwordVerify;
    }
    

    干得漂亮!

  9. 向发现这个的出色人物 Brian Dussault 致敬:Zuul 是一个漂亮的应用程序配置管理解决方案,它提供了简洁的 Spring 客户端 API。

  10. 你知道昨天让我高兴的是什么吗?一个 HystrixInvocationHandlerInvocationHandler 由 JDK(以及 Spring 丰富的代理子系统)用来创建包装 bean 的代理。这个 InvocationHandler 将对给定 bean 的方法调用包装到 Netflix 的开源项目 HystrixCommand 对象中。Hystrix Command 对象包装功能并提供/支持弹性模式。我迫不及待想看看 Spencer Gibb 的 Halfpipe 项目会发展成什么样!
  11. 我们的朋友 David Welch 又来了,这次带来了一个有趣的项目,叫做 Spring Tiered,它旨在进一步简化(并规范化)基于 HATEOAS 的服务开发。有意思...
  12. 另外,说到构建(和消费)弹性服务,看看 Chris Richardson 在 SpringOne2GX 2013 上关于 异步消费 Web 服务的强大抽象 的精彩演讲吧。
  13. 此外,我还写了一篇文章,介绍了 如何使用 Maven(及替代方案)和 Spring 开始

使用新的 when.js 3.2.2 为 Spring Data REST 构建前端

工程 | Greg L. Turnquist | 2014 年 6 月 2 日 | ...

致 Spring 社区的朋友们!

Roy Clarkson 和我将在今年的 SpringOne 2014 大会上发表题为 Spring Data REST - 数据遇上超媒体 的演讲。我们将探讨如何快速弥合强大的 Spring Data 后端与启用超媒体的 RESTful 前端之间的差距。

演讲的一部分,我们将深入探讨一个 JavaScript 前端,它允许用户拍照并将其上传到网站。网站会回过头来从后端获取图片。这本身并不难,这得益于 Spring Data REST 提供的功能齐全的 RESTful API。

但是直接获取多张图片效率不高,而且容易导致网页浏览器冻结。感谢我们团队中的 CujoJS 同仁(Brian CavalierJohn Hann),我能够使用最近发布的 when.js 模块

本周 Spring 动态 - 2014 年 5 月 27 日

工程 | Josh Long | 2014 年 5 月 28 日 | ...

欢迎来到最新一期的《本周 Spring 动态》!在美国,我们度过了一个为期三天的周末,很不错。这是观看那些精彩技术讲座的好机会!如果你像我一样,技术讲座已经看完了,那么很高兴看到我们今天又有更多新的!

  1. Grails 项目负责人 Graeme Rocher 刚刚宣布 Grails 2.4 发布!新版本令人惊叹的原因有很多,其中重要的一点是,它的许多出色功能也很容易与 Spring Boot 一起使用。双赢!祝贺 Graeme 和团队。(也感谢你们,又一个令人惊叹的版本!)
  2. Spring Boot 1.1.0.M2 现已可用!新版本增强了对 Spring Data Solr、Spring Data Gemfire 和整个 Spring Data Dijkstra 发布序列的支持。新版本还提供了 GSP (Groovy Server Pages) 和 Velocity 作为模板选项,并升级了各种库,如 Spring Security 3.2.4 和 Spring Batch 3.0。这个发布序列进展很快,所以趁早加入吧!还有更多精彩内容,请查看发布说明。
  3. 六月的网络研讨会来了!Ramnivas Laddad 将于 6 月 3 日在 使用 Spring Cloud 抽象 PaaS 服务使其可移植 中推出 Spring Cloud,Michael Minella 将于 6 月 10 日带来 Spring Batch 3.0.0 的演讲,Glenn Renfro 将于 6 月 17 日带来 以 Spring Boot 风格实现 Spring Integration 的演讲。
  4. 这篇博客介绍了 Hibernate 内置 JDBC 日志的一些局限性,然后介绍了 log4jdbc 在一个简单的 Spring / Hibernate 应用中的用法。
  5. 我们的朋友 Eugen Paraschiv 编写了一篇非常不错的 Spring Data JPA 介绍
  6. Vaadin 团队的 Matti Tahvonen 撰写了这篇精彩的介绍,关于如何使用 Spring Data Neo4j、Spring Boot,以及当然还有 Petter Holmström 和我共同创建的Vaadin4Spring 库。公平地说,它之所以可用,全靠 Petter :) 事实上,它非常易用,以至于 Matti 能够非常迅速地做出一些精美(或者说是 Bootiful)的东西。看看吧!该应用程序对存储在 Neo4j 中的数据进行建模(并可视化!),所以它不仅仅是普通的 CRUD 应用,这非常酷!
  7. CloudFoundry 忍者 James Bayer 宣布了新的 Pivotal CF 1.2,它现在支持 VMWare 的混合云服务、初步审计和自动伸缩、新的数据服务(Redis、MongoDB、Neo4j、RiakCS 和 ElasticSearch 都可用!),以及更多
  8. 勾起了你的好奇心?想了解更多关于 CloudFoundry(来自 Pivotal 的开源 PaaS)的信息吗?查看这个史诗级的视频,了解如何在 SpringOne2GX 2013 上使用 BOSH 搭建自己的 PaaS。并在 SpringOne2GX 回放中听听其他团队是如何做到的 - 使用 CloudFoundry 解放自己:私有云体验
  9. 数据忍者 Thomas Risberg 刚刚宣布了新的Spring for Apache Hadoop RC4 版本,太棒了!新版本改进了 Spring YARN 集成。当然,YARN 是一个分布式通用运行时,Hadoop 2.0 非常特定的 map/reduce 支持现在就运行在其之上。但是,你也可以使用 YARN 来分发你自己的作业。例如,你可以使用 YARN 来拆分 Spring Batch 工作负载。在新的示例中,Janne Valkealahti 展示了一个简单的基于 Spring Boot 的 Spring YARN 组件。现在这东西简直令人惊叹的简洁!
  10. 想了解更多关于 Spring YARN 支持背后的疯狂(数据)科学家 Janne Valkealahti 吗?看看这篇《Pivotal 人物》简介吧
  11. Spring Data 负责人 Oliver Gierke 很好地介绍了 Spring Data Dijkstra 中的新亮点,这是新的 Spring Data 伞式发布版本。该版本包括对 Java 8 Optional 的支持、异步仓库方法调用等等。
  12. Spring Security 负责人 Rob Winch 发布了两个小型的错误修复版本:Spring LDAP 2.0.2Spring Security 3.2.4
  13. Spring Web Services 负责人 Arjen Poutsma 刚刚宣布了 Spring Web Services 2.2.0,该版本现在提供了 Java 配置 API 以及更多功能。
  14. 让我提醒大家一句:Java 配置无处不在!Spring framework、Boot、Data、Security、MVC、Integration、Batch、Social 等等,都提供了与 XML 一样丰富的 Java 配置集成。对于 Boot 来说,Java 配置是唯一开箱即用的选项,当然如果你愿意,也可以使用 XML。只是...不太推荐。
  15. Spring Security 负责人写了一篇博客,关于 使用 Spring Security Test 处理 Web 安全
  16. 想自己编写 Spring Boot starter 吗?看看 Spring 忍者 Stephane Nicoll 的这个示例,关于如何为 Spring Boot 提供 HornetQ starter
  17. 经过漫长的等待,Spring Social Google 1.0.0.GA 已发布!祝贺 Gabriel,为你为实现这一目标所付出的所有努力。我也喜欢那个易于使用的示例。
  18. Arnaud Giuliani 撰写了一篇非常酷的关于 在 Spring Boot 中使用 GWT 的文章。做得好,Arnaud!
  19. Netflix 工程师 Tomas Lin 发推分享了一个便捷的 用于 REST API 的 Spring MVC 异常处理器 链接。这是解决问题的一种(不错的)方式。作为替代方案,我建议你看看 [使用 Spring HATEOAS 的 VndError(s) 支持]a)。

在 Spring Boot 中使用创新的 Groovy 模板引擎

工程 | Cédric Champeau | 2014 年 5 月 28 日 | ...

随着 Spring Boot 1.1.0.M2 的发布,它带来了对 Groovy 2.3 提供的新模板引擎的支持。在这篇文章中,我们将描述使用这种引擎的好处,当然还有如何在 Boot 中使用它。

这篇博文中的所有源代码都可以在 GitHub 上找到,随时克隆仓库并试用吧

git clone https://github.com/melix/springboot-groovytemplates.git
cd springboot-groovytemplates
./gradlew run

然后在浏览器中打开 http://localhost:8080

这个应用程序完全是用 Groovy 编写的,并且还使用了 GORM for Boot,但当然…

Spring Boot 1.1.0.M2 现已可用

工程 | Dave Syer | 2014 年 5 月 27 日 | ...

Spring Boot 1.1.0.M2 现已在 Spring 仓库中可用。有很多新特性和大量新的文档

  • Groovy TemplateVelocity 对 MVC 和离线渲染的支持。

  • HealthIndicator 接口和现有实现发生了重大变化,例如所有数据库后端(如 Mongo 等)都有一个默认的 HealthIndicator,而 Actuator 将它们全部汇总成一个单一的读数。

  • 支持 Spring Data Solr 和 Spring Data Gemfire,并升级到 Spring Data Dijkstra 发布序列

  • 通过方便的方式支持多个 DataSource

DataSourceBuilder 抽象,加上 JPA 的类似功能

Spring Security Test 预览:Web 安全

工程 | Rob Winch | 2014 年 5 月 23 日 | ...

[callout title=更新于 2015 年 3 月 31 日]此博客已过时且不再维护。请参考参考文档的测试部分获取最新文档。[/callout]

在我上一篇博客中,我们展示了新的 Spring Security 测试支持如何简化基于方法的安全性测试。在这篇博客中,我们将探讨如何将测试支持与 Spring MVC Test 一起使用。

设置 MockMvc 和 Spring Security

为了在 Spring MVC Test 中使用 Spring Security,需要将 Spring Security 的 FilterChainProxy 添加为一个 Filter。例如

@RunWith(SpringJUnit…

订阅 Spring 新闻通讯

通过 Spring 新闻通讯保持联系

订阅

领先一步

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

了解更多

获取支持

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

了解更多

即将举办的活动

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

查看全部