CommonJ中主要包括了以下几个部分:
(1) SCA:Service Component Architecture,主要用来简化SOA系统的开发。
(2) SDO:Service Data Objects,主要用来简化数据访问,并且提供一个统一的数据访问模型。
(3) Work Manager and Timer:主要用来提供在Servlet与EJB中处理多线程与定时器的功能要求。
(4) Enterprise Metadata Discovery,主要用于提供JCA(Java连接器体系)下元数据的发现功能。
目前,在SCA 中也使用了WMT的内容。
由于J2EE规范的限制,在Servlet和EJB中执行用户自定义的多线程并发与定时器服务一直以来是困扰J2EE开发人员的一个大问题。现在CommonJ项目中的Work Manager和Timer规范将是解决这些问题的一个优秀方法。
Work Manager规范为在应用服务器中支持并发任务的执行提供了一些简单的接口。通过这些接口,我们可以方便的在Servlet和EJB中执行并发的计划任务。有了多线程并发的支持,我们的服务端程序可以取得更高的呑吐量,并且缩短服务端程序的响应时间。在具体应用中,应用程序主线程将一些可以并发的任务分解为多个子项,将这些子项提交到Work Manager去并发执行,主线程处于等待状态, Work Manager将任务子项处理完毕后,主线程得以继续执行,并处理任务子项所返回的结果。
定时器(Timer)规范提供了一个在Servlet和EJB中设置定时器的简单方法,同时允许在Servlet和EJB中响应定时器的提醒。该规范提供了一个在不能或者不方便使用java.util.Timer环境中使用定时器功能的替代方法。