Spring 本周回顾 - 2013 年 9 月 10 日 - SpringOne2GX 2013 特别版

工程 | Josh Long | 2013 年 9 月 10 日 | ...

欢迎阅读 Spring 本周回顾SpringOne2GX 2013 特别版!

我们现在正在加利福尼亚州圣克拉拉举行的 SpringOne2GX 2013 大会的 第二天!昨天的 keynote(主题演讲)看到了很多令人兴奋的新公告和介绍,我将在这里讨论其中一些,然后在本周的剩余时间里进行后续报道。

当然,这是对 Spring 社区和(万岁!!)SpringOne2GX 2013 中所有闪光点的一个精简回顾!毫不夸张地说,这是迄今为止最激动人心的 SpringOne2GX 大会。

Some of the amazing Spring project leads at SpringOne2GX 2012

我最喜欢 SpringOne2GX 的一点是它让与会者有机会接触那些幕后的大脑。今晚的主题演讲晚宴后,几位项目负责人逗留了几分钟,为我拍了这张即兴照片。Spring 核心负责人 Juergen Hoeller 位于前排中心,穿着蓝色衬衫。顺便说一句,Juergen 实际上不发推特(这个账户只是一个占位符!),这使得在 SpringOne 与他聊天的机会变得更加令人惊叹!从 Juergen 开始逆时针方向,接下来是 Spring Security 负责人 Rob WinchSpring MobileSpring Android

Spring 本周回顾 - 2013 年 9 月 3 日

工程 | Josh Long | 2013 年 9 月 3 日 | ...

欢迎阅读 Spring 本周回顾SpringOne 大会即将到来!本周末将以 Cloud Foundry Platform 活动拉开帷幕,并持续到下周四。就我个人而言,我对今年的大会非常兴奋(也有点紧张!)。它将会非常盛大。昨天在美国可能是个节日(希望大家都度过了一个美好的假期!),但我们 Spring 团队的大多数人都在为 SpringOne2GX 快速而紧张地工作!

我的 SpringOne2GX 2013 之路 SpringOne2GX 2013 的议程看起来太棒了!我关注很多不同的领域,比如开放 Web(基于 REST 的架构)、大数据、云和安全,而在 SpringOne 大会上,我没有理由不能充分了解每个主题!以下是在大会上非常想听的一些演讲。

  • 使用 Spring 处理大数据复杂性,由 Mark Fisher 和 Mark Pollack 主讲。这个还需要介绍吗?Spring XD 负责人 Mark Pollack(Spring 核心贡献者、Spring AMQP 联合创始人、Spring.NET 创始人、Spring Data 和 Spring Data for Hadoop 负责人)和 Mark Fisher(Spring 核心贡献者、Spring Integration 创始人、Spring AMQP 联合创始人)将介绍 Spring XD,这是当今构建以大数据为中心的应用的最强大方式。
  • 构建你自己的私有 Cloud Foundry,由杰出的 Matt Stine 主讲。Matt 将介绍如何使用 BOSH 设置自己的本地 Cloud Foundry 实例。Matt 是一位很棒的演讲者,一位出色的技术专家,我迫不及待地想听他的演讲。
  • 分布式规则引擎和 CEP,由 John Davies 主讲。John 是 C24 的 CEO,他有很多令人难以置信的企业集成实战经验。他也是一位史诗级的演讲者。
  • RabbitMQ 是新的王者,由 Jan Machacek 和 RabbitMQ 开发者布道师 Alvaro Videla 主讲。Jan 是一位资深的 Spring 大师和分布式系统专家,Alvaro 是 Pivotal 的 RabbitMQ 开发者布道师(就像我是 Pivotal 的 Spring 开发者布道师一样……)。他们都非常出色,我预计这将是一场精彩的演讲。
  • 你的数据,你的搜索,Elasticsearch ,由 Costin Leau 主讲。Costin 参与了许多工作,包括 Spring 核心中最初的 Spring Cache 集成、Spring Data GemFire、Spring Data 本身、多年前 Spring DM server 中的 OSGi 支持,等等。他现在正在研究 Elasticsearch,我迫不及待地想听听他的观点。Costin 非常擅长将复杂的主题提炼出其精髓。

今年我有四个演讲(与出色的合作讲师一起!)。Andy Piper 和我将介绍 构建由 Spring 和 Cloud Foundry 驱动的应用Roy Clarkson 和我将介绍如何使用 Spring 和 REST 连接应用Kevin Nilson 和我将介绍如何使用 Spring 和 profiles 构建可适应的应用,以及 Phil Webb 和我将介绍 如何提升你的 Java 配置肌肉记忆

我期待在 SpringOne2GX 与大家见面!如果你在附近,可以在 Twitter 上联系我 (@starbuxman),我们一起聊聊 Spring

现在,进入本周回顾!希望这些内容能满足你在 SpringOne2GX 之前的胃口!:)

  1. Spring Scala 负责人 Arjen Poutsma 刚刚发布了 Spring Scala 1.0.0.RC1。新版本是发布周期中的第一个候选版本,目标是发布 1.0 正式版,所以一定要看看!
  2. 9 月 5 日,加入我们来自 Pivotal Labs 的朋友,David Frank 将向您展示如何 使用 Pivotal Tracker 实现敏捷开发
  3. 9 月 26 日,加入 Phil Webb,他将深入探讨 Spring 中最新、最热门的项目之一 - Spring Boot
  4. Jan Stenberg 写了一篇不错的文章,关于 Russ Miles 的 Life Preserver 模式在 Spring 中的应用。这篇文章的代码不多,但你可以查看 原始演示文稿以获取详细信息
  5. JavaBeat 博客有一篇非常详细的文章,介绍了如何 使用 Spring 的 @Transactional 注解
  6. Eugen Dvorkin 写了一篇不错的文章,介绍了如何将 Storm、Groovy、CEP 引擎和 Spring 结合使用。这真的很酷,尽管代码不多。不过,我也想知道是否可以使用 Spring XD 以更简单的方式实现这一点。
  7. Spring Web 忍者 Arjen Poutsma,也是最初的 RestTemplate 的作者,一直在努力开发一个将包含在 Spring 4 中的 异步 RestTemplate。看起来太棒了
  8. Luis Miguel Gracia Luis 写了一篇不错的文章,介绍了 自从 Spring 团队加入 Pivotal 以来 为 Spring 开发者带来的一些很棒的新特性,包括 Spring XD、Spring Boot、Spring Loaded 和 Spring REST Shell。这篇文章是西班牙语的,但 Google 翻译处理得相当好。
  9. Rajkumar Singh 写了一篇不错的文章 - Apache Hadoop 和 Spring Data:配置 mapreduce 作业 - 介绍了 Spring for Apache Hadoop。很棒的文章!
  10. Bluesoft 博客发表了系列文章的第二篇,介绍如何 使用 Angular.js 和 Spring MVC 构建登录对话框。这很有趣…
  11. Technicalpractical 博客有一篇文章,使用 Spring 显示模型为 JSON 或 XML。这篇文章很好地介绍了如何使用 Spring MVC 2.5 时代的 API 构建 JSON 视图,但我希望您能查阅一些关于如何使用 Spring 构建以 JSON 为中心的 REST 服务的更近期的介绍这里有一个(更)简单的例子

Spring 本周回顾 - 2013 年 8 月 27 日

工程 | Josh Long | 2013 年 8 月 27 日 | ...

欢迎回到新一期的 Spring 本周回顾。像往常一样,我们有很多内容要介绍,所以开始吧!Spring Security 和负责人 Rob Winch 在本周的回顾中占据了很大篇幅!向 Rob Winch 致敬

  1. Spring Security 负责人 Rob Winch 写了一篇文章,介绍了 Spring Security 中一些新的、智能且便捷的针对跨站请求伪造(或称 CSRF的保护措施。
  2. Rob 还写了另一篇史诗般的博客文章,演示了 Spring Security 对安全头的新支持
  3. Rob 还很慷慨地将这些新功能集成到Spring REST 技术栈代码库中,您可以在一个全栈、集成的 Spring REST 服务的上下文中看到它们的实际应用。要查看这些更改以及 Spring Security 和 Spring Security OAuth,所有这些都使用 Java Configuration 集成,请查看 oauth 模块
  4. Reactor 负责人 Jonathan Brisbin 宣布 Reactor 1.0.0.M2 现已发布。新版本看起来非常令人兴奋!Jon 的文章中写道:“这个第二个里程碑版本包含了一些 bug 修复和一些非常激动人心的新功能。Reactor 现在包含一个 Processor 抽象,它是一个基于 LMAX Disruptor RingBuffer 的高度优化的任务处理器…… 在 MacBook Pro 上进行的非正式基准测试显示,Processor 每秒可以通过管道处理大约 1 亿个事件。是的,你没看错:每秒 1 亿!”
  5. Hyperic、Cloud Foundry、Spring 和 Spring Data 忍者 Jennifer Hickey 宣布了 Spring Data Redis 项目的最新版本。新版本包括对 key 过期命令的毫秒级精度支持、连接失败时消息监听器的重新订阅、以及 RedisMapRedisPropertiesConcurrentMap 契约的完整实现。
  6. Spring Batch 负责人 Michael Minella 宣布 Spring Batch 3.0M1 已发布!此版本标志着向实现 JSR-352 Java Batch 规范迈出的第一步,以及其他一些内容。
  7. 立即注册参加 8 月 29 日的网络研讨会:使用模块化模式和 Spring 驯服耦合和内聚怪兽,Param Rengaiah 主讲。
  8. 9 月 5 日,加入我们来自 Pivotal Labs 的朋友,David Frank 将向您展示如何 使用 Pivotal Tracker 实现敏捷开发
  9. Spring Security 负责人 Rob Winch 发推 说,“#Gradle 让使用 #SpringFramework 3 构建 #SpringSecurity 并同时使用 #Spring 3/4 运行测试变得非常简单”,并链接到 这个史诗般的例子。这严格来说不是一篇与 Spring 直接相关的文章,但对于那些也使用 Gradle 的人来说,这是一个非常优雅的 Gradle 构建的不错例子,就像我们在 SpringSource 所做的那样。
  10. Spring Security 负责人 Rob Winch(天哪,这家伙真是无处不在!)也宣布了 Spring Security LDAP 的最新版本
  11. 我们的朋友 Xavier Padró 又回来了,这次他写了一篇文章,介绍了如何在消息接收时使用 Spring 的 JmsTemplate 进行资源本地 JMS 事务处理
  12. Patrick Grimard 写了一篇不错的文章,介绍了如何将 Yeoman Backbone 与 Spring Web 应用集成,以及如何使用 Tuckey 的 UrlRewriteFilter 绕过他遇到的一些资源解析问题。我喜欢 UrlRewriteFilter。尽管如此,我认为(但未测试)Patrick 可以使用 Spring MVC 的资源处理支持来实现同样的事情,正如他在代码示例中覆盖 public void addResourceHandlers(ResourceHandlerRegistry registry) 配置方法时开始做的那样。也许我弄错了,但无论如何,这是一篇很酷的文章!
  13. SpringSource 发布了第三季度的新培训计划,请查看以下培训日程:Core SpringEnterprise Integration with SpringSpring Web

Reactor 1.0.0.M2 – JVM 上响应式快速数据应用的基础

工程 | Jon Brisbin | 2013 年 8 月 27 日 | ...

我很高兴宣布 Reactor 在向 1.0 版本迈进的过程中发布的第二个里程碑版本!Reactor 1.0.0.M2 的 Maven artifact 已在常规里程碑仓库中提供。

什么是 Reactor?

Reactor 是一个基础框架,用于在 JVM 上构建高吞吐量、异步、响应式应用。它提供了用于事件路由的 Selector 风格主题匹配、动态消费者分配、一个超快速任务处理器,以及用于异步处理数据和协调异步任务的响应式 Stream 和 Promise API。它提供了全面的 Groovy 语言支持,通过提供语言扩展使得用 Groovy 编写 Reactor 应用变得非常“Groovy”!它还提供了易于使用的 Spring 支持,可以自动将带注解的 POJO 连接到 Reactor。

此版本包含什么?

这个第二个里程碑版本包含了一些 bug 修复和一些非常激动人心的新功能。Reactor 现在包含一个 Processor 抽象,它是一个基于 LMAX Disruptor RingBuffer 的高度优化的任务处理器。它使用 Reactor 的通用抽象来配置 RingBuffer,并允许您使用 Reactor 的通用 API,而不是 Disruptor 特定的 API。它还在设计上跳过了 Reactor 提供的 Selector 匹配和动态消费者分配,以便榨取它能提供的最后一滴吞吐量。在 MacBook Pro 上进行的非正式基准测试显示,Processor 每秒可以通过管道处理大约 1 亿个事件。是的,你没看错:每秒 100 百万

1.0.0.M2 版本还在 Reactor API 中包含了一个虽小但重要的新功能,它可以优化 Reactor 中的事件发布,从而将吞吐量提高约 30-50%。由于它会从 Reactor 中准备一个优化的消费者列表,所以并非适用于所有情况,但对于每秒额外增加 1000 万个事件的吞吐量来说,这是一个很棒的新功能。

优化发布

Reactor 的强大之处之一在于 Selector 匹配主题(类主题)的发布/订阅机制。它允许您使用主题、匿名对象、可分配类型层次结构、URI 路径匹配或正则表达式(如果您实现自己的领域特定选择器,也可以使用任何其他类型的 Selector 匹配)轻松地为事件分配处理程序。但许多应用可以在启动时分配其处理程序,这意味着通往这些消费者的路径可以针对高效的事件发布进行优化。新的 Reactor 方法 prepare(Object) 允许您预先选择某个键的消费者。它本身返回一个消费者,事件发布者可以使用它来有效地通知新事件。

// Create Environment in which Reactors operate
Environment env = new Environment();
Reactor reactor = Reactors.reactor().env(env).get();

reactor.on($("say.hello"), new Consumer<Event<String>>() {
	public void accept(Event<String> ev) {
		System.out.println("Hello " + ev.getData() + "!");
	}
});

Consumer<Event<String>> sayHello = reactor.prepare("say.hello");
for(String name : listOfNames) {
	sayHello.accept(name);
}

RingBuffer 任务处理器

Reactor 1.0.0.M2 版本包含了 Processor 抽象。它是一个由 LMAX Disruptor RingBuffer 支持的简单任务处理器,旨在将其无缝集成到 Reactor 中使用的响应式 API 中,因此它使用 Supplier 和 Consumer 等通用抽象。一个完全配置好的 Processor 可以通过一个表达式创建,并且使用 Java 8 lambda 会更加简洁

Processor<Message> proc = new ProcessorSpec<Message>()
	.dataSupplier({ return new Message(); })
	.consume({ msg -> // handle the updated Message object…

Spring Batch 3.0 里程碑 1 已发布

工程 | Michael Minella | 2013 年 8 月 23 日 | ...

今天我们很高兴地宣布 Spring Batch 3.0 的第一个里程碑版本 (下载)。通过此版本,我们迈出了实现 JSR-352 Java Batch 规范的第一步。Spring Batch 是一个轻量级、全面的框架,用于开发健壮的批处理应用。

JSR-352

JSR-352 被认为是 Java 平台的批处理标准化规范。作为标准化的一部分,该 JSR 包含了三个主要部分:

  • 基于 XML 的 DSL,用于配置作业
  • 创建作业相关组件(读/写等)的 API
  • 支持类和概念的 API 及行为描述

Spring 在我们对该规范的贡献上投入了大量时间和资源。我们通过 JCP 与其他行业专家合作,JSR-352 验证了 Spring Batch 在过去五年中在无数生产环境中实施并经过实战检验的批处理模式是构建关键任务批处理应用的最佳方法。

里程碑 1 中的特性

此版本是 Spring Batch 达到 JSR 合规性的第一步。在 JSR-352 TCK 的 155 个 SE 测试中,此版本通过了 70 个。此版本中实现的具体特性包括:

  • JobOperator 实现
  • 通过 XML 进行基本作业配置
  • 支持 batch.xml

JobOperator

JSR 定义了一个 JobOperator 接口,它是 Spring Batch 的 JobOperatorJobExplorer 接口的组合。对于规范来说,这个接口是批处理应用与作业本身(启动/停止/重启等)以及作业仓库(例如提供查询之前运行的 JobExecution 的能力)交互的入口点。因此,JobOperator 需要提供开箱即用的服务级别。JsrJobOperator(Spring 对 javax.batch.operations.JobOperator 的实现)会引导一个类似于 @EnableBatchProcessing 的 Spring 上下文。开箱即用地,它包含了 JobRepositoryJobLauncherJobOperatorJobExplorerDataSourceTransactionManagerParametersConverterJobRegistryPlaceholderPropertiesConfigurer。所有这些都可以通过在启动或重启作业时提供的上下文来覆盖默认 bean,从而在运行时进行覆盖。默认情况下,JobRepository 在内存配置中使用了 HSQLDB。

根据 JSR,启动作业实际上非常简单

JobOperator jobOperator = BatchRuntime.getJobOperator();
JobExecution jobExecution = jobOperator.start("jsrJob", new Properties());

上述两行代码将引导先前定义的基本上下文(这只发生一次),然后从 /META-INF 加载 batch.xml 文件(如果存在)以及 /META-INF/batch-jobs 下 jsrJob.xml 中定义的上下文。jsrJob.xml 可以是两种配置之一。它可以是标准的 Spring 上下文配置,将任何批处理 artifacts 定义为 Spring Bean 并通过 JSR-352 DSL 定义作业,或者它可以是仅由 JSR 定义的作业定义。根据 JSR-352,jsrJob.xml 上下文中只能定义一个作业。JsrJobOperator 的其余功能实际上是对现有 JobOperatorJobExplorer 功能的直接包装(因此它们被包含在基本应用上下文中)。

通过 XML 进行基本作业配置

JSR-352 定义了一个基于 XML 的 DSL,任何 Spring Batch 用户都会立刻感到熟悉。它由作业、步骤、读取器和写入器组成,Spring Batch 命名空间中的大多数概念都在 JSR-352 中有所体现。作为此版本的一部分,开发人员将能够使用 JSR 定义的 DSL 配置基本作业。基本作业包括以下内容:

  • <job>
  • <step>
  • <chunk>
  • <batchlet>
  • <reader>
  • <processor>
  • <writer>
  • <decision>
  • <listeners>/<listener>
  • <properties>/<property>
  • <skippable-exception-classes> 及相关子元素
  • <retryable-exception-classes> 及相关子元素
  • <checkpoint-algorithm>
  • <next>/<end>//<fail>

根据 JSR,通过 Spring Batch DSL 看起来像这样的批处理作业


<job id="data" xmlns="http://www.springframework.org/schema/batch">
    <step id="import" next="report">
        <tasklet>
            <chunk commit-interval="100"
                   reader="itemReader"
                   writer="dataWriter" />
        </tasklet>
    </step>
    <step id="report…

Spring Security 3.2.0.RC1 要点:安全头

工程 | Rob Winch | 2013 年 8 月 23 日 | ...

更新

注意 本博客文章不再维护。有关 Spring Security 头的最新信息,请参阅头文档

原文

这是我关于 Spring Security 3.2.0.RC1 系列两部分文章中的最后一篇。我的上一篇文章讨论了 Spring Security 的 CSRF 保护。在本文中,我们将讨论如何使用 Spring Security 添加各种响应头来帮助保护您的应用。

安全头

Spring Security 3.2.0.RC1 中的许多新功能是通过向响应添加头来实现的。这些功能的基础来自于 Marten Deinum 的辛勤工作。如果这个名字听起来很熟悉,那可能是因为他在 Spring 论坛上的一万多篇帖子中的一篇曾经帮助过你。

如果您使用 XML 配置,您可以使用 Spring Security 的 元素且不带子元素来向响应添加所有默认头

<http ...>
    ...
    <headers />
</http>

如果您使用 Spring Security 的 Java 配置,所有默认安全头都会默认添加。可以使用下面的 Java 配置禁用它们

```xml @EnableWebSecurity @Configuration public class WebSecurityConfig extends WebSecurityConfigurerAdapter {

@Override protected void configure(HttpSecurity http) throws Exception { http .headers().disable() ...; } }


<p>The remainder of this post will discuss each of the default headers in more detail:</p>
<ul>
<li><a href="#cache-control">Cache Control</a></li>
<li><a href="#content-type-options">Content Type Options</a></li>
<li><a href="#hsts">HTTP Strict Transport Security</a…

Spring Security 3.2.0.RC1 要点:CSRF 保护

工程 | Rob Winch | 2013 年 8 月 21 日 | ...

[callout title=更新]

本博客文章不再维护。有关 Spring Security 和 CSRF 保护的最新信息,请参阅CSRF 文档

[/callout]

周一我宣布了 Spring Security 3.2.0.RC1 的发布。这是两部分博客系列的第一篇,将介绍 Spring Security 3.2.0.RC1 中的新功能。

在第一部分中,我将介绍 Spring Security 的 CSRF 支持。在下一篇文章中,我将介绍已添加的各种安全头。

CSRF 攻击

Spring Security 添加了针对跨站请求伪造 (CSRF) 攻击的保护。很好,但是 CSRF 攻击是什么?Spring Security 如何保护我免受其害?让我们看一个具体的例子来更好地理解……

Spring Security 3.2.0.RC1 发布 (2013 年 8 月)

工程 | Rob Winch | 2013 年 8 月 19 日 | ...

Spring Security 3.2.0.RC1 现已可在 SpringSource 仓库 http://repo.springsource.org 获取。有关如何通过 Maven 解析这些 artifact 的快速教程,请参见此处

此版本包含大量更新和修复。要点包括:

  • 完善 Spring Security Java Configuration
  • 当启用多种认证机制(例如 HTTP Basic 和 Form 登录)时,使用内容协商来确定如何提示用户进行认证
  • AbstractSecurityWebApplicationInitializer 允许直接注册 Java Configuration
  • 修复了一些 bug
  • CSRF 保护以及与 Spring Web MVC jsp 标签的自动集成
  • 自动缓存控制支持
  • 防御 Clickjacking 攻击
  • 支持 HTTP Strict Transport Security 以减少中间人攻击
  • 示例包含 pom.xml,因此可以作为 Maven 项目导入
  • 用于内容协商请求匹配的 MediaTypeRequestMatcher
  • 超过十个 Java configuration 示例已集成到 samples 目录中
  • 三篇新指南,通过示例引导用户并提供有关如何执行特定任务的详细说明。更多此类指南将在后续版本中提供
  • 有关此版本的更多详细信息,请参阅Spring Security 3.2.0.RC1 预览

    SpringOne2GX

    要了解 Spring Security 3.2 中的所有新功能,请参加我于 2013 年 9 月 9 日至 12 日在 SpringOne2GX 上的演讲:Spring Security 3.2 入门。如果您还没有购票,请立即行动,以免为时过晚!

    变更日志 | 下载 | 参考手册 | 指南 | 常见问题

    Spring 本周回顾 - 2013 年 8 月 13 日

    工程 | Josh Long | 2013 年 8 月 14 日 | ...

    欢迎回到新一期的 Spring 本周回顾。像往常一样,我们有很多内容要介绍,所以开始吧!

    1. How to do in Java 博客有一篇不错的文章,介绍了如何使用 Spring Security 3 配置 Siteminder 预认证
    2. 又有一个很棒的 SpringOne2GX 2013 会议添加到 SpringOne2GX 2013 的日程中了,即 使用 Spring 进行实时分析。本次演讲介绍了 Project Reactor 的一个用例,它是一个JVM 上异步应用的基础
    3. Andy Clement 刚刚发布了 AspectJ 的新版本 1.8.0.M1,该版本将在 Spring 4 中使用并支持 Java 8。它已通过 SpringSource Maven 仓库作为 1.8.0.M1 提供。它也包含在今天发布的 AJDT for Eclipse 4.3 中。
    4. GoPivotal 博客对 Apache Tomcat 8 进行了深入探讨。绝对值得一看!
    5. Eberhard Wolff 制作了一个非常好的视频,介绍了如何使用最近发布的 Spring Boot。干得好,Eberhard!(像往常一样)
    6. 我们的朋友 Petri Kainulainen 写了一篇非常酷的博文,关于单元测试 Spring MVC REST API
    7. 来自 Being Java Guys 博客的一篇内容丰富的博文介绍了如何使用 Spring MVC 进行文件上传。干得好!
    8. 这篇来自 Matthew's Thoughts! 博客的博文解释了一个简单的 Spring REST 入门项目,演示了如何使用常规的 Spring Security 为基于 Spring MVC 的 REST 服务添加基于用户名和密码的身份验证
    9. 来自 Code with Zen Mind 博客的系列文章非常精彩,介绍了如何构建和测试 Spring MVC 应用程序。第一部分介绍了如何设置一个测试驱动的项目,并编写第一个测试。第二部分演示了如何进行重构以及如何引入新的测试用例。第三部分演示了如何利用前两部分建立的测试,成功应对重大的重构(被测试服务的实现发生了变化)。非常有启发!
    10. 来自 public static void blog() 博客的这篇博文介绍了 Spring 的日志分层是如何工作的。这篇博文是斯洛伐克语(Google Translate 坚称如此),不过翻译效果相当不错,而且老实说,图表本身就很有解释性!很不错。看看吧,如果可能的话,读一读。
    11. Cloud Foundry Eclipse 集成工具的 1.5 版本现已发布,支持将应用程序推送到 Pivotal Cloud Foundry 组织和空间,使用新的 Cloud Foundry 服务,并通过 Spring Tool Suite 逐步更新应用程序。新的集成工具可以从 STS 控制面板安装,也可以使用 Help > Install New Software 菜单中的更新站点安装。

    本周 Spring 动态 - 2013 年 8 月 6 日

    工程 | Josh Long | 2013 年 8 月 7 日 | ...

    欢迎阅读新一期《本周 Spring 动态》。8 月 1 日,我庆祝了我在 SpringSource 的第三年。我继续享受着人生中最棒的旅程,其中很大一部分原因在于与你们的互动,你们是有史以来最棒的社区。谢谢大家。

    您预订了 SpringOne2GX 的门票了吗?今年的大会非常特别。作为 Spring 开发者倡导者,我在世界各地参加很多会议。问问任何有活力的开发者,他们都会确认大数据(和 Hadoop)、响应式 Web 应用、REST、移动应用开发以及云计算是当下热门话题。Pivotal 和 Spring 支持当今的开发者,而 SpringOne2GX 的议程在我看来完美融合了为当今开发者量身定制的内容。请查看议程。我们最近刚刚增加了关于大数据和使用 OAuth 保障 REST 服务安全的讲座。这将是我们在 Pivotal 旗下的首次大会,也是唯一一个您可以与在 SpringSource 和社区中开发您所关注技术的人员交流的地方。如您所知,我们刚刚宣布了 Cloud Foundry 大会 Platform,持有 SpringOne2GX 全票的参会者可以免费注册参加该大会——该大会与 SpringOne2GX 在同一地点举办,仅提前两天!如果我每年只能参加一个会议,那一定是这个。赶紧行动吧,早鸟票将于本周五截止!

    1. 重大新闻:Phil Webb 和 David Syer 博士刚刚宣布了 Spring Boot,它简化了 Spring 应用程序的开发。Spring Boot 在 Spring 之上提供了一个有主见的层,因此只需极少的麻烦就能轻松启动并运行一个应用程序。说真的,这玩意儿会让你大开眼界。在阅读这篇简短而精彩的博文之前,不要再往下看了!试试看,并且一定要让我们知道您的体验
    2. Spring Framework 3.2.4 维护版本现已发布,包含针对 SpringOXM 的一项重要安全修复。
    3. Spring Data Redis 项目负责人兼忍者 Jennifer Hickey 刚刚宣布了两个 Spring Data 版本的可用性。Spring Data Redis 1.1 M2,包含很多新功能,包括增强的数据管道、Redis 2.6 脚本等等。Spring Data Redis 1.0.6 也已发布,包含错误修复和小改进。
    4. Spring Mobile 和 Android 项目负责人 Roy Clarkson 刚刚宣布了 Spring Mobile 1.1.0.RC1 的发布,该版本改进了 Spring Mobile 中的设备检测和视图解析。Roy 还宣布了 Spring Mobile 稳定系列的新版本 1.0.2,该版本也包含类似的改进,部分已移植回稳定分支。
    5. Spring Data 忍者 Oliver Gierke 刚刚宣布 Spring Data Babbage 的最终发布候选版本现已可用。该版本以 Charles Babbage 命名。该版本支持 MongoDB Aggregation Framework 并改进了多态查询的执行,支持在 JPA 中使用 SpEL 表达式定义手动查询,改进了使用 @IdClass 的实体处理,为 Neo4j 仓库提供了 countBy(..) 方法,以及更多功能。
    6. 网络研讨会 Functional Programming without LambaSpring with Cucumber for Automation 的回放现已在线可用。务必查看!
    7. 几周前,我们的朋友 Johnathan Mark Smith 制作了一个视频,介绍了如何使用 Spring Data MongoDB 和 Java 配置。看看吧!而且,如果您制作了很棒的视频,随时分享给我。我也很乐意将它们发布在《本周 Spring 动态》上!
    8. 当我看到 Reactor 项目负责人 Jonathan Brisbin 的一则推文时,我笑了,他在推文中说:“处理器吞吐量:笔记本电脑上每秒 9000 万次操作。1 个线程 + @LMAX Disruptor。不是 #fastdata,是 #uberfastdata”,然后链接到代码中的测试用例。毋庸置疑,Reactor 将掀起巨大的波澜!(当然,我们会在 SpringOne2GX 上提供更多关于 Reactor 的内容。)
    9. Tomcat 的最新版本 Apache Tomcat 8.0.0-RC1 (alpha) 现已可用!有很多新功能。值得注意的是,Tomcat 8 将是第一个支持 JSR 356(WebSockets)的 Tomcat。这与 Spring 4 最近宣布的 WebSocket 支持完美互补。
    10. Mohan Srihari Kantipudi 撰写了一篇关于 Spring 基本 REST 能力的优秀博文。
    11. 我喜欢 Gregor Riegler 关于 Spring Loaded 的博文,它是开源界最不为人知的秘密。Spring Loaded 是一个 Java 代理,允许您在工作时重新加载代码(无需重新部署!)。这是一篇非常酷的博文,我希望您也会考虑使用 Spring Loaded。

    获取 Spring 时事通讯

    订阅 Spring 时事通讯,保持联系

    订阅