Spring 本周回顾 - 2014 年 3 月 25 日
欢迎来到新一期的 Spring 本周回顾!这周将是疯狂的一周,我迫不及待地想下周再见到你们!有一些重大公告即将发布!这周请密切关注 spring.io:太多好消息了!好了,言归正传,我们开始吧!
- Spring Boot 联合负责人、全能型人才 Phil Webb 宣布 Spring Boot 1.0.0.RC5 现已可用。我再怎么强调也不为过:下载代码,试用一下,并用你们的代码进行冒烟测试。GA 版本很快就会发布,我们希望尽量减少意外!
- 说到 Spring Boot,Erdem Gunay 写了一篇非常棒的文章,详细介绍了他是如何将一个现有应用程序 使用 Spring Boot 重写并在一周内使其运行起来的。哇! 我注意到他文章中有一处提到了一个完全是 XML 的配置文件,但这并非必需。事实上,这样配置的 bean 在 Java 中可以更简洁地描述。无论如何,请查看这篇文章!太棒了,Erdem!
- Spring Security 负责人 Rob Winch 写了一篇不错的介绍文章,关于如何结合 HtmlUnit 使用 Spring Test MVC,他上周对此进行了介绍。
- Spring 负责人 Juergen Hoeller 写了一篇非常好的文章,探讨了 Java 8 在企业项目中的现状 - 对于那些仍在早期 JDK 版本上挣扎的人来说,这是一个很棒且务实的资源。
- 说到 Java 8,我的朋友 Pieter Humphrey 分享了 Manning 出版社 Java 8 教程视频中关于 Java 8 一等函数的精彩资源。去看看吧!
- Syntx.co 博客发表了一篇好文章,介绍了如何 使用 Spring 4 的 WebSocket 支持以及一个简单的客户端示例
- Sergi Almar 的博客有一篇关于 在 Spring 4 中检测 WebSocket 连接和断开 的好文章。这对于游戏、聊天等场景中的在线状态检测非常有用。
- Sergi Almar 这周状态爆棚!他还发布了一些关于如何 使用 Spring 4 和 RabbitMQ 跟踪你的 WebSocket 消息 的实用信息。
- SpringOne2GX 2013 回放:前端性能技巧与窍门,Scott Andrews 的演讲现已上传至 YouTube!
- 这里正进行 JavaScript 三月疯狂活动——来自 SpringOne 2GX 的另一场 JavaScript 讲座:为你的 JavaScript 进行 AOP,Brian Calavier 的演讲现已上传至 YouTube!
- 好吧,我承认,我差点因为这篇文章的标题而没把它包括进来。我在这里就不重复这个标题了,但如果你能忽略标题直接阅读这篇文章,你会发现它非常有趣,并且——老实说——对于选择依赖注入方式提供了相当好的叙述。
- DevCrumb 博客发表了一篇不错的文章,介绍了 如何将 Spring 3.2.2 和 Hibernate 4.2.0 一起使用。这确实是可行的,但如果可以的话,我建议不要使用任何 XML 配置(或者干脆就不要使用任何配置!)。如果你使用 Spring Boot,这篇文章中的大部分代码都可以移除。如果你还使用了 Spring Data JPA 的 Repository(有什么理由不使用呢?),那么除了
Person
实体之外的所有代码都可以丢弃。 - Pankaj Kumar 在 JournalDev 上发表了一篇不错的文章,介绍了如何使用 Spring 的 AOP 支持。
网络研讨会回放:Java 8 上的 Spring Framework 4.0
演讲者:Juergen Hoeller
幻灯片:https://speakerdeck.com/jhoeller/spring-framework-4-on-java-8
Spring 在及时为新一代 Java 提供专用支持方面有着良好的记录,现在正是拥抱 Java 8 的时候了:借助 Spring Framework 4.0,我们为所有相关的 OpenJDK 8 特性提供了深入支持,包括 Lambda 表达式、JSR-310 日期和时间 API、参数名称发现以及 java.util.concurrent 增强功能。本次演讲将阐述 Spring Framework 4.0 的基本概念,以及 Spring 编程模型中的部分 Java 8 特性,探讨其对应用程序架构的影响。
了解有关 Spring Framework 的更多信息,请访问:http://projects.spring.io/spring-framework
以及
https://springjava.cn/guides
!{iframe width="420" height="315" src="//www.youtube.com/embed/90MBOV6mOPM" frameborder="0" allowfullscreen}{/iframe}
结合 WebDriver 使用 Spring MVC 测试
网络研讨会回放:Spring LDAP 2.0.0
演讲者:Mattias Arthursson,Spring LDAP 负责人
幻灯片:https://speakerdeck.com/marthursson/spring-ldap-2-dot-0
最近发布的 2.0 版本为 Spring LDAP 项目带来了重大改进。凭借 Spring Data Repository 和 QueryDSL 支持、流畅的 LDAP 查询构建器以及 XML 命名空间配置等新特性,LDAP 管理应用程序现在可以比以往任何时候都更高效地构建。本次网络研讨会将概述 Spring LDAP 的目标和范围,并演示 2.0 版本中的所有改进,同时提供大量关于如何最大限度地利用该库的实践技巧。
了解有关 Spring LDAP 的更多信息,请访问:http://projects.spring.io/spring-ldap
!{iframe width="420" height="315" src="//www.youtube.com/embed/hdUQaGePWRo" frameborder="0" allowfullscreen}{/iframe}
结合 HtmlUnit 使用 Spring MVC 测试
在我的上一篇文章中,我介绍了 Spring Test MVC HtmlUnit 并解释了该项目的动机。在本文中,我将描述如何结合 HtmlUnit 使用 Spring MVC 测试。
更新依赖项
在使用该项目之前,必须确保更新依赖项。关于 Maven 和 Gradle 的说明可以在网站文档中找到。
使用 HtmlUnit
现在我们已经有了正确的依赖项,就可以在单元测试中使用 HtmlUnit 了。我们的示例假设你已经将 JUnit 添加为依赖项。如果还没有添加,请相应地更新你的 classpath。使用 HtmlUnit 和 Spring MVC 测试的完整代码示例可以在 MockMvcHtmlUnitCreateMessageTest 中找到……
SpringOne2GX 2013 回放:前端性能技巧与窍门
录制于加州圣克拉拉举行的 SpringOne2GX 2013 大会
演讲者:Jeremy Grelle
随着 Web 和移动应用程序复杂性的增加,确保客户端资源以最优和高效的方式加载和执行的重要性也随之增加。资源加载技术的差异会对应用程序的用户体验速度产生巨大影响,并可能决定用户体验是愉快还是令人沮丧。本次演讲将讨论旨在让用户体验愉悦的性能技术。我们将探讨
- 衡量前端性能的实用工具
- 优化资源的技术及其产生的影响
- 最大化开发效率和生产性能的方法
- 将这些技术轻松融入日常工具链
!{iframe width="560" height="315" src="//www.youtube.com/embed/wrdNdp1Dyrc" frameborder="0" allowfullscreen}{/iframe}
SpringOne2GX 2013 回放:为你的 JavaScript 进行 AOP
录制于加州圣克拉拉举行的 SpringOne2GX 2013 大会。
演讲者:Brian Cavalier
松耦合。你的 Web 前端有这个特性,对吧?你的 JavaScript 使用了发布/订阅、事件触发器和消息总线!再猜猜,你还可以做得更好。面向切面编程 (AOP) 是一种非侵入性地增强对象、方法和函数行为的技术。AOP 从“外部”添加新行为并修改现有行为。使用 AOP,可以在组件之间建立连接,而无需任何一方了解另一方,并且无需在代码中添加任何额外的库依赖。你可能熟悉 Spring 中的 AOP,但你可能尚未将其应用于 JavaScript。本次演讲将做到这一点。我们将介绍在纯 JavaScript 中应用 AOP 的简单技术,无需额外库,然后探讨支持 Cujo.js (http://cujojs.com) 的 AOP 库 meld.js (https://github.com/cujojs/meld)。我们将从组件间连接的简单示例开始,深入到以真正松耦合的方式集成发布/订阅、消息总线等更复杂的示例。
!{iframe width="560" height="315" src="//www.youtube.com/embed/MoZgJY2IF4A" frameborder="0" allowfullscreen}{/iframe}
Spring Boot 1.0.0.RC5 现已可用
Spring Boot 1.0.0.RC5 已发布,可在 repo.spring.io 仓库中获取。这主要是一个错误修复版本,但也新增了一些特性
- 新增了一个
@IntegrationTest
注解,用于帮助编写 Spring Boot 的集成测试。 - CRaSH shell 现在暴露了一个
endpoint
命令,可用于获取 actuator 信息。
我们现在还有一个相当全面的参考手册。
这是最后一个计划的发布候选版本,所以请大家试用并报告任何 Bug。我们计划很快发布 GA 版本。
Java 8 在企业项目中的应用
随着 Java 8 的 GA 版本终于在本周发布,让我们都来欢庆一番——然后醒醒,开始思考如何在日常工作环境中引入它……
这对于原型设计来说足够简单:下载一个 JDK 8,安装 IntelliJ IDEA 或 Eclipse 最新完成的 Java 8 支持,然后就可以开始了。具有挑战性的部分在于后续一步:你需要弄清楚如何将你的应用程序部署到支持 Java 8 的环境中。
当然,在实践中,这个考虑可能来得更早:在你愿意或被允许尝试 Java 8 之前,你需要有一个……