日期:2014-05-19  浏览次数:20699 次

取舍于得失之间:权衡Java EE 5.0 & Seam & Spring & Yourself
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:http://www.jboss.com/products/seam
Docs:Seam Document:http://labs.jboss.com/portal/jbossseam/docs

入门:
一个使用JBoss Seam简化Web开发的Flash演示,可以当做JBoss Seam的入门教学
Example showing you how to generate a CRUD web application from a database using JBoss Eclipse IDE

进阶:
IBM developerWorks里的专题《Seam - 无缝集成 JSF》
这个系列讲述了 Seam 是真正适合 JSF 的第一个应用程序框架,能够修正其他扩展框架无法修正的主要弱点。阅读该系列的文章,您可以自己判断 Seam 是不是对 JSF 的适当补充。

目前有三篇文章在里面了
1、为 JSF 量身定做的应用程序框架
JSF 是用于 Java Web 应用程序的第一个标准化的用户界面框架,而 Seam 是一个扩展 JSF 的强大的应用程序框架。本文将发现这两种框架之间的互补性。
2、借助 Seam 进行对话
借助 Seam 开发有状态的 CRUD 应用程序是件轻而易举的事情。本文向您展示如何使用 Java?Server Faces (JSF) 和 Seam 为基于 Web 的高尔夫课程目录开发创建、读取、更新和删除用例。
3、用于 JSF 的 Ajax
JSF 基于组件的方法论促进了抽象,但大多数 Ajax 实现由于公开了底层的 HTTP 交换而使之大受干扰。本文展示了如何使用 Seam Remoting API 和 Ajax4jsf 组件与服务器上的受管 bean 通信,就好像这些 bean 与浏览器同在本地一样。

取舍都是在得失之间,请求响应与事件驱动,轻量级与重量级,这些都不重要,重要的仍是取决于自身的权衡与取舍。
20 楼 江南白衣 2007-09-22  
我的想法比较朴素,目前还是招SSH的人要比EJB3+JSF容易。
21 楼 chinata 2007-09-23  
江南白衣 写道
我的想法比较朴素,目前还是招SSH的人要比EJB3+JSF的人容易。

不喜欢用jboss的东西,虽然俺觉得他们很用功了,但是真的努力有余,才气不足
但是他们的产品线里面的各个部分永远都不是市场上最容易用的那个(从web server到portal到Jboss mq),除非真的需要用到J2EE的大多数方面(EJB和JMS以及各个J2ee标准间的粘合),俺还是宁可自己去拼装一下。
22 楼 DigitalSonic 2007-09-24  
之前看Seam Ref的时候有种感觉,Seam的conversation保存了大量的上下文信息在服务器上,个人认为在这种有状态的情况下想做负载均衡就显得麻烦了点。
至于JSF嘛,没用过所以不太好说,记得最早是被Struts逼出来的,现在应该已经有很大不同了吧,对它的事件驱动有点兴趣。
23 楼 julyboxer 2007-09-24  
呵呵..JSF确实很适合传统的C/S的开发人员转向B/S开发..它的思想就是很自然...才用上它一段时间..发觉不自然的爱上它了...
特别是1.2版本.比以前有了很在的改进...易用性也比Struts好很多..
24 楼 liuzhg 2007-09-24  
No.1 我看上面的人没有用过JSF开发一个应用。
No.2 如果用过JSF,就会明白Seam解决了什么问题。
No.3 如果不了解,请看一下JSR 299.
25 楼 ssuupv 2007-09-25  
我们也装备用jsf+ejb3.0搞新版本的应用了.SSH.总感觉不正统.卖不了好价钱.
26 楼 elvea 2007-09-26  
假如测试那些都可以抛开Jboss,用glassfish等等就好了。
27 楼 kyo100900 2007-09-27  
ssuupv 写道
我们也装备用jsf+ejb3.0搞新版本的应用了.SSH.总感觉不正统.卖不了好价钱.


搞笑,价钱和框架没有直接关系吧,哈哈
28 楼 江南白衣 2007-09-27  
ssuupv 写道
我们也装备用jsf+ejb3.0搞新版本的应用了.SSH.总感觉不正统.卖不了好价钱.


客户居然还关心这个?真是爱好技术的好客户啊,即使是SSH,你也别用Tomcat啊,用一堆Weblogic,Sun V490之类的,就自然水涨船高了。
29 楼 ssuupv 2007-09-28