JBoss Seam Web入门
根据JBoss的官方网站的介绍,JBoss Seam 是一个“为java ee 5.0量身定制的轻量级的框架”。这是什么意思呢?难道java ee(企业版)5.0本身不是一套“框架”吗?为什么在官方规范之外还需要另外一个框架呢?简单地说,我们把seam看成本应该包括在java ee 5.0中的一个“遗漏的框架”。它位于java ee 5.0框架的上层,为所有在企业web应用中的组件提供一个一致的、易于理解的编程模型。它同样使得基于状态的应用程序和业务流程驱动的应用程序的开发易如反掌。换句话说,seam的一切都是围绕开发者的开发效率和应用扩展性而存在的。
JBoss Seam Web应用开发还将介绍seam如何使开发变得容易,并通过几个web应用程序的例子进行阐明。但是在接触具体的代码例子之前,首先解释seam到底是做什么的,其关键的设计原则有哪些。这样可有助于更好地通过贯穿JBoss Seam Web应用开发的应用程序实例理解seam是如何工作的。
整合和强化java ee框架
java ee 5.0的核心框架是ejb(enterprise javabeans)3.0和jsf(javaserver faces)1.2。ejb 3.0是在plain old java objects(pojo)的基础上为业务服务和数据库的持久化而开发的轻量级框架;jsf则是为web应用而开发的基于model.view.controller(mvc)组件的框架。大多数java ee 5.0 web应用都包含业务逻辑的ejb 3.0模块和web应用前端显示的jsf模块。不过,尽管ejb 3.0和jsf互为补充,但它们还是根据各自的理念设计或独立的框架。例如,ejb 3.0使用注解配置服务,而jsf则用xml文件进行配置,并且ejb 3.0和jsf组件在框架层面是互不敏感的,要想使ejb 3.0和jsf一起工作,就需要开发者手动构造facade对象(如:jsf支持bean),将业务组件与web页面和样板代码(又名管道代码,plumbing code)进行绑定,以便实现跨框架调用方法,有效地把这些技术集成在一起是seam的职责之一。
seam打破了ejb 3.0和jsf间的人为屏障,为整合ejb 3.0和jsf提供了一个统一的、基于注解的解决方法。通过几个简单的注解,seam中的ejb 3.0业务组件能够直接用来支持jsf web表单或直接处理web ul事件。有了seam,开发者就可以为所有的应用组件使用带有注解的poj0。
【编辑推荐】