Spring 2.1-m2 中的基础设施变更

工程 | Ben Hale | 2007年6月1日 | ...

随着 Spring 2.1-m2 的发布,Spring 分发版的基础设施发生了一些重大变化。有关完整变更列表,请参阅公告变更日志

分发

分发版已从 2.1-m1 中的 26 个 JAR 精简到 2.1-m2 中的 17 个 JAR。请查看变更日志以了解更改的文件列表,但从提交消息来看,以下是新增内容
  • spring-context.jar 现在包含 JMX 支持和核心远程支持(不再有 spring-jmx 和 spring-remoting jar)
  • spring-orm.jar 合并了所有 ORM 支持包(取代了 spring-hibernate、spring-ibatis、spring-jdo、spring-jpa 和 spring-toplink jar)
  • spring-web.jar 包含与 Web 相关的远程和 ORM 类(适用于在 J2EE EAR 部署结构中正确使用)
  • 将 spring-dao.jar 重命名为 spring-tx.jar,现在也包含 JCA 支持
  • 将 spring-support.jar 重命名为 spring-context-support.jar
  • 将 spring-portlet.jar 重命名为 spring-webmvc-portlet.jar
  • 模块 jar 文件现在包含特定于模块的 "spring.handlers" 和 "spring.schemas" 文件

Maven 工件

我也很高兴地宣布,从 2.1-m2 版本开始,每个 Spring 模块现在在 Maven 仓库中都将包含源代码 jar。目前 2.1-m2 的 Maven 工件位于一个私有的快照仓库中,但最终版本将位于主 Maven 仓库。如果您想在您的 Maven 项目中使用 2.1-m2,请将仓库位置添加到您的 POM 文件中,指向 https://springframework.svn.sourceforge.net/svnroot/springframework/repos/repo-snapshots/。如果您正在使用任何 Maven IDE 支持,请也下载源代码 jar 并在我们的 JIRA 上提交任何相关问题。

定制 Spring 2.1 中的注解配置和组件检测

工程 | Mark Fisher | 2007年5月29日 | ...

注意:此帖子已于 2007 年 5 月 31 日更新,以反映 2.1-M2 官方发布版的状态

两周前,我撰文介绍了 Spring 2.1 新的注解驱动依赖注入功能,并提到我将在“本周晚些时候”提供更多信息。事实证明,这有点乐观,但好消息是在此期间该功能已经发展了不少。因此,要跟随这里的示例,您需要下载 2.1-M2 官方发布版(或者如果您是第一批阅读此更新条目且 M2 尚未发布的人,您至少应该获取每夜构建版本 #115,可从此处下载)。

我首先要演示的是如何在不使用任何 XML 的情况下创建应用程序上下文。对于使用过 Spring 的 BeanDefinitionReader 实现的人来说,这会非常熟悉。然而,在创建上下文之前,我们需要在类路径中放置一些“候选”bean。沿用我之前博客中的示例,我有以下两个接口


public interface GreetingService {
	String greet(String name);
}

public interface MessageRepository {
	String getMessage(String language);
}

...以及这些相应的实现


@Component
public class GreetingServiceImpl implements GreetingService {

	@Autowired
	private MessageRepository messageRepository;
	
	public String greet(String name) {
		Locale locale = Locale.getDefault();
		if (messageRepository == null) {
			return "Sorry, no messages";
		}
		String message = messageRepository.getMessage(locale.getDisplayLanguage());
		return message + " " + name;
	}
}

@Repository…

会议季直至 SpringOne!

工程 | Rod Johnson | 2007年5月28日 | ...

我已经很久没有时间写博客了。我们一直很忙。我们筹集了 1000 万美元。正如Adrian 指出的那样,我们在产品开发方面非常活跃。最近几个月,我亲自编写的代码比平时要多。(主要是一些实验性的东西,可能有用,也可能没用,但这很有趣,有时我也会做一些最终证明有用的事情。)我花了很多时间与媒体和分析师交流;最近我们的媒体关注度非常高。媒体/分析师电话会议可能会令人疲惫,但它们也可能很有价值,因为其中许多人很聪明,会提出一些引人深思的问题……

Acegi Security 1.0.4 发布

发布 | Ben Alex | 2007年5月25日 | ...

Acegi Security 1.0.4 现已可用。

此版本解决了 50 多个问题。现有用户只需简单替换 JAR 即可升级到 1.0.4 版本。

请访问 http://tinyurl.com/2qey2l 查看详细的变更日志。

项目网站 http://acegisecurity.org 提供了有关 Acegi Security 功能的更多信息、在线文档访问以及最新版本下载链接。

请注意,Acegi Security 的下一版本将称为 Spring Security 2.0.0 M1。我们预计将在未来 7-14 天内发布此版本,它将提供 Spring 2 命名空间…

Spring 组合中的新发布

工程 | Adrian Colyer | 2007年5月25日 | ...

去年年末,我们开始讨论 Spring“发布列车”的概念。发布列车的想法是我们协调发布 Spring 组合中的产品:共同测试,协同工作。您仍然可以选择您需要的组件,但当您希望一起使用各种产品时,这将更加容易。我们还没有完全做到,但正在朝着这个方向前进。

Interface21 面临的挑战之一是,对我们支持服务、培训和咨询的需求如此之高,以至于我们一直都在竭尽全力满足需求。这使得我们难以获得实现“发布列车”所需的持续且可预测的产品开发时间。这只是我对 Benchmark Capital 最近宣布向 Interface21 投资 1000 万美元如此兴奋的众多原因之一(新闻稿...

Spring Web Flow Java One 2007 演示

工程 | Keith Donald | 2007年5月18日 | ...

当 Sun 将我在 JavaOne 2007 关于Spring Web Flow 的会议安排在周五,也就是会议的最后一天时,我不知道会是什么情况。我很荣幸今年再次被接受,但我不知道在为期 4 天的会议的最后一天进行演示,与会人数会是怎样。

事情的发展令我非常高兴。周四我在讲者设置处签到时,已有 800 人预注册了我的周五会议。在我演讲开始前十五分钟,会场人数已达到这个数字。最终,1000 名 JavaOne 与会者来到了…的 307-310 号房间。

Spring Framework 2.1 M1 发布

发布 | Juergen Hoeller | 2007年5月14日 | ...

亲爱的 Spring 社区,

我们很高兴地宣布 Spring 2.1 M1 已经发布。这是 Spring 2.1 系列的第一个里程碑版本,引入了主要新特性,包括基于注解的配置、基于 JCA 的消息端点管理、新的“context”和“jms”XML 配置命名空间,以及 JDK 1.6 和 Java EE 5 支持。

Spring 2.1 M1 Released

 
请参阅相关的新闻稿,了解 2.1 版本的主要主题概览。订阅 Interface21 团队博客,获取新特性的讨论和示例。

请参阅变更日志JIRA…

Spring 2.1 中的注解驱动依赖注入

工程 | Mark Fisher | 2007年5月14日 | ...

Spring 2.0 引入了注解支持和注解感知配置选项,可供使用 Java 5(或更高版本)进行开发的 Spring 用户使用

@Transactional 用于标记和配置事务定义
@Aspect (AspectJ) 用于定义切面以及 @Pointcut 定义和通知(@Before、@After、@Around)
@Repository 用于指示作为仓库(也称为数据访问对象或 DAO)运行的类
@Required 用于强制要求注解的 bean 属性提供一个值

随着 Spring 2.1 的发布,注解驱动配置这一主题得到了显著扩展,并将在我们向 RC1 版本迈进的过程中继续发展。事实上,现在可以通过注解来驱动 Spring 的依赖注入。此外,Spring 可以发现需要在应用程序上下文中配置的 bean。

这篇博客文章将作为一篇教程式的介绍,分 10 个易于遵循的步骤介绍基本功能。我将在本周晚些时候跟进,提供有关更多高级功能和定制选项的信息。如果您对其他配置选项感兴趣,也应该查阅 Spring Java 配置项目和这篇博客

本教程需要至少 Java 5,推荐使用 Java 6(否则在步骤 1 结束时有一个单独的要求)。

步骤 1

获取 spring-framework-2.1-m1-with-dependencies.zip。解压后,您将在 'dist' 目录中找到 spring.jar 和 spring-mock.jar。将它们添加到您的 CLASSPATH 中,以及以下文件(所示路径是相对于解压后的 2.1-m1 归档文件的 'lib' 目录)

  • asm/asm-2.2.3.jar
  • asm/asm-commons-2.2.3.jar
  • aspectj/aspectjweaver.jar
  • hsqldb/hsqldb.jar
  • jakarta-commons/commons-logging.jar
  • log4j/log4j-1.2.14.jar
(注意:如果您运行的不是 Java 6,您还需要添加 j2ee/common-annotations.jar)

步骤 2

提供示例的接口和类。我已尽力使其尽可能简单,同时又能演示主要功能。我将所有代码和配置都包含在一个“blog”包中。我建议遵循相同的指导方针,以便示例可以按原样工作;否则,请务必进行必要的修改。首先,是 GreetingService 接口

public interface GreetingService {
    String greet(String name);
}

然后,一个简单的实现


public class GreetingServiceImpl implements GreetingService {
    private MessageRepository messageRepository;

    public void setMessageRepository(MessageRepository messageRepository) {
        this.messageRepository = messageRepository;
    }

    public String greet(String name) {
        Locale locale = Locale.getDefault();
        String message = messageRepository.getMessage(locale.getDisplayLanguage());
        return message + " " + name;
    }
}

由于该服务依赖于 MessageRepository,请定义…

Spring LDAP 1.2 RC1 发布

发布 | Ulrik Sandberg | 2007年5月13日 | ...

亲爱的 Spring 社区,

我们很高兴地宣布 Spring LDAP 1.2 的第一个发布候选版本,包含许多新功能和错误修复。这里只列出了最重要的部分。有关完整列表,请参阅变更日志。可从此处下载该版本。

  • 实现了 Spring LDAP 的客户端事务支持。有关详细信息,请参阅参考文档(LDAP-29)。
  • 将异常层次结构更改为 JNDI NamingException 层次结构的非受检镜像(LDAP-4)。
  • Spring LDAP 抛出的异常现在始终可序列化,无论其包装的 NamingException 是否可序列化(并非总是如此)(LDAP-14)。
  • 重写了 LdapEncoder.nameDecode() 以解决国家字符问题并移除解析中使用的正则表达式,作为额外的优势,显着提高了 Distinguished Name 的解析性能(LDAP-30)。
  • 内部升级到 Spring 2.0.4。Spring 1.2.x 仍然受支持(LDAP-35, LDAP-51)。

请注意,此版本中进行了一些破坏 API 的更改,主要是包结构的调整。因此,这并非 Spring LDAP 1.1.2 的直接替代品,尽管升级工作量应该不大。请参阅提供的升级指南了解详细信息。

Spring LDAP 团队

Spring Framework 2.0.5 发布

发布 | Juergen Hoeller | 2007年5月8日 | ...

亲爱的 Spring 社区,

我们很高兴地宣布 Spring 2.0.5 已经发布。这是 Spring 2.0 系列中的一个错误修复和增强版本,解决了自 2.0.4 以来报告的所有问题,并进一步改进了并发性。我们建议从所有先前的 2.0.x 版本升级到 Spring 2.0.5。

Spring 2.0 Released

 

请参阅变更日志JIRA 路线图,了解此版本中解决的 63 个问题的全部详细信息。

Juergen Hoeller
Spring Framework 开发负责人
Interface21 - http://www.interface21.com

 

订阅 Spring 新闻通讯

通过 Spring 新闻通讯保持联系

订阅

保持领先

VMware 提供培训和认证,助力您的进步。

了解更多

获取支持

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

了解更多

即将到来的活动

查看 Spring 社区所有即将到来的活动。

查看全部