Spring 2.0 中的 Before Advice

工程 | Ben Hale | 2006 年 9 月 5 日 | ...

正如大家所知,Spring 2.0 的一大改进是增加了 AspectJ 切点语言以及整体上更好地集成了 AspectJ。虽然我认为大家都相信这从长远来看会带来巨大的好处,但也导致了一些问题。我们发现,Spring AOP 一直以来都有一些 AspectJ 从未有的行为。

出现的一个大问题是 Before advice 的行为。如果你在 Spring 1.x 中使用过 Spring AOP,你可能知道 Spring 允许你在参数传递给目标之前改变其值…

Spring 标准化数量不断增加

工程 | Steven Schuurman | 2006 年 8 月 29 日 | ...

Spring - 将长期存在 我每天拜访许多客户并与更多人交谈。这包括现有的 Interface21 客户以及欧洲各地对我们产品和服务感兴趣的公司。我注意到我进行的对话中有一个重复出现的主题:Spring 已经到来,并且将长期存在。

在过去的一年里,我见证了许多执行层面的决定,这些决定在领先的企业级 Java 开发公司中全面推广了 Spring 的标准化。就在两周前,我问了一个客户——欧洲最大…的 Java 单元经理

创建 Spring 2.0 命名空间?使用 Spring 的 AbstractBeanDefintionParser 层次结构。

工程 | Ben Hale | 2006 年 8 月 28 日 | ...

最近我似乎一直在专注于创建 Spring XML 命名空间。在 XSD 和 Spring 方面都经过了很多反复试验,才找到了创建解析器的良好模式。我遇到的最大困惑之一是 AbstractBeanDefinitionParser 层次结构。目前这方面的文档不是特别完善(但有一个 JIRA 票据,所以会在正式发布前修复),因此我将为你介绍一下你的选择、它们适用于什么场景以及如何使用它们。

AbstractBeanDefinitionParser 的选择

Spring 提供了三种主要的 BeanDefinitionParser 来帮助你解析 XML 命名空间。

我将从最具体的开始,逐步介绍到最通用的,展示如何在需要时获得更大的能力。如果你想跳过示例直接看摘要,请查看此处

验证逻辑(以及我的第一篇帖子!)

工程 | Colin Yates | 2006 年 8 月 25 日 | ...

大家好!

这是我上个月加入 Interface21 以来写的第一篇帖子。我的前一个博客现已正式废弃,我不会再更新它了。

那么我的第一篇帖子(除了自我介绍之外)的主题是什么呢?  验证逻辑。  这不会是一个关于如何在 Spring 框架中执行验证的详细讲解,而是会讨论一个我特别在意的问题 :)

特别地,我想讨论一下验证逻辑中究竟应该包含什么。  这似乎是一个无需思考就能回答的问题;“用于验证指定数据的逻辑”。  好的,这确实是一个无需思考的问题,但请继续往下看 :)。正如你所知,Spring 框架通过 Errors Validator 接口为你的验证提供了一个很好的抽象层。  特别是 Validator,你可以在其中将特定业务的验证规则应用于填充好的领域对象。  Spring 优秀的绑定支持负责更新你的领域模型…

Steven 的 biz.blog 有了新家

工程 | Steven Schuurman | 2006 年 8 月 13 日 | ...

大家好,

这只是一个简短的条目,想告诉大家我已正式将我的 biz.blog 迁移到这里,我们的新 Interface21 团队博客。  我很高兴这个群组博客将作为 Interface21 的声音。  对于认识我的人来说,你们知道会看到一种不同视角

我有一些保存的草稿正在处理。请留意即将发布的提供 Interface21 业务方面见解的新条目...

在那之前,Steven

消息驱动的 POJO!

工程 | Mark Fisher | 2006 年 8 月 11 日 | ...

在所有新的 Spring 2.0 特性和改进中,我必须承认消息驱动的 POJO 是我个人最喜欢的一个。我感觉很多其他 Spring 用户也会有同感。

在这里我提供一个快速介绍。还有很多内容可以展示,我将在后续帖子中跟进。不过现在,这应该能为你提供足够的信息,以便使用一些真正的基于 POJO 的异步 JMS 快速上手!我希望你们和我一样对此感到兴奋 ;)

先决条件

你的 classpath 中需要包含以下 JAR 文件。我也列出了我使用的版本(任何 spring-2.x 版本应该都可以。事实上我刚刚在两分钟前把 RC3 放了进去)

  • activemq-core-3.2.2.jar
  • concurrent-1.3.4.jar
  • geronimo-spec-j2ee-managment-1.0-rc4.jar
  • commmons-logging-1.0.4.jar
  • log4j-1.2.9.jar
  • jms-1.1.jar
  • spring-2.0-rc3.jar

设置环境

首先,我们需要设置环境。我将使用 ActiveMQ,但更换提供者的影响将仅限于修改此文件。我将此文件命名为“shared-context.xml”,因为正如你很快会看到的,我将为 JMS 通信的两端导入这些 bean 定义。以下是“共享”的 bean 定义:连接工厂和两个队列(一个用于请求,一个用于回复)


<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans 
                           http://www.springframework.org/schema/beans/spring-beans.xsd">
	
    <bean id="requestQueue" class="org.activemq.message.ActiveMQQueue">
        <constructor-arg value="requestQueue"/>
    </bean>
 
    <bean id="replyQueue" class="org.activemq.message.ActiveMQQueue">
        <constructor-arg value="replyQueue…

使用 Spring 2.0 和 AspectJ 简化企业应用

工程 | Adrian Colyer | 2006 年 8 月 10 日 | ...

我为 InfoQ 网站写的一篇文章刚刚发布:使用 Spring 2.0 和 AspectJ 简化企业应用

我听过一些人说“AOP 太难了”,或者“AOP 使事情变得过于复杂”。从某种程度上说,这篇文章正是为了反驳这些观点而写的(因此标题是“简化企业应用开发”)。我的意思是,AOP 的全部意义在于,你将变得复杂和纠缠不清的软件,通过引入切面,让每个模块再次拥有单一职责,从而简化实现。然后当然对于一些…

在 Spring 中使用 JPA 而不引用 Spring

工程 | Ben Hale | 2006 年 8 月 7 日 | ...

Spring 2.0 添加了对 JPA 数据访问标准的支持,并包含了所有预期会有的标准 Spring 支持类。Mark Fisher 有一篇关于如何使用这项新支持的精彩帖子。然而,我们不断收到的一个问题是,为什么有人会想使用 Spring 类 (JpaTemplate) 来访问 EntityManager。这个问题的最佳答案在于 JpaTemplate 提供的附加价值。除了提供作为 Spring 数据访问标志的一行式便捷方法之外,它还提供了自动事务参与和从 的转换

关于 Spring 的 10 个常见误解

工程 | Mark Fisher | 2006 年 8 月 4 日 | ...

昨天有几篇与即将出版的 Beginning Spring 2 一书相关的帖子,我想在这里指出它们。

首先,由于这本书会引起 Spring 新手或只是当前对此好奇的人的兴趣,我们决定最好加入一些关于 Spring 常见误解的讨论。这些内容已发布在此处
http://www.oreillynet.com/onjava/blog/2006/08/ten_common_misconceptions_abou.html
以及 Apress 博客上:http://ablog.apress.com/?p=1221



其次,Interface21 的 Steven Devijver,本书不知疲倦的主编,发布了一篇精彩的概览
http://blog.interface21.com/main/2006/08/03/finishing-beginning-spring-2-from-novice-to-professional/.


本书 Beginning Spring 2: from Novice to Professional 将于今年十月上市。虽然它旨在为 Spring 新用户提供一个温和的入门,但即使你已经使用 Spring Framework 一段时间了,它对于“填补空白”也将非常有用。换句话说,这本书涵盖了许多内容:Spring 容器、AOP、数据访问、MVC 等等。内容包括许多新的 Spring 2.0 特性——最值得注意的是,有一整章探讨 Spring 在 AOP 方面新的和改进的方法,例如基于 XSD 的 AOP 命名空间、与 AspectJ 切点表达式语言的集成以及 @AspectJ 集成!(别担心,Spring 2 向后兼容——迁移路径也很容易)。书中自始至终提供了理论和示例的实用平衡。这些示例都基于一个有趣的示例应用程序(不过于简单)。当 Steven 请我贡献一些练习时,我个人很高兴——这是他为初学者提供优质资源的又一个绝妙想法。第一组练习详细讲解了从基本接线到使用 FactoryBeans 和外部化属性文件的多种依赖注入技术。第二组练习专注于 AOP——包括新的命名空间和 @AspectJ 风格。

我们期待在书本发布后有一个活跃的配套网站,当然你也可以继续在 Interface21 团队博客找到许多关于 Spring 2.0 特性的精彩讨论和示例。

十二月在佛罗里达州好莱坞体验 Spring

工程 | Keith Donald | 2006 年 8 月 3 日 | ...

在过去的一个月里,Jay Zimmerman 和我一直在努力规划 The Spring Experience 2006 (TSE)。创建一个一流的技术大会并非易事——需要花费数小时才能找到演讲者和内容的完美组合。

我很自豪地说,我们现在已准备好启动这场前所未有的盛会。请查看详情

The Spring Experience 2006

我希望在那里见到你。以下是我认为这场活动独一无二的地方
  • 为期三整天,在五星级海滩度假村举行,分为 5 个专题,共 55 场九十分钟的会议。
  • 关于 Spring 2.0 的独家优质技术内容。 半数会议由核心 Spring 开发者主持,他们深入地应用最新的 Spring 功能。这包括 Rod Johnson、Juergen Hoeller、Adrian Colyer、Rob Harrop、Colin Sampaleanu、Ben Alex、Arjen Poutsma、Erwin Vervaet,以及本人。
  • 来自领先 Java 软件创新者的前沿会议。 这包括 Eclipse RCP 和 Equinox 项目负责人 Jeff McCaffer;Groovy 项目负责人 Guilluame LaForge;JMX 负责人 Eamonn McManus;BEA Kodo JPA 负责人 Patrick Linskey,以及 Java 持久化架构 (JPA) 负责人 Mike Keith。
  • 大会后所有会议同步音频幻灯片的特权访问,让你不错过任何精彩瞬间。
  • 注册包含全套早餐、午餐和晚餐。
  • “与大师面对面”用户 BOF。 Spring 用户与 Spring 项目负责人互动的绝佳机会。
  • 两次超棒派对,一次在周五晚上,一次在周六下午的海滩派对,还有一场 Spring 用户 vs 开发者的排球比赛。
  • 炫酷的大会赠品。 而且有很多。注册参会者将获得全方位会议通行证、定制(非常酷)的 TSE 笔记本电脑包、定制设计的笔记本活页夹、限量版 TSE 2006 T 恤,甚至还有一条官方的 TSE 2006 沙滩毛巾。你还有机会赢得 iPod 和 XBox 360。
  • 多样性。无论你是硬核企业开发者、Web 应用开发者,还是领先的软件架构师,这场大会都能满足你。去年大会吸引了来自 20 个国家的 250 人。今年我们预计将有来自 25 个以上国家的 500 名参会者。这将是一场充满乐趣、学习和交流的绝佳机会。
没有比十二月在佛罗里达州好莱坞更好的地方了。在 The Spring Experience 2006 与你和你的团队见面!

获取 Spring 新闻通讯

订阅 Spring 新闻通讯保持联系

订阅

抢先一步

VMware 提供培训和认证,助力你快速提升。

了解更多

获取支持

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

了解更多

即将举行的活动

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

查看全部