本周 Spring - 2012 年 11 月 20 日

工程 | Josh Long | 2012 年 11 月 20 日 | ...

哇!伙计们,你们相信我们又要迎来年底了吗?时间过得真快!在美国,这是感恩节这一周,在这个节日里,我们应该花点时间反思我们所感激的事情。我(我确信我代表团队发言)永远感谢你们,围绕着 Spring、RabbitMQ 和 Cloud Foundry 的这个精彩、充满活力和吸引人的社区,正是你们让每周整理这个综述变得如此愉快。

话不多说,让我们开始看看新闻吧

  1. Thomas Risberg 宣布 Cloud Foundry Maven plugin 1.0.0.M4 现已可用。
    </Li>
     <LI>Did you miss out at <A href="http://springone2gx.com/conference/washington/2012/10/home">SpringOneOne2GX 2012  in Washington D.C.</a>?  Don't fret. We'll release 2 sessions every week on <a href="http://www.springsource.org/SpringOne2012Recordings">springsource.org</a>. We've already released Day 1 and 2 Keynotes. Available now:  a talk from Rossen Stoyanchev on "What's New in Spring Mvc 3.2" and a talk from Roy Clarkson and Craig Walls on "Extending Spring Mvc With Spring Mobile and Javascript."
    	Awesome. 
    	
    	</li>
    <LI> Our friend Tobias Trelle is at it again! This week, he's   <A…

本周 Spring - 2012 年 11 月 13 日

工程 | Josh Long | 2012 年 11 月 14 日 | ...

欢迎回到新一期的《本周 Spring》!本周我首先回到了可爱的保加利亚索非亚,参加 Cloud Foundry Open Tour 活动,向满座的听众讲述如何在 Cloud Foundry 上构建 Spring 应用。现在,我在比利时安特卫普参加 Devoxx 大会,我将在会上介绍 Spring 3.2、Cloud Foundry 等的新特性。如果您也在这里,我邀请您来参观 SpringSource 展位,并聆听我和其他人关于 Spring 的一些讲座。

  1. 		Roy Clarkson has announced not one, but two releases of Spring  Mobile this week! 
    

    Spring Android 1.0.1 版本已发布。此版本包含一项更改,以支持 BlackBerry 10 移动设备。使用 LiteDeviceResolver 时,BlackBerry 10 移动设备现在被识别为移动设备。接着,他发布了
    1.1.0.M1 版本,此版本整合了 1.0.1 的支持,并在站点偏好处理和站点切换中增加了平板电脑支持,支持基于 Java 的容器配置,以及支持基于 Servlet 的配置。

  2. Thomas Risberg 宣布 支持 QueryDSL 和高级 Oracle 的 Spring Data JDBC 扩展 的正式发布版本已推出。
  3. 有很多有趣的...

Spring Framework 3.2 RC1:Spring MVC 测试框架

工程 | Rossen Stoyanchev | 2012 年 11 月 12 日 | ...

[callout title=Update Dec 19, 2012] Spring Framework 最终参考文档包含迁移指南以及关于 Spring MVC Test 的完整章节。[/callout]

上周,Juergen Hoeller 宣布发布了 Spring Framework 3.2 RC1,Sam Brannen 讨论了其 spring-test 模块中令人兴奋的新增功能,例如对 WebApplicationContext 的支持以及加载上下文层次结构的未来计划。今天,我将继续这个主题,描述另一个令人兴奋的 spring-test 新增功能。在 3.2 RC1 中,我们增加了对测试 Spring MVC 应用的一流支持,无论是……

Spring Framework 3.2 RC1:新的测试特性

工程 | Sam Brannen | 2012 年 11 月 7 日 | ...

正如 Juergen Hoeller 在宣布发布 Spring Framework 3.2 RC1 的文章中所述,Spring 团队在测试支持方面引入了一些令人兴奋的新特性。最重要的是,我们为测试 Web 应用增加了第一流的支持。[1]

      请注意:这是从我的 Swiftmind 公司博客上交叉发布的文章。

在这篇文章中,我们将首先回顾一下 Spring Framework 中的一些通用的新测试特性,然后详细介绍使用 WebApplicationContext 以及 requestsession 作用域 bean 进行测试的支持。最后,我们将探讨对 ApplicationContextInitializers 的支持,并简要讨论使用应用上下文层次结构进行测试的路线图。

Rossen Stoyanchev 稍后将跟进一篇详细文章,介绍新的 Spring MVC Test 框架,该框架为测试 Spring MVC 应用提供一流的支持。所以请务必保持关注,因为它建立在本篇文章后面讨论的基本 Web 测试支持之上。



一般新特性和更新


构建和依赖

spring-test 模块现在基于并支持 JUnit 4.10 和 TestNG 6.5.2 进行构建,并且 spring-test 现在依赖于 junit:junit-dep Maven Artifact,而不是 junit:junit,这意味着您完全控制对 Hamcrest 库(例如 hamcrest-corehamcrest-all 等)的依赖。

泛型工厂方法

泛型工厂方法是使用 Java 泛型实现工厂方法设计模式的方法。以下是一些泛型工厂方法的示例签名


public static <T> T mock(Class<T> clazz) { ... }

public static <T> T proxy(T obj) { ... }

在 Spring 配置中使用泛型工厂方法绝非仅限于测试,但 EasyMock.createMock(MyService.class)Mockito.mock(MyService.class) 等泛型工厂方法经常用于在测试应用上下文中为 Spring bean 创建动态 Mock。例如,在 Spring Framework 3.2 之前,以下配置可能无法将 OrderRepository 自动装配到 OrderService 中。原因是,根据 bean 在应用上下文中初始化的顺序,Spring 可能会将 orderRepository bean 的类型推断为 java.lang.Object,而不是 com.example.repository.OrderRepository


<beans>

  <!-- OrderService is autowired with OrderRepository -->
  <context:component-scan base-package="com.example.service"/>

  <bean id="orderRepository" class="org.easymock.EasyMock…

本周 Spring - 2012 年 11 月 6 日

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

欢迎回到新一期的《本周 Spring》!我们有很多内容要讲,所以让我们开始吧!

  1. 伙计们,你们错过了SpringOne2GX 2012 吗?我不骗你们——你们真的错过了!不过,别灰心!大会上我最喜欢的两个演讲——主题演讲现在可以在线观看了!两个都很棒,但如果你想了解下一代 Web 应用背后的趋势,以及一次精彩的(太棒了!)RabbitMQ 之旅,一定要看看第二天的 Keynote!
    	More sessions will be posted on that page, so check back often.</LI>
     <LI> Spring 3.2 is drawing ever nearer!   The H  has some 
    	<a href  ="http://www.h-online.com/open/news/item/Spring-Framework-3-2-nears-with-release-candidate-1744277.html">nice coverage of the new features  in the framework</a>.
     </LI>
     <LI> Chris Beams  has announced the latest maintenance release, <A href="http://www.springsource.org/node/3720">Spring 3.1.3 - the third in the 3.1 line, has been released</a>! 
    
  2. 伙计们,我非常激动地告诉你们,SpringOne 要来印度了!现在就注册吧!
  3. 您的 PaaS 支持您的工作负载吗?如果您正在使用 Cloud Foundry,那么很有可能它支持!
  4. Michael Isvy 写了一篇很不错的文章,关于 Spring MVC 和视图层
  5. Spring Framework TestContext 框架现在支持用于集成测试的 session/request 作用域 bean
  6. Spring Data SOLR 的第一个里程碑版本已发布!
  7. Jonathan Brisbin 宣布了 Spring REST Shell 1.2 版本。新版本具有 SSL、基本认证、dotrc 支持、更新的 Homebrew 安装公式、HATEOAS 和 Hypermedia 特性。
  8. 周四来观看 Costin Leau 的 介绍 Spring Data Hadoop 的网络研讨会
  9. RabbitMQ 开发者倡导者 Alvaro Videla 链接了一篇关于可视化 RabbitMQ 拓扑结构的精彩文章
  10. Spring Data Batch 和 Spring Security OAuth 大师以及 Cloud Foundry UAA 提交者 David Syer 博士撰写了一篇非常出色的文章,关于使用 Cloud Foundry UAA Agent 的 OAuth2 Endpoint。这与 Spring 几乎没有什么关系,但 Syer 博士的文章非常有教育意义,极大地帮助我理解了 Spring Security OAuth 解决的问题。

Spring Integration 的 Groovy DSL

工程 | David Turanski | 2012 年 11 月 6 日 | ...

Spring Integration 使用 Spring 编程模型实现 Enterprise Integration Patterrns,以在基于 Spring 的应用中实现消息传递。Spring Integration 还通过支持 jms、http、amqp、tcp、ftp(s)、smtp 等的声明式适配器提供与外部系统的集成。目前,消息流的配置主要通过 Spring XML 完成,Spring Integration 支持多个命名空间以使其尽可能简洁。今年早些时候,SpringSource 发布了 Spring Integration 的 Scala DSL。现在,我们很高兴宣布第一个里程碑版本……

Spring Framework 3.2 RC1 发布

工程 | Juergen Hoeller | 2012 年 11 月 5 日 | ...

亲爱的 Spring 社区,

我很高兴宣布第一个 Spring Framework 3.2 发布候选版本现已可用

这一代核心框架是去年 Spring Framework 3.1 之后的一个直接的下一步,延续了几个成熟的主题。Spring Framework 3.2 的主要特性包括

  • 新的基于 Gradle 的框架构建,使得在 GitHub 上为 Spring Framework 项目贡献代码比以往更容易
  • 内联 CGLIB 3.0 和 ASM 4.0,完全支持 Java 7 字节码,并使得基于 CGLIB 的功能无需显式声明 CGLIB 依赖即可使用
  • 允许将 @Autowired 和 @Value 用作元注解 (meta-annotations),例如,与特定限定符 (qualifiers) 结合使用以构建自定义注入注解
  • 支持在 @Configuration 类中使用自定义 @Bean 定义注解,例如与特定限定符 (qualifiers)、@Lazy、@Primary 等结合使用
  • 基于 Servlet 3.0 的异步 MVC 处理...

本周 Spring - 2012 年 10 月 30 日

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

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

  1. Spring Data GemFire 1.2.1 和 GemFire 7.0 已发布!新的 Spring Data 版本包含完整的 Spring XML 命名空间支持,用于配置所有 GemFire 资源,从而无需使用 GemFire 的原生缓存 XML(缓存 XML 也受支持),以及用于 GemFire 的 Spring Data Repositories。另外值得注意的是,GemFire Shell (gfsh) 是使用 Spring Shell 构建的。有关 GemFire 7.0 版本的更多信息,请务必查看该文章,其中链接了发布说明和文档。
  2. 					<LI> Michael Isvy  has put together a nice blog <a href=" http://blog.springsource.org/2012/10/30/spring-mvc-from-jsp-and-tiles-to-thymeleaf/">on moving from JSP and Tiles to Thymeleaf</a>, a new view layer that works particularly well with Spring MVC (and that we have talked about quite a bit in this very roundup for the last few years!).</LI>
    <LI>
    	Spring Security lead Rob Winch has done a nice interview with InfoQ on <A href= "http://www.infoq.com/interviews/robert-winch-spring-security-multi-tenant-applications"> Spring Security  in multi-tenant appications on the cloud</a>  </LI…

Spring MVC:从 JSP 和 Tiles 到 Thymeleaf

工程 | Michael Isvy | 2012 年 10 月 30 日 | ...

在视图层方面,Spring @MVC 为您提供了多种选择。在本文中,我们将首先讨论您在过去几年中最可能使用的视图层方式:JSP。我们将看到使用它们的好与坏方式(纯 JSP、带自定义标签的 JSPApache Tiles)。

然后我们将讨论一个名为 Thymeleaf 的新项目,您可以将其作为 JSP 的替代方法。

像往常一样,您可以在 GitHub 上的相应应用中找到本文讨论的所有代码示例。

纯 JSP

让我们从下面的代码示例开始

<html …> <body>
 <div style="padding-top: 50px;">
   <jsp:include page="../menu.jspx"/>
   <c…

本周 Spring - 2012 年 10 月 23 日

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

欢迎来到新一期的《本周 Spring》!像往常一样,我们有很多内容要讲,所以让我们开始吧!许多新闻来自 SpringSource 本身,来自各种项目,时间恰好与上周的 SpringOne2GX 大会同步。这就像收到一个提前的生日礼物!说到礼物,如果您错过了 SpringOne2GX,别担心!我们录制了 SpringOne 的会议,很快就会发布。此外,您还可以查看 SpringSource.org 上关于大会的总结文章:第一天第二天第三天,以了解大会的概况。

  1. Costin Leau 宣布发布了 Spring for Apache Hadoop 1.0.RC1(这是 Spring for Apache Hadoop 的第一个 RC 版本!),该版本包含用于 Pig 和 Hive 脚本的模板、异常转换和声明式运行器,增强了 map/reduce .jar 和工具执行,以及改进了 JVM 脚本、M/R 和 Cascading 运行器。不要错过 11 月 8 日即将举行的网络研讨会
  2. <LI>  Peter Bell did a    <A href = "http://www.infoq.com/presentations/Spring-Data-NoSQL">great presentation on Spring Data and the NoSQL </a>  space for QCon. Be sure to check it out!  </LI> 
    
  3. Yusuf 在介绍 Spring 的 XA 支持(使用开源 Bitronix 独立 JTA-XA 事务管理器)方面做得很好。对于另一篇指南,我是否可以谦虚地推荐这篇博客文章
  4. Oleg Zhurakousky 宣布发布了Spring Integration 2.1.4 和 2.2.0.RC2 。新版本具有伪事务、JPA 支持、内置重试支持等等,所以一定要看看!
  5. Costin Leau 宣布发布了Spring Data Redis 1.0.2,该版本具有缓存过期和 ZSet 方法等特性。
  6. Thomas Risberg 宣布支持 Oracle 数据库的 Spring Data JDBC 扩展 1.0.0.RC4 版本现已可用。
  7. Satish Ab 写了一篇不错的文章,关于使用 Spring MVC 为他的示例发票应用构建 Web 层
  8. Mkyong 博客有一篇不错的文章,关于如何将依赖项自动装配到自定义 JSF 验证器中。非常不错的文章!
  9. 我们的朋友 Krishna Prasad 写了一篇不错的文章,关于如何使用 Spring Integration 和 JMS 实现控制总线模式

订阅 Spring Newsletter

通过 Spring Newsletter 保持联系

订阅

领先一步

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

了解更多

获取支持

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

了解更多

近期活动

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

查看全部