取舍于得失之间:权衡Java EE 5.0 & Seam & Spring & Yourself

JavaEE5.0明显比它之前的版本都更容易使用,也更加强大。与Web应用程序开发人员最相关的JavaEE5.0平台的两种规范是JSF和EJB3.0。

JSF和EJB3.0究竟好在哪里呢?我们需要先认真了解每种规范中的主要概念和特性,然后用JSF和EJB3.0编写出一个小实例或应用程序,然后并将它与用Java(如Struts和EJB2.x)编写Web应用程序的旧方法进行比较。这样,我们才会真正才能得到我们应当关注的所出现的问题。Seam是如何使JSF和EJB3.0变成一个更强大且更方便的组合呢?Seam与Spring又是怎么样的关系呢?这些,都会有大多的争论与取舍。暂且不讨论这些,先看看Seam本身:

JBossSeam是一个JavaEE5框架。它通过把JSF与EJB3.0组件合并在一起,从而为开发基于Web的企业应用程序提供一个最新的模式。Seam可以让你把EJB组件直接绑定到JSF页面。Seam还可帮助你把jBPM流程定义直接地集成到你的应用程序中。

相关的一些资源:

本土:JBossSeam:http://www.jboss.com/products/seam

Docs:SeamDocument:http://labs.jboss.com/portal/jbossseam/docs

入门:

一个使用JBossSeam简化Web开发的Flash演示,可以当做JBossSeam的入门教学

ExampleshowingyouhowtogenerateaCRUDwebapplicationfromadatabaseusingJBossEclipseIDE

进阶:

IBMdeveloperWorks里的专题《Seam-无缝集成JSF》

这个系列讲述了Seam是真正适合JSF的第一个应用程序框架,能够修正其他扩展框架无法修正的主要弱点。阅读该系列的文章,您可以自己判断Seam是不是对JSF的适当补充。

目前有三篇文章在里面了

1、为JSF量身定做的应用程序框架

JSF是用于JavaWeb应用程序的第一个标准化的用户界面框架,而Seam是一个扩展JSF的强大的应用程序框架。本文将发现这两种框架之间的互补性。

2、借助Seam进行对话

借助Seam开发有状态的CRUD应用程序是件轻而易举的事情。本文向您展示如何使用Java™ServerFaces(JSF)和Seam为基于Web的高尔夫课程目录开发创建、读取、更新和删除用例。

3、用于JSF的Ajax

JSF基于组件的方法论促进了抽象,但大多数Ajax实现由于公开了底层的HTTP交换而使之大受干扰。本文展示了如何使用SeamRemotingAPI和Ajax4jsf组件与服务器上的受管bean通信,就好像这些bean与浏览器同在本地一样。

取舍都是在得失之间,请求响应与事件驱动,轻量级与重量级,这些都不重要,重要的仍是取决于自身的权衡与取舍。

相关推荐