取舍于得失之间:权衡Java EE 5.0 & Seam & Spring & Yourself
娄弘
2023-12-01
Java EE 5.0明显比它之前的版本都更容易使用,也更加强大。与Web应用程序开发人员最相关的Java EE 5.0平台的两种规范是JSF和EJB 3.0。
JSF和EJB 3.0究竟好在哪里呢?我们需要先认真了解每种规范中的主要概念和特性,然后用JSF和EJB 3.0编写出一个小实例或应用程序,然后并将它与用Java(如Struts和EJB 2.x)编写Web应用程序的旧方法进行比较。这样,我们才会真正才能得到我们应当关注的所出现的问题。Seam是如何使JSF和EJB 3.0变成一个更强大且更方便的组合呢?Seam与Spring又是怎么样的关系呢?这些,都会有大多的争论与取舍。暂且不讨论这些,先看看Seam本身:
JBoss Seam是一个Java EE 5框架。它通过把JSF与EJB3.0组件合并在一起,从而为开发基于Web的企业应用程序提供一个最新的模式。Seam可以让你把EJB组件直接绑定到 JSF 页面。Seam还可帮助你把jBPM流程定义直接地集成到你的应用程序中。
相关的一些资源:
本土:JBoss Seam:[url]http://www.jboss.com/products/seam[/url]
Docs:Seam Document:[url]http://labs.jboss.com/portal/jbossseam/docs[/url]
入门:
一个使用JBoss Seam简化Web开发的Flash演示,可以当做JBoss Seam的入门教学
[url=http://www.jboss.com/products/seam/captivate/SeamHBTools.swf]Example showing you how to generate a CRUD web application from a database using JBoss Eclipse IDE[/url]
进阶:
IBM developerWorks里的专题《[url=http://www.ibm.com/developerworks/cn/java/j-seam/]Seam - 无缝集成 JSF[/url]》
这个系列讲述了 Seam 是真正适合 JSF 的第一个应用程序框架,能够修正其他扩展框架无法修正的主要弱点。阅读该系列的文章,您可以自己判断 Seam 是不是对 JSF 的适当补充。
目前有三篇文章在里面了
1、[url=http://www.ibm.com/developerworks/cn/java/j-seam1/]为 JSF 量身定做的应用程序框架[/url]
JSF 是用于 Java Web 应用程序的第一个标准化的用户界面框架,而 Seam 是一个扩展 JSF 的强大的应用程序框架。本文将发现这两种框架之间的互补性。
2、[url=http://www.ibm.com/developerworks/cn/java/j-seam2/]借助 Seam 进行对话[/url]
借助 Seam 开发有状态的 CRUD 应用程序是件轻而易举的事情。本文向您展示如何使用 Java™Server Faces (JSF) 和 Seam 为基于 Web 的高尔夫课程目录开发创建、读取、更新和删除用例。
3、[url=http://www.ibm.com/developerworks/cn/java/j-seam3/]用于 JSF 的 Ajax[/url]
JSF 基于组件的方法论促进了抽象,但大多数 Ajax 实现由于公开了底层的 HTTP 交换而使之大受干扰。本文展示了如何使用 Seam Remoting API 和 Ajax4jsf 组件与服务器上的受管 bean 通信,就好像这些 bean 与浏览器同在本地一样。
取舍都是在得失之间,请求响应与事件驱动,轻量级与重量级,这些都不重要,重要的仍是取决于自身的权衡与取舍。