本周 Spring 动态:2011 年 5 月 31 日

工程 | Josh Long | 2011 年 5 月 31 日 | ...

今天在 SpringSource S2G 论坛 伦敦 会场,激动人心的氛围持续!大会前的能量令人震撼,而关于各种深度技术主题的演讲也令人印象深刻!我的几个问题得到了解答,并且学到了很多关于 SpringSource 新的、有趣的和即将推出的技术。如果您今年没能参加,我们下周将发布会议幻灯片。另外别忘了,今年晚些时候(十月)在芝加哥还有 SpringOne 2GX

  1. 许多人一试用 Spring Batch 就爱上了它,其中很多人也开始向其他人推荐它,正是因为它能让你知道不必自己解决这个问题,感觉棒极了。批处理是我们都会在某个时候遇到的事情:将数据从一个数据库移动到另一个数据库,从文件系统中读取,进行 Web 服务调用并需要处理重试逻辑等等。这些用例(以及更多)都非常适合 Spring Batch。如果你想看到一个非常简洁、有用的技术介绍,并且强调代码,请查看 Sanjoy Kumar Roy 介绍 Spring Batch 的博客。 非常酷!如果你尝试了 Spring Batch,并且觉得有什么可以补充的,写一篇博客并 告诉我,我就可以在本页面上突出显示它!
  2. 	<li>
    		Roy Clarkson notes that starting May 28, 2011, the repositories for <a href="http://www.springsource.org/spring-android">Spring Android</a> and <A HREF ="http://www.springsource.org/spring-mobile">Spring Mobile</a> have moved to GitHub, and are available at the following URLs:
    
    	<div><b>Spring Android:<br/></b>
    		<UL><li><a href="https://github.com/SpringSource/spring-android">Spring Android</a></li>
    		<LI><A href="https://github.com/SpringSource/spring-android-samples">Spring Android Samples</a>
    			</li> </div>
    				<div><b>Spring Mobile:<br/></b>
    					<UL><li><a href="https…

本周 Spring 动态:2011 年 5 月 24 日

工程 | Josh Long | 2011 年 5 月 24 日 | ...

精彩的一周!随着我们在 26 日在阿姆斯特丹 和下周 5 月 31 日在伦敦 的 S2G 论坛临近,空气中充满了激动人心的氛围。如果您在欧洲,千万不要错过这些激动人心的、内容丰富的日子,这里有关于 Spring、Grails、云计算、大数据当然还有工具等各种主题的演讲。

  1. 上周,Mark Fisher 和 Ramnivas Laddad 举办了他们非常受欢迎的网络研讨会——关于 Cloud Foundry 的“60 分钟从零到云”。感谢大家的参加,使它取得了成功!如果您错过了,仍然可以在这里获取幻灯片并观看回放。请注意,像往常一样,看完 CloudFoundry 网络研讨会后,那里还有许多其他资源。请查看其他开发者网络研讨会(向下滚动,点击“开发者”选项卡),并查看SpringSource Dev YouTube 页面。
  2. 今年早些时候在伦敦 QCon 大会上,Spring 项目负责人 Juergen Hoeller 发表了关于下一代 Spring(Spring 3.1 及更高版本)的演讲。他的演讲和幻灯片可在 InfoQ.com 上获取
  3. Spring Data Graph 入门 网络研讨会的视频也已发布。本次网络研讨会介绍了 Spring Data Graph 项目——这是 Spring 和 Neo4j 工程团队共同努力的项目,旨在为您的 Spring 应用程序提供对 Neo4J 的一流支持。如果您想以更自然的方式将 NOSQL 数据技术集成到现有架构中,或者只是想要更高的速度,或者想看看您错过了什么,那么您一定要看看这个网络研讨会。
  4. Mark Thomas,Tomcat 提交者和 Apache Bug 跟踪基础设施 维护者,提供了一个自用实践的绝佳示例,他解释了搜索引擎如何“冲击”(不是压垮,但仍然运行效率低下)特定的 JIRA,但没有维护会话 cookie,从而触发了大量会话的创建,导致 Apache JIRA 接口运行缓慢。Mark 描述了 为 Tomcat 7(以及 SpringSource 的 tcServer创建自定义 Valve 的过程,该 Valve 将每个网络爬虫与单个 Tomcat 会话关联起来,大大减少了它们的足迹。
  5. Spring Web Services 2.0.2 已发布。更多信息请参阅更新日志Spring Web Services 1.5.1.0 也已发布。有关此版本中的更改,请参阅更新日志。这两个版本本身都包含一些重要的更新,但同样重要的是,这两个版本都解决了潜在的安全问题。建议用户尽快升级。
  6. <LI> Google I/O, Google's developer conference, is an exciting time for enterprise Java developers, and of course, this also means Spring developers. One notable announcement was the <a href="http://vaadin.com/springroo">1.0 release of the Spring Roo plugin for Vaadin,</a> which is a widget-centric approach to web application development.  Vaadin's a very innovative way to build web applications today, and - of course - <a href="http://vaadin.com/wiki/-/wiki/Main/Spring%20Integration">it works well with Spring.</a> (NB: those instructions are old, but they should still work, and you can just…

本周 Spring 动态:2011 年 5 月 10 日

工程 | Adam Fitzgerald | 2011 年 5 月 11 日 | ...

五月正在顺利进行中,阿姆斯特丹和伦敦的 S2G 论坛 的所有准备工作都已完成。这些 S2G 论坛是欧洲人获取 Spring 社区相关最佳信息(以最低成本!)的首要场所。我希望我们能在 阿姆斯特丹(2011 年 5 月 26 日 - 114 欧元) 和/或 伦敦(2011 年 5 月 31 日 - 99 英镑) 见到您!

在此期间,那些想更清楚地了解 Spring 框架在新兴的 CloudFoundry 开源云 PaaS 项目中如何发挥作用的人,一定要参加一个网络研讨会——《60 分钟从零到云》Spring 专题,面向北美欧洲,就在短短的 10 天内!

  1. SpringSource Tool Suite 2.6.1 发布。此版本包含常规的更新和功能。一些特别值得注意的功能:捆绑的更新版本 vFabric tc Server 2.5 版,改进了对 tc Server 实例创建的支持,以及更新到 Spring Roo 的最新版本 1.1.3,并且(太棒了!)捆绑了对 CloudFoundry 的支持。有关详细信息,请查阅 新特性和值得注意 的 PDF 文档。
  2. 	<li> The  <A HREF="http://blog.cloudfoundry.com/">CloudFoundry blog</a> has run two different parts with a detailed look at  what happens when you <code>push</code> applications to the CloudFoundry project. The first post details what happens from the <a href="http://blog.cloudfoundry.com/post/4737632136/what-happens-when-you-vmc-push-an-application-to-cloud">client-side perspective</a>. The second post provides details on what happens from <a href="http://blog.cloudfoundry.com/post/5223861703/how-cloud-foundry-works-when-a-new-application-is">the cloud-side perspective, once the…

Groovy-Eclipse 中更好的 DSL 支持

工程 | Andrew Eisenberg | 2011 年 5 月 9 日 | ...

Groovy 语言是创建领域特定语言(DSL)的绝佳平台。一个好的 DSL 可以使程序更简洁、更富有表现力,并提高程序员的生产力。然而,到目前为止,Groovy-Eclipse 在编辑器中并未直接支持这些 DSL。当大量使用 DSL 时,内容辅助、搜索、悬停提示和导航等标准 IDE 功能就会失去其价值。一段时间以来,可以通过编写 Eclipse 插件来扩展 Groovy-Eclipse,但这是一种重量级的方法,需要对 Eclipse API 有专门的了解。现在…

本周 Spring 动态:2011 年 5 月 3 日

工程 | Josh Long | 2011 年 5 月 4 日 | ...

已经是五月了!仿佛昨天我们还在举杯庆祝新年的到来…

正如他们所说,快乐的时光总是飞逝!今年就像过山车一样——每天都有令人兴奋的新闻和事件——当然,太多了,应接不暇!

  1. Jon Brisbin 写了一篇 介绍 CloudFoundry 项目及其许多可用技术的“史诗级”文章。

    这篇文章是今天刚发布的,现在是我最喜欢的介绍 CloudFoundry 的博客之一;它太有野心了,就像 CloudFoundry 本身一样!

  2. 另一个范例杰作是 Costin Leau 写的博客:使用 Redis 和 Spring Cloud Foundry 入门。无论您是使用 CloudFoundry、Spring Data,还是两者都用,这篇文章都非常值得一读。确实是一个动态双人组!
  3. <li>European community members can learn more about Spring, Spring Data and Cloud Foundry at the S2G Forum Series: <a href="http://www.springsource.com/events/s2gforum-5-26-2011-amsterdam">Amsterdam…

在单个 Cloud Foundry 应用程序中使用 MongoDB, Redis, Node.js 和 Spring MVC

工程 | Jon Brisbin | 2011 年 5 月 3 日 | ...

传统上,应用程序是由它们使用的主要技术来定义的。如果你正在构建一个 Spring MVC 应用程序,我们称之为“Java 应用”。由于我们的应用程序主要由 Java 组件组成,我们倾向于待在自己的“院子”里,除非被迫与“邻居”互动,否则不会太友好。我们搭建基于 Java 的应用服务器,并且倾向于首先考虑使用 Java 语言来解决应用程序中的问题,无论这种语言是不是最佳选择。维护多套运行时环境通常太困难了…

本周 Spring 动态:2011 年 4 月 26 日

工程 | Josh Long | 2011 年 4 月 27 日 | ...

又一周过去了,像往常一样,社区和 SpringSource 又带来了大量精彩的新内容。本周,对 CloudFoundry 的热情持续高涨,本周的汇总中包含了一些有趣的内容。关于 CloudFoundry 的更多内容,您可以查阅 CloudFoundry.comCloudFoundry.org 网站。特别是,发布会第二天举行的 Cloud 用户组会议的幻灯片可以在 这里获取。

  1. Oliver Gierke 发表了一篇关于 高级 Spring Data JPA 的博客,解释了如何使用 Spring Data JPA 项目中的特性来提升 JPA 编程的艺术,例如集成 QueryDSL 库。这篇文章——以及该库——体现了 Spring 框架对所有数据访问技术的持续一流支持,无论是 RDBMS、NoSQL 还是其他任何技术。
  2. Grails 开发者倡导者 Peter Ledbrook 最近扩充了他关于使用 Grails 和 CloudFoundry 的原始博客。

    这篇博客详细介绍了 如何在 CloudFoundry 上使用 Grails 的 GORM 支持与各种数据存储。快去看看吧!

  3. Alex Popescu 的 MyNoSQL 门户网站 MyNoSQLCloudFoundry 支持的 NoSQL 选项 发表了一些有趣的评论。他评论道:“从存储的角度来看,Cloud Foundry 从一开始就鼓励多语言持久化,提供对关系型数据库 (MySQL)、超快速智能键值存储 (Redis) 和流行的文档数据库 (MongoDB) 的访问。
    这篇文章——以及整个网站——对于想要利用 NoSQL 选项但还不了解其用例的 CloudFoundry 用户来说,是非常宝贵的资源。例如,有很多关于 MongoDB 和 Redis 的优秀内容。
  4. Apache Tomcat 7 发布经理兼工程师 Mark ThomasTomcatExpert.com 网站上发表了一篇关于 Apache Tomcat 7 会话固定保护安全特性的文章。如果您像大多数开发人员一样,使用 Tomcat(或像 SpringSource 的 tcServer 这样经过强化、运维友好的衍生产品)作为 Java(通常是 Spring)应用程序的生产服务器,那么及时了解最新的 Tomcat 安全特性非常重要。此外,Tomcat 也捆绑在多个应用服务器中。无论哪种方式,了解 Tomcat 的行业领先特性都只会对您有帮助。
  5. Costin Leau 宣布了 Spring GemFire 1.0.1 版本的发布,该版本包含了错误修复并提高了稳定性。
  6. <li>Just a reminder to our European community members, the S2G Forum Series will be held in <a href="http://www.springsource.com/events/s2gforum-5-26-2011-amsterdam">Amsterdam (May 26th)</a> and <a href="http://www.springsource.com/events/s2gforum-5-31-2011-london">London (May 31st)</a>. There will be tons of great sessions about Spring, Groovy and Grails as well as talks focused specifically on CloudFoundry, Tomcat and Gemfire so be sure to <a href…

使用 Redis、Spring Data 和 Cloud Foundry 入门

工程 | Costin Leau | 2011 年 4 月 27 日 | ...

NoSQL 解决方案流行的驱动力之一是性能(尤其是在高负载下)。由于其数据模型,键值存储处于领先地位,提供了轻量级且灵活的数据处理方式。在这篇文章中,我将快速展示如何使用 Spring (Spring Redis) 通过 Spring Data 的一个示例 (RetwisJ) 来操作键值存储 (Redis),并将应用程序部署到 (通过 Cloud Foundry)中,以便与世界分享。我甚至更进一步,使用 Windows 作为部署平台,作为一种改变。

Redis

在键值存储中,流行的选择Redis,这是一个开源的、速度极快的数据库,使用 ANSI C 编写,服务器大小约为 200 KB(是的,字节),整个软件包(包括命令行客户端和一些管理工具)约为 400 KB,几乎可在所有主要平台上使用,这也使其成为本示例的选择。请注意,除非您想在本地运行示例,否则不需要 Redis 实例。如果是,对于 Windows 用户(例如作者),我本人使用(并推荐)这个 预打包版本,有 32 位和 64 位两种。

Spring 与 NoSQL

如果您在 Java 环境中使用 NoSQL,请看看 Spring Data:它本身不是一个独立的项目,而是包含各种新兴数据访问技术的伞形项目,例如非关系型数据库(如 Redis 或 MongoDB)、MapReduce 框架(如 Hadoop)以及基于云的 Java 应用数据服务。Spring Data 弘扬了 经典 的 Spring 价值观,通过消除 API 噪音、样板代码和资源管理,提供一致的编程模型,从而提高了开发人员的生产力。它构建在现有的 Spring 特性和项目之上(例如控制反转、生命周期管理、类型转换、可移植数据访问异常、缓存等等),因此只需极少的努力就可以立即将其添加到应用程序中。当然,就像其他 Spring 项目一样,它是开源的,并在 Apache 许可下可用。

Spring Data Redis

对于 Redis,Spring Data 通过 Spring Data Redis 或简称为 Spring Redis 项目提供了专门的支持。它提供了从可移植 Redis 客户端抽象(只需修改一行配置即可切换不同的 Redis 客户端,如 Jedis、JRedis 或 RJC)到基于 Redis 的原子集合或计数器以及发布-订阅支持的低级和高级特性。该项目 参考文档 详细介绍了这些主题。

RetwisJ, YATC - 又一个 Twitter 克隆

RetwisJ 源代码,包括本博客中的代码,可以在 Spring Data Key Value 示例项目 中下载。此外,文档可在 这里 查看。

RetwisJ 可以看作是 Redis 的 Retwis 示例的 Java 移植版:一个简单的 Twitter 克隆,演示了如何使用 Redis 灵活的数据模型(例如集合 交集…)来替代传统关系型数据库中开销高昂的 Join 操作。

高级 Spring Data JPA - 规范和 Querydsl

工程 | Oliver Drotbohm | 2011 年 4 月 26 日 | ...

在我的 上一篇博文 中,我介绍了 Spring Data JPA 的基本功能集。在这篇博文中,我想深入探讨一些更多功能,以及它们如何帮助您进一步简化数据访问层的实现。Spring Data repository 抽象由基于接口的编程模型、一些工厂类和一个 Spring 命名空间组成,以便轻松配置基础设施。一个典型的 repository 接口看起来像这样

public interface CustomerRepository extends JpaRepository<Customer, Long> {

  Customer findByEmailAddress(String emailAddress);

  List<Customer…

深入了解 Grails 和 Cloud Foundry

工程 | Peter Ledbrook | 2011 年 4 月 21 日 | ...

我之前的博文 中,我展示了使用相应的插件将 Grails 应用程序部署到 Cloud Foundry 是多么容易。希望这已经吊起了您的胃口,您已准备好查看一个更复杂的 Grails 应用程序,该应用程序演示了 GORM 插件的强大功能并扩展了 Cloud Foundry 服务。如果您还没有 Cloud Foundry 账户,请耐心等待。公告发布后的反响非常热烈,因此处理积压的请求需要一些时间。

GrailsTwitter

简单的 Twitter 克隆几乎已成为 Grails 示例应用程序的标准,因此为 Cloud Foundry 开发另一个版本也就不足为奇了。您可以在 GitHub 上找到代码以及其他 Cloud Foundry 示例,您还可以测试 应用程序的实例

获取 Spring 电子报

通过 Spring 电子报保持联系

订阅

领先一步

VMware 提供培训和认证,助您快速进步。

了解更多

获取支持

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

了解更多

即将举行的活动

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

查看全部