Spring 3.1 M1: 引入 @Profile

工程 | Chris Beams | 2011 年 2 月 14 日 | ...

介绍

在我 之前关于 Spring 3.1 M1 的发布公告的帖子 中,我讨论了在使用 Spring <beans/> XML 配置容器时应用的新*bean 定义 profiles* 功能。今天我们将介绍新的 @Profile 注解,并了解如何在不使用 XML 而使用 @Configuration 类时应用此相同功能。在此过程中,我们将涵盖一些设计 @Configuration 类的最佳实践。

回顾 @Configuration

对于不熟悉 @Configuration 类的用户,您可以将它们视为 Spring <beans/> XML 文件的纯 Java 等效项。我们以前曾 写过关于 功能集 的博客,并且参考文档 对此进行了很好的介绍。如果您需要一个…,您可能需要重新查看这些资源。

Spring 3.1.0 M1 发布

发布 | Chris Beams | 2011年2月11日 | ...

Spring 3.1 的第一个里程碑版本现已通过我们的 http://maven.springframework.org/milestone Maven 仓库提供,或可直接从我们的 社区下载页面 下载。此版本包含新功能,例如

  • Bean 定义配置文件
  • Java 配置容器的增强
  • 缓存抽象
  • 新的 c: XML 命名空间
  • Spring MVC 的改进
请在接下来的几周内关注 SpringSource 博客,我们将发布一系列文章介绍 3.1.0.M1 的新特性。

下载 | 文档 | Javadoc API | 更改日志 | JIRA

请记住,Spring 用户可以在 社区论坛中提问,并在 JIRA 中报告问题。

Spring Framework 3.1 M1 已发布

工程 | Chris Beams | 2011年2月11日 | ...

Spring 3.1 的第一个里程碑版本刚刚发布[1],本文将启动一系列帖子,我将和其他团队成员一起介绍每个主要功能。即使在第一个里程碑版本中,也有很多内容值得讨论!

  • Bean 定义配置文件
  • 通过 Spring 新的 Environment 抽象统一属性管理
  • 增强基于 Java 的配置,使用 @Feature 方法
  • 扩展的 MVC 命名空间支持和基于 Java 的配置等效项
  • RestTemplate API 的流式支持和新的拦截模型
  • 全面的缓存支持
  • 新的 c: XML 命名空间,用于简洁地配置构造函数注入

今天我将介绍第一项——我们称之为*bean 定义 profiles* 的新功能。我们最常收到的请求之一是提供一个核心容器机制,允许在不同环境中注册不同的 bean。“环境”一词对不同的用户可能意味着不同的东西,但一个典型的场景可能是仅在将应用程序部署到性能环境时注册监控基础结构,或者为客户 A 与客户 B 的部署注册自定义 bean 实现。也许最常见的情况是在开发中针对独立数据源,而在 QA 或生产环境中从 JNDI 中查找相同的数据源。Bean 定义 profiles 代表了一种通用方法来满足此类用例,我们将在下面的示例中探讨后者用例。

通过示例动手实践

我为这篇帖子开发了一个小型示例,您现在可以花点时间查看一下(如果不行,请不用担心;您不需要代码也能在下面阅读)。只需按照 https://github.com/cbeams/spring-3.1-profiles-xml 上的 README 中的说明操作即可。如果您不熟悉 Git,README 中提供了说明…

Spring Data JPA 1.0.0.M1 已发布

发布 | Oliver Drotbohm | 2011年2月10日 | ...

亲爱的Spring社区,

我们很高兴地宣布 Spring Data JPA 项目的第一个里程碑版本现已发布!该版本包括

  • Hades 开源库合并到 Spring Data 中
  • 支持基于 Spring 和 JPA 构建存储库的复杂功能
  • 领域类的透明审计
  • 分页支持、动态查询执行、集成自定义数据访问代码的能力
<dependency>
    <groupId>org.springframework.data</groupId>
    <artifactId>spring-data-jpa</artifactId>
    <version>1.0.0.M1</version>
</dependency>

<repository>
    <id>org.springframework.maven.milestone</id>
    <name>Spring Maven Milestone Repository</name>
    <url>http://maven.springframework.org/milestone</url>
</repository>

下载 | JavaDocs | 参考文档 (HTML) | 参考文档 (PDF) | 变更日志

GitHub 上还有两个示例项目可供玩耍。

期待您在 论坛问题跟踪器 中提供反馈。

Spring Data Key Value (Redis + Riak) 1.0.0.M2 已发布

发布 | Costin Leau | 2011年2月10日 | ...

亲爱的Spring社区,

我很高兴地宣布 Spring Data Key Value 1.0 项目的第二个里程碑版本现已发布,支持 Redis 和 Riak!

下载 | JavaDocs | 参考文档 | 变更日志

此版本为 Redis 和 Riak 引入了多项新功能,例如

  • [Redis] Pubsub 支持(例如用于消息驱动 POJO 的 MessageListenerContainer)
  • [Redis] JSON 和 Spring 对象/XML 映射 序列化器
  • [Redis] 完全支持即将推出的 Redis 2.2
  • [Redis] 排序和管道功能
  • [Riak] 异步 RiakTemplate
  • [Riak] 专用的 Groovy DSL 用于异步 Riak 访问

我们期待您在 论坛问题跟踪器 中的反馈。

Spring BlazeDS Integration 1.5.0.M2 发布

发布 | Jeremy Grelle | 2011年2月10日 | ...

亲爱的Spring社区,

我很高兴地宣布 Spring BlazeDS Integration 1.5.0.M2 里程碑版本现已发布,它是一个用于使用 Adobe Flex 构建基于 Spring 的 RIA 的开源解决方案。

下载 | 参考文档 | JavaDocs | 更新日志

此版本中重要新功能和增强功能的亮点包括

  • 支持使用 RESTful Spring MVC @Controllers 读写 AMF 内容。这为远程处理服务的直接 RPC 方法提供了一个很好的替代方案,减少了需要支持多种客户端类型的应用程序中的重复工作。(有关用法示例,请参阅更新的测试驱动器。)

  • Spring Security 3 支持的重大重构,从而更容易将 Flex 应用程序与各种 Spring Security 功能集成,例如记住我、会话固定保护和并发会话控制。

  • Hibernate 序列化支持在 1.5.0.M1 中引入的进一步演进,包括可以选择使用直接字段映射而不是基于属性的映射。

  • 更容易定制和命名空间支持的框架提供服务的配置,例如 LoginCommand 和 MessageInterceptors。

  • 升级与 Spring Integration 2.0.x 的兼容性

  • 基于 Maven 的测试驱动器示例的完整修订,包括全面更新以使用 Flex 4,以及一个演示 RESTful 编程模型的新示例。

另一点需要注意的是,用于 Spring Roo 的 Flex Addon 不再是项目分发的一部分。相反,Flex Addon 的 1.0.0.M2 版本将在未来几周内单独发布,并通过 Roo 的 Addon Discovery 机制提供给 Spring Roo 1.1.1 用户。如果您想试用 Flex Addon 的夜间构建(这对于与 Roo 1.1 及更高版本兼容是必要的),我鼓励您联系社区以获取指导

一如既往,我鼓励所有感兴趣的人通过试用发布版本并在社区论坛Jira中向我们提供反馈来参与进来,因为我们正在快速接近 1.5.0.RC1。我们不断收到人们在使用 Spring BlazeDS Integration 项目中取得成功的好反馈,我们期待听到更多关于您的经验。


Jeremy Grelle
Spring Flex 负责人

开始使用 Spring Data JPA

工程 | Oliver Drotbohm | 2011年2月10日 | ...

由于我们刚刚发布了 Spring Data JPA 项目的第一个里程碑,我想快速介绍一下它的功能。您可能知道,Spring 框架提供了支持来构建基于 JPA 的数据访问层。那么 Spring Data JPA 在此基础支持上增加了什么呢?为了回答这个问题,我想从使用纯 JPA + Spring 实现的示例域的数据访问组件开始,并指出有改进空间的地方。在完成这些之后,我将重构实现以使用 Spring Data JPA 功能来解决这些问题…

Spring Android 1.0.0.M2 已发布

版本发布 | Roy Clarkson | 2011年2月9日 | ...

亲爱的Spring社区,

我们很高兴地宣布 Spring Android 项目的第二个里程碑版本现已发布!

Spring Android 支持在 Android 环境中使用 Spring Framework。1.0.0.M2 版本专注于扩展 RestTemplate 在原生 Android 应用程序中的使用

  • 现在,我们默认使用 HttpComponents HttpClient 4 进行所有 REST 调用,这是 Android 平台上的原生 HTTP 客户端。这取代了第一个里程碑版本中对 Commons HttpClient 3 的使用。
  • 我们通过使用 Simple XML 序列化库添加了对象到 XML 的编组支持。Simple 体积小巧,与 Android 兼容。
  • 现在通过 Android Rome Feed Reader 支持 RSS 和 Atom Feed。Android Rome 是流行 Rome 库的一个与 Android 兼容的端口。
  • 与 Jackson JSON Processor 的集成继续提供一流的对象到 JSON 的编组支持。

Spring Android 可供 下载。如果您在 Android 项目中使用 Maven,只需添加以下依赖项

<dependency>
    <groupId>org.springframework.android</groupId>
    <artifactId>spring-android-rest-template</artifactId>
    <version>1.0.0.M2</version>
</dependency>

<repository>
    <id>org.springframework.maven.milestone</id>
    <name>Spring Maven Milestone Repository</name>
    <url>http://maven.springframework.org/milestone</url>
</repository>

除了 参考指南 外,Roy Clarkson 还撰写了两篇博客文章,帮助您开始开发 Android 应用程序:

可以在 github.com/SpringSource/spring-android-samples 上找到一个带有 README 的示例应用程序:git clone git://github.com/SpringSource/spring-android-samples.git

下一个 Spring Android 里程碑的工作正在进行中,届时我们将为 Android 应用程序集成 OAuth 支持。如果您正在构建原生 Android 应用程序,我们邀请您在 Spring Android 项目上与我们 合作

Spring Android and Maven (Part 2)

工程 | Roy Clarkson | 2011年2月9日 | ...

《Spring Android and Maven (Part 1)》中,我介绍了如何使用Maven从命令行构建Android应用程序。在这篇文章中,我将向您展示如何从Eclipse IDE使用Maven依赖管理来构建Android应用程序。该应用程序还将展示本周发布的Spring Android 1.0.0.M2中的最新功能。

概述

Maven Android 插件允许您使用 Maven 构建 Android 应用程序并从中受益于依赖项管理。Google 的 Android 开发工具 (ADT) 插件允许您在 Eclipse IDE 中开发和构建 Android 应用程序。要在 Eclipse 中获得 Maven 依赖项管理,需要 Maven Integration for Android Development Tools 插件,它集成了 m2eclipse、ADT 插件和 Maven Android 插件

获取 Spring 新闻通讯

通过 Spring 新闻通讯保持联系

订阅

领先一步

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

了解更多

获得支持

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

了解更多

即将举行的活动

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

查看所有