Spring Roo 1.2.3.RELEASE 发布

技术 | Alan Stewart | 2012年12月18日 | ...

Spring Roo 团队很高兴地宣布 1.2.3.RELEASE 已发布。  这是 1.2 的第三个维护版本,包含许多问题的修复,并支持 Spring Framework 3.2.0。请查看更改日志,了解已完成的错误修复和改进列表。

希望您喜欢这个新版本!

Alan

Spring Roo 项目负责人

Spring Security 3.2 M1 亮点,Servlet 3 API 支持

技术 | Rob Winch | 2012年12月17日 | ...

上周我宣布发布了 Spring Security 3.2 M1,其中包含了改进的 Servlet 3 支持。在这篇文章中,我将介绍 3.2 M1 版本中一些更令人兴奋的特性。具体来说,我们将看看以下 Spring Security 新特性

并发支持

你可能会问:“在一个以 Servlet 3 为重点的版本中,并发支持有何作用?”原因是并发支持为本版本中的所有其他特性奠定了基础。虽然并发支持被 Servlet 3 集成使用,但它也可以作为在任何应用中支持并发和 Spring Security 的构建块。现在让我们看看 Spring Security 的并发支持。

DelegatingSecurityContextRunnable

Spring Security 并发支持中最基础的构建块之一是 DelegatingSecurityContextRunnable。它封装了一个委托 Runnable,以便使用指定的 SecurityContext 初始化委托的 SecurityContextHolder。然后它调用委托 Runnable,并确保之后清除 SecurityContextHolderDelegatingSecurityContextRunnable 大致如下所示

public void run() {
  try {
    SecurityContextHolder.setContext(securityContext);
    delegate.run();
  } finally {
    SecurityContextHolder.clearContext();
  }
}

虽然非常简单,但它可以无缝地将 SecurityContext 从一个 Thread 转移到另一个 Thread。这很重要,因为在大多数情况下,SecurityContextHolder 是基于每个 Thread 工作的。例如,您可能使用了 Spring Security 的 <global-method-security> 支持来保护您的某个服务。现在您可以轻松地将当前 ThreadSecurityContext 转移到调用受保护服务的 Thread。下面是实现这一目标的示例


Runnable originalRunnable = new Runnable() {
  public void run() {
    // invoke secured service
  }
};

SecurityContext context = SecurityContextHolder.getContext();
DelegatingSecurityContextRunnable wrappedRunnable =
    new DelegatingSecurityContextRunnable(originalRunnable, context);

new Thread(wrappedRunnable).start();

上面的代码执行以下步骤

  • 创建一个将调用我们受保护服务的 Runnable。请注意,它对 Spring Security 没有任何感知
  • SecurityContextHolder 获取我们希望使用的 SecurityContext,并初始化 DelegatingSecurityContextRunnable
  • 使用 DelegatingSecurityContextRunnable 创建一个 Thread
  • 启动我们创建的 Thread

由于使用 SecurityContextHolder 中的 SecurityContext 创建 DelegatingSecurityContextRunnable 是一种常见做法,因此为此提供了一个快捷构造函数。以下代码与上面的代码相同


Runnable originalRunnable = new Runnable() {
  public void run() {
    // invoke secured…

Spring Framework 3.2 正式发布 (GA)

技术 | Juergen Hoeller | 2012年12月13日 | ...

亲爱的 Spring 社区,

在 Spring Framework 3.1 发布一年后,我很高兴地宣布 Spring Framework 3.2 现已正式发布!

我们建议从所有先前的 Spring 版本升级,特别是从 Spring Framework 3.1.x 升级,因为它是其直接后继版本。

如前所述,Spring Framework 3.2 的主要特性包括

  • 框架内部的精炼 Java SE 7 支持,以及升级到 CGLIB 3.0、ASM 4.0(我们现已内联这两者)和 AspectJ 1.7
  • 框架范围内的并发改进,尽可能避免使用同步 - 特别是对于 scoped/prototype bean
  • 允许将 @Autowired 和 @Value 用作元注解,例如结合特定限定符构建自定义注入注解
  • 支持在 @Configuration 类中使用自定义 @Bean 定义注解,例如结合特定限定符、@Lazy、@Primary 等
  • 在 Servlet 3.0 上进行异步 MVC 处理

本周 Spring - 2012年12月11日

技术 | Josh Long | 2012年12月11日 | ...

欢迎来到新一期的《本周 Spring》!我们上周末结束了 SpringOne China,今天正在参加SpringOne India 在班加罗尔和海得拉巴的两场活动中的第一场。这些展会非常精彩!特别是,我们享受了美食、景点以及大量涌现的令人惊叹的社区!

一位参会者在我发表关于 Spring on Cloud Foundry 的演讲时拍下了这张照片 Mark Pollack 博士、我本人、Gary Russell 和 Chris Richardson 在北京的一家餐厅
我在班加罗尔做了一场演讲,人们带着问题和问候蜂拥而至。我邀请最后一波人与我合影。 从左到右:Gary Russel, Josh Long, Jennifer Hickey, Jeremy Grelle, Oliver Gierke, Chris Richardson -- SpringOne India 的全体阵容

 

    <LI> Roy Clarkson has announced <a href = "http://www.springsource.org/spring-android/news/1.0.1-released">Spring for Android 1.0</a>, which     adds support for Jackson 2.x in <code>RestTemplate</code> through the new <code>MappingJackson2HttpMessageConverter</code>. It also addresses several bugs and compatibility issues with <code>RestTemplate</code> and Android Jelly Bean.</LI>
    <LI>The <a href="http://www.tomcatexpert.com">TomcatExpert.com portal</a> has a nice post on Spring Insight Developer to analyze code, <a href="http://www.springsource.org/node/3761">install it with Tomcat, and…

    介绍 Spring Scala

    技术 | Arjen Poutsma | 2012年12月10日 | ...

    去年十月,在 SpringOne2GX 上,我向世界介绍了 Spring Scala 项目。此后,我还曾在 Devoxx 上介绍过这个项目。在这篇博文中,我将进一步详细介绍这个项目以及如何在您的 Scala 项目中使用它。

    为什么选择 Spring Scala?

    Spring Scala 项目的目标很简单:让在 Scala 中使用 Spring 框架变得更容易。我们相信有很多 Spring 用户希望尝试 Scala,但又不想抛弃他们在 Spring 方面的经验。这个项目就是为这些人准备的。

    显然,您今天可以在 Scala 中使用(Java)Spring Framework,无需 Spring Scala。但在某些地方这样做会很别扭。就像任何编程语言一样,Scala 有自己独特的方式,在 Scala 中使用像 Spring 这样的纯 Java 框架会感觉“太 Java 化”。Spring Scala 试图解决…

    SpringOne 2GX 上的 IOC + Javascript

    技术 | John Hann | 2012年12月06日 | ...

    作者: Brian CavalierJohn Hann

    我们在 SpringOne 2GX 上做了一个关于 IOC + Javascript 的演讲。前端 Web 应用架构似乎是会议上一个非常热门的话题,总的来说,我们的演讲受到了很好的欢迎。这是演讲的 视频和 幻灯片

    我们还将开始一个关于现代 Javascript Web 应用架构模式的系列博文,文章将由 SpringSource 新的前端架构团队 S2JS 的成员撰写。这些文章将扩展我们在演讲中介绍的概念,以及 Scott Andrews 和 Jeremy Grelle 在他们的演讲中介绍的概念。

    本系列的第一篇文章将于下周发布。在此之前,希望您喜欢这段 视频和 幻灯片。 如果您想提前了解,可以浏览演示应用的 源代码

    本周 Spring - 2012年12月4日

    技术 | Josh Long | 2012年12月05日 | ...

    !伙计们!已经是12月4日了!快乐的时光总是过得很快!

    Welcome back to another installment of <EM>This Week in Spring</EM>. This week, I'm in Beijing for <a href="http://springonechina.cloudfoundry.com">SpringOne China</a> and, next week, I'm off to India for <A href="http://springoneindia.cloudfoundry.com/">SpringOne India</a>. If you're in Beijing, Bangalore or Hyderabad, I'd love to see you at these events!
    

    好了,让我们开始本周的总结!

    1. Mark Fisher 本周带来了一份非常棒的礼物:Spring Integration 2.2.0.GA 已发布!新版本在发布公告中引用的关于各种新特性的博客中都有详细介绍,请务必查阅!
      	</LI>
      <LI>Martin Lippert's announced that the <a href="http://www.springsource.org/node/3757">Spring Tool Suite and Groovy Tool Suite 3.2.0.M1 have been released!</a> </li>
      
       <LI> Tobias…

    本周 Spring - 2012年11月27日

    技术 | Josh Long | 2012年11月28日 | ...

    欢迎回到新一期的《本周 Spring》!如果您在美国,希望您在一个愉快度过的假期周末后得到了充分休息,因为我们这周有很多内容要介绍!

    希望这份总结对您有所帮助。如果您想查阅前几周的总结,我们最近为博客存档创建了一个 本周 Spring 标签。

    总之,这周我们有很多内容要介绍,所以让我们开始吧!

    1. Chris Beams 宣布 Spring Framework 3.2 RC2 已发布,该版本主要包含错误修复和重构,项目正接近正式发布 (GA)。
    2. Andy Wilkinson 宣布发布了 Spring Migration Analyzer,这是一个命令行工具,用于分析企业 Java 应用并生成一份报告,描述应用以及如何迁移到 Spring。输入一个 EAR 文件,获取一份迁移工作量报告。里程碑版本支持 WebLogic、WebSphere、Java EE 和 JBoss,但我们正在寻求社区支持,以便在正式发布时做得更好!
    3. 请关注 Spring Data 网络研讨会系列的最新一场:12月13日 - 使用 Spring Data, Hadoop, Batch, Integration 进行数据访问和处理。我们还将在12月6日举办一场关于 Spring Data Gemfire 的网络研讨会:数据复兴:使用 VMWare vFabric GemFire 7.0 和 Spring 进入内存时代
    4. 如果您错过了 Spring Data 网络研讨会系列中的其他研讨会,请查看 SpringSource Dev Youtube 频道,观看最近发布的重播:使用 Spring 进行数据访问 -- 充分利用 JPA、JDBC 和 REST介绍 Spring for Apache Hadoop
    5. Gary Russell 宣布 Spring Integration 2.2.0.RC3 已发布
    6. Spring Social 1.1.0 已发布。新版本包括更简单的 XML 和 Java 配置,更严格地遵循最新的 OAuth 2 规范草案,包括 HTTP Basic 客户端认证以及对 Resource Owner Credentials Grant 和 Client Credentials Grant 的支持,并更新了 Facebook 和 Twitter API 绑定。
    7. Jens Schauder 有一篇不错的文章 关于如何使用 singleton 范围按需创建新的 Spring Bean
    8. Java How to Program》博客有一篇不错的总结,内容关于
        <a href="http://www.hubberspot.com/2012/10/how-to-use-component-annotation-for.html">How to use <CODE>@Component</CODE> 
        annotation to automatically configure Spring beans</a>.
      
    9. 这是一篇不错的文章,关于如何使用 Spring 和 @Autowired(或 @Inject)实现责任链模式。
    10. Viral Patel 又回来了,这次带来了一篇关于 Spring 3 MVC 拦截器的文章。
    11. Mkyong 博客上又发布了一篇不错的文章,关于使用 Spring thread scope 的 Spring 和 Java 线程示例
    12. DZone 发布了一篇不错的文章,关于使用 Spring 和 JUnit 4 支持进行轻松集成测试
    13. 我最近撰写了一篇关于SpringSource Tool Suite 和 Spring 入门的教程。

    介绍 Spring Migration Analyzer

    技术 | Andy Wilkinson | 2012年11月27日 | ...

    我很高兴宣布我们发布了 Spring Migration Analyzer (SMA) 的第一个里程碑版本,这是一个命令行工具,用于分析企业 Java 应用并生成一份报告,描述应用以及如何迁移到 Spring。

    为什么要将应用迁移到 Spring?

    我们认为人们选择使用 Spring 主要有两个原因。首先,Spring 提供了最广泛的部署选项,包括云和 PaaS,允许您将应用部署到更轻量级的运行时,从而降低运营成本。其次,正如 Adrian 最近解释的,Spring 提供了访问许多处于企业 Java 前沿的技术的途径。

    当考虑将现有应用迁移到 Spring 时,通常是部署灵活性驱动这一举动,因为它可以显著降低应用的运营成本。

    使用 SMA 分析应用

    要开始使用 SMA,请下载发行版。下载完成后,解压缩它
    unzip spring-migration-analyzer-1.0.0.M1-dist.zip
    

    设置好 JAVA_HOME 后,您就可以运行 migration-analysis 脚本来…

    Scripted 中的依赖分析

    技术 | Kris De Volder | 2012年11月20日 | ...

    Scripted,一款来自 VMWare 的 JavaScript 编辑器,上个月在本博客上发布了公告。在本文中,我们将深入了解 Scripted 的 Dependency Analysis Engine(依赖分析引擎)。但在深入细节之前,先说明一下为什么我们需要它。

    主要动机:跨文件内容辅助

    为了提供出色的 JavaScript 编辑体验,Scripted 需要提供关于您当前编辑器上下文中可以使用的函数、方法或标识符的准确建议。

    [caption id="attachment_12178" align="aligncenter" width="533" caption="跨文件内容辅助"][/caption]

    两个组件协同工作以实现此目标

    • 细粒度类型推断分析引擎
    • 粗粒度依赖分析引擎
    推断引擎解析您的代码并遍历每个声明、语句和表达式。这使得它能够确定在给定上下文中哪些标识符有效,并很好地猜测可能存储在这些变量中的内容类型。然后使用这些信息来提供内容辅助建议。

    如果您想简单地将所有代码放入一个大文件中,那么一个高质量的推断器本身就足以提供相当好的内容辅助。然而,实际上,项目会分为…

    订阅 Spring 新闻通讯

    通过 Spring 新闻通讯保持联系

    订阅

    领先一步

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

    了解更多

    获取支持

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

    了解更多

    即将举行的活动

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

    查看全部