本周 Spring:2011 年 5 月 24 日

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

多么精彩的一周!随着我们临近在阿姆斯特丹于 26 日举行的 S2G 论坛,以及下一周在伦敦于 5 月 31 日举行的论坛,空气中充满了兴奋。如果您在欧洲,请务必不要错过这些激动人心的、内容丰富的日子,其中将涵盖各种主题的演讲,包括 Spring、Grails、云、大数据,当然还有工具。

  1. Mark Fisher 和 Ramnivas Laddad 上周推出了他们的热门网络研讨会——“60 分钟内从零到云”——关于 Cloud Foundry。感谢所有参加并使其取得成功的人!如果您错过了它,您仍然可以获取幻灯片并观看回放此处。请注意,与往常一样,在您完成 CloudFoundry 网络研讨会后,还有许多其他资源。查看其他开发者网络研讨会(向下滚动,点击“开发者”选项卡),并查看SpringSource Dev YouTube 页面。
  2. Spring 项目负责人 Juergen Hoeller 在今年早些时候的 QCon 伦敦上介绍了下一代 Spring——Spring 3.1 及更高版本。他的演讲和幻灯片可在 InfoQ.com 上获得
  3. Spring Data Graph 入门网络研讨会的视频也已提供。此网络研讨会介绍了Spring Data Graph 项目——Spring 和 Neo4j 工程团队共同努力,为您的 Spring 应用程序提供 Neo4J 的一流支持。如果您希望以更自然的方式将 NOSQL 数据技术集成到您现有的架构中,或者仅仅想要更快的速度,或者想知道自己错过了什么,那么您绝对应该查看此网络研讨会。
  4. 在一个吃自己狗粮的绝佳例子中,Tomcat 提交者和Apache Bug 跟踪基础设施维护者 Mark Thomas 解释了 Apache JIRA 接口是如何被搜索引擎“压垮”的——不是不堪重负,但仍在低效运行——这些搜索引擎点击了特定的 JIRA,但没有维护会话 Cookie,从而触发了大量会话的创建。Mark 描述了为 Tomcat 7(以及SpringSource 的 tcServer)创建自定义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 日 | ...

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

在此期间,那些希望更全面了解 Spring 框架如何在新兴的 CloudFoundry 开源云 PaaS 项目中发挥作用的人,应该务必参加网络研讨会——“Spring 从零到云 60 分钟”,该研讨会将在短短 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 日 | ...

已经是 5 月份了!似乎就在昨天,我们还在庆祝新年的到来……

正如人们所说,当你玩得开心时,时间飞逝!今年就像过山车一样——每天都有令人兴奋的新闻和事件——当然,太多让人应接不暇了!

  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 框架对所有数据访问技术的持续一流支持,无论它们是关系数据库、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. Mark Thomas(Apache Tomcat 7 发布经理和工程师)在TomcatExpert.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 的灵活数据模型(例如集合交集…)替换传统关系数据库中代价高昂的连接操作。

高级 Spring Data JPA - 规范和 Querydsl

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

在我的上一篇博文中,我介绍了 Spring Data JPA 的基本功能集。在本篇博文中,我想深入探讨一些更高级的功能,以及它们如何帮助您进一步简化数据访问层的实现。Spring Data 存储库抽象包括一个基于接口的编程模型、一些工厂类和一个 Spring 命名空间,以便轻松配置基础设施。一个典型的存储库接口如下所示

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 示例,您还可以测试应用程序的一个实例

使用 RabbitMQ 和 Riak 进行事件数据处理

工程 | Jon Brisbin | 2011年4月21日 | ...

随着新的应用程序利用消息代理(如RabbitMQ)和云规模数据存储(如Riak)的可扩展性优势,这两个技术不可避免地会成为亲密的朋友(那种真正面对面交流的朋友,而不是那种只通过 Facebook 联系的朋友)。

我们现在编写的许多应用程序都在同一个应用程序中包含这两个功能。我们经常希望在收到消息后更新数据,或者在数据更新后发送消息。两个新的实用程序促进了 RabbitMQ 和 Riak 的集成,允许您…

获取 Spring 电子邮件简报

通过 Spring 电子邮件简报保持联系

订阅

领先一步

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

了解更多

获取支持

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

了解更多

即将举行的活动

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

查看全部