Eric Evans 将在 SpringOne! 上发表演讲

工程 | Steven Schuurman | 2007年6月6日 | ...

再次行动 举办一个专门面向不断壮大的 Spring 社区的欧洲会议的想法,早在两年多前就开始讨论了。在 2005 年 JavaPolis 上宣布 SpringOne 的首届(2006 年)会议后,有 400 多人报名参加了此次会议——比我们预期的多了 20% 以上。SpringOne 2006 非常成功。

由于我们在 2006 年会议后收到了大量的积极反馈,许多与会者对会议强烈关注 Spring 和企业 Java 的做法反应非常积极,因此大约 7 个月前,我们决定组织 2007 年的会议。……

更多关于 Java 配置的信息

工程 | Costin Leau | 2007年6月5日 | ...

正如你们大多数人现在已经知道的那样,Spring 不仅仅是关于 XML,因为最近,许多针对核心的“官方”扩展提供了配置容器的替代方法。

Spring Java 配置 1.0 M2 是在 JavaOne 周围发布的 产品 之一,虽然仍然标注为里程碑版本,但它已经进行了大量的更新和错误修复。

  • 根包已更改为 org.springframework.config.java
  • <li>scoped beans are fully supported</li>
    
    <li>the bean name generation can be customized</li>
    
    <li>the distribution contains a 'transformed' sample (petclinic) which uses XML, JavaConfig and Groovy.</li>
    

事实上,1.0 M2 完成的大部分工作是整合对初始公告 收到的反馈……

Spring:简单,而非简陋……

工程 | Alef Arendsen | 2007年6月5日 | ...

在上周的培训中,我第一次使用了 Spring Web Services 的第一个候选发行版。Arjen 发布他珍贵的 RC1 还不到两周的时间,所以向一些与会者展示这个新产品非常棒。

在 Web 服务部分之前,我们做了一点 JMX 和远程调用,展示了 Spring 的导出功能。如你所知,这允许你将任何 Spring 托管的 bean 导出到远程端点或 JMX 注册表,只需少量声明式配置即可。


<bean id="myService" class="com.mycompany.MyServiceImpl">
    <property name…

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,请将指向 https://springframework.svn.sourceforge.net/svnroot/springframework/repos/repo-snapshots/ 的存储库位置添加到你的 POM 中。如果你正在使用任何 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 指出 的那样,我们在产品开发方面非常活跃。在过去的几个月里,我自己写的代码比平时多。(主要是关于实验性的东西,这些东西可能会也可能不会面世,但这很有趣,有时我做的某些事情最终会派上用场。)我花了很多时间与媒体和分析师交谈;这些天我们受到了巨大的媒体关注。媒体/分析师电话可能会让人疲惫,但也可能很有价值,因为这些人很聪明,会提出发人深省的问题……

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 的会议安排在会议的最后一天,星期五时,我不确定会有什么样的结果。我很荣幸今年再次被接受,但我很好奇在为期四天的会议的最后一天,我会看到多少出席者。

事情的进展让我非常满意。当我在星期四的演讲设置处登记时,有 800 人预先注册了我的星期五会议。在我开始演讲前十五分钟,房间已经达到了这个人数。最后,有 1000 名 JavaOne 与会者来到了……的 307-310 号房间。

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 Web Flow Bean 作用域和 JSF

工程 | Ben Hale | 2007年5月8日 | ...

我最近完成了解决 Spring Web Flow 中的一个有趣问题。这个问题(SWF-163)涉及为 Spring Web Flow 的内部作用域添加 Spring 2.0 Bean 作用域支持。实现本身并不那么有趣(毕竟Scope接口很容易实现),但我想要提到如何在你的应用程序中使用这样的东西。

Spring 2.0 作用域

在 Spring 1.x 中,我们有单例和原型 Bean 作用域的概念,但是表示法是固定的,并且使用singleton="[true | false]"的方式不够描述性。因此,在 Spring 2.0 中,这种表示法从 XSD 样式的配置中删除了,现在您会看到一个更清晰的表示法scope="[singleton | prototype | ...]"。Spring 本身添加了三个 Bean 作用域;requestsessionglobalSession,这些与 web 应用程序相关。

使用最新快照的 Spring Web Flow 1.1,我们现在看到三个主要的 Web Flow 作用域的 Bean 作用域,flashflowconversation


<bean id="sale" class="org.springframework.webflow.samples.sellitem.Sale…

获取 Spring 新闻通讯

通过 Spring 新闻通讯保持联系

订阅

领先一步

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

了解更多

获得支持

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

了解更多

即将举行的活动

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

查看全部