领先一步
VMware 提供培训和认证,助您加速进步。
了解更多上个月的 Spring Experience 大会我玩得很开心。一个惊喜是 Spring IDE 团队最近的工作范围之广。我在会议上多次遇到 Spring IDE 开发者 Christian Dupuis,每次他似乎都实现了一个新功能……
即将发布的 Spring IDE 2.0 版本是对 Spring 2.0 新功能的全面更新。Spring IDE 团队在两个重要功能上取得了巨大进展:XML 扩展命名空间和 AOP 增强。(顺便说一句,如果你想知道我为什么有一段时间没发帖了,那是因为我花了大量时间在 InfoQ 上撰写了一篇 Spring 2.0 更新文章。这篇文章深入探讨了 XML、AOP 和核心容器功能。)
考虑到 Spring IDE 的这些改进部分是核心 Spring 团队在 Spring 2.0 中进行的一些不那么显而易见的工作的成果,这一点尤其值得高兴。虽然表面上有很多增强功能,但为了让核心容器更具可扩展性和更易于工具化,也付出了大量努力。Juergen Hoeller 和 Rob Harrop 在幕后做了很多工作,允许将工具元数据添加到 Spring 内部的 BeanDefinition 元数据中,并允许在不实例化 bean 类(甚至根本无法“访问”bean 类)的情况下访问容器配置——这对于实现 Eclipse 插件来说是个问题。Spring IDE 的创始人 Torsten Juergeleit 在增强的 Spring 元数据之上构建了一个稳固的抽象,很高兴看到这现在能够非常快速地为 Spring IDE 添加很酷的功能。我猜 Spring IDE 团队也是非常优秀的技术开发人员,但对于任何 Spring 项目来说,这都是意料之中的!
我将厚颜无耻地引用 Christian 最近的一篇博客文章 来展示一些新功能。
正如你所料,对最新的 Spring 2.0 XML 构造有很好的支持。我最近 写了关于简洁的 p: 命名空间快捷方式的博客,以减少尖括号的使用,Spring IDE 现在也支持这一点,提供属性补全功能。
对我来说,最令人兴奋的新功能是即将推出的对增强的 Spring 2.0 AOP 模型和 aop: 命名空间的支持。这不仅仅是提供相关 XML 标签的补全,还显示了交叉引用——哪些 bean 被哪些 aspect 所通知——其显示方式受到了优秀的 AJDT Eclipse 插件(用于 AspectJ)的启发。
这将完全支持 AspectJ 切入点表达式语言与 Spring 组件模型的交叉结合的强大功能:这是 Spring 2.0 的一个关键增强功能,也是 Spring 独有的强大功能。
希望这也将鼓励 IntelliJ 的开发者改进他们对 Spring 的集成。Spring IDE 使用 Spring 的 AspectJExpressionPointcut 来进行切入点评估和匹配检查,以驱动 UI。因此,它不需要 AJDT,也不局限于 Eclipse。暗示一下——其他 IDE 也可以采用这一点。
Spring IDE 团队也正在努力支持 Spring Web Flow。这个例子展示了编辑 web flows 的样子。
Christian 甚至为 我几个月前在博客中提到的 Spring 的 Java 配置选项 原型化了支持。(他在那个代码首次发布后几天内就完成了这个工作!)当然,Java 配置支持的部分动机是它自动受益于 IDE 工具和强类型,但 Spring IDE 可以更进一步,通过理解 Java 配置类中 bean 创建方法的意义,将它们与其他 bean 一起显示。
祝贺 Spring IDE 团队!请下载最新的构建版本,并给予他们反馈和鼓励。
看到 Christian 以我的博客为灵感来开发新功能,这真是令人 flattered…