OpenSymphony的组件介绍 之 Quartz

Quartz是一个实现任务定时调度的框架,原先是一个独立的project,今年一月份并入OpenSymphony,它提供了简单易用的接口,实现了可调度任务的接口,并实现了强大的任务调度运行时(可以独立运行、可以作为EJB部署于容器中、本身支持cluster,等等)。这里是ONJava上的一篇介绍相关问题的文章,TheServerSide上也有关于这篇文章的相关讨论

OpenSymphony的组件介绍 之 SiteMesh

OpenSymphony的logo写着“Quality Components”,主页上还说:

OpenSymphony is an Open Source project dedicated to providing enterprise class J2EE components. Our components aim to stress simplicity, integration, pluggability and specification compliance.

而OS出品的components也确实都很有意思,尤以其突出的简单易用和可插拔的灵活性见长。不过很遗憾,国内使用的还不是很多,所以我一直在搜索好的介绍OS components的入门文章。

OS的SiteMesh是一个用来在JSP中实现页面布局和装饰(layout and decoration)的框架组件,能够帮助网站开发人员较容易实现页面中动态内容和静态装饰外观的分离。今天在java.net找到一篇关于SiteMesh的文章,有兴趣的可以参考。

AspectJ’s New Plan

AspectJ在v1.1.1版本发布之后基本上停止了新功能的开发,转向1.2版本的目标和计划。由于计划2004年6月发布的Eclipse 3把J2SE 1.5(Tiger)支持作为核心feature,所以新的AspectJ当然也要支持J2SE 1.5。另外,从这个版本的开发计划中可以看出,AspectJ的下一步主要是向主流产品靠拢,以提高实用性和生产力为主要目标,例如它的功能列表主要要点包括(按Eclipse社区的习惯划分为strong candidates和potential candidates):

Strong Candidates for 1.2

Highlights include(see full list of planned features here):

  • weaving class loader support
  • improve performance and memory usage for compile/weave and runtime
  • provide documentation and samples for using AspectJ with popular J2EE servers
  • allow the specification of input directories (not just jars) for binary weaving
  • enhancements to IDE support for incremental structure model

Potential Candidates for 1.2

Highlights include(see full list of potential features here):

  • pertype aspect instantiation model
  • class attributes in type patterns
  • support for context information in declare error/warning messages
  • user specifiable exception in declare soft
  • serial version uid support

毫无疑问,令人期待的版本,毕竟到目前为止,AOP要在real world的应用系统中使用还是有很多问题的,但是一旦能够很好的支持诸如binary weaving的特性,又能和主流中间件、IDE良好集成,那么离真正解决cross-cutting问题的目标就很近了。

IDEA和OptimizeIt的集成

IDEA的webapp的配置和调试界面远比JBuilder来的清晰和简洁,但是OptimizeIt是Borland买下的,跟JB配合很好,而 IDEA好像还没有这种插件,但是其实研究一下OptIt在Tomcat的启动脚本就可以知道其实这种集成是很简单的。

(more…)

The HelloWorld of AOP

终于,AOP系列的第一弹终于出来了,感觉这个东西主要是证明了“Hello world”情结对软件从业人员的影响之巨大。。。

文中使用了这篇文章中的示例和部分分析,特此致谢。

(more…)

AOP

最近又有点时间研究一下真正的技术了。第一站是时下的大热门——AOP。

AOP=Aspect Oriented Programming(翻译不能 -_-bbb “面向表面的编程”??想打自己一嘴巴……)

(more…)