您的位置:首页 > 编程语言 > Java开发

下一代 Java Web 开发的王者

2007-11-11 22:06 141 查看
为什么是Seam是下一代Java Web开发的王者?
Seam是一个Java EE 5.0 环境下的轻量级的开发框架,Seam基于Java EE 5.0 并且提供了如下的功能:
1. 一站式的框架,
以往我们谈到程序开发的框架,例如Struts,Hibernate,Spring,等都是服务于程序开发的一个方面,或者说一个层面的,例如Struts通常用来简化表示层的开发,Hiberante通常用来处理数据访问,而Spring通常用来把不同的框架粘合起来;Seam不同在于Seam提供了所有的这些内容,使用JSF作为表示层,EJB3中的Entity Bean作为数据存储层,使用Stateless Bean集合了JSF和Entity Bean,并且Seam提供了对JSF,EJB3等规范的扩展。
2. 基于标准的
Seam基于Java EE 5.0 标准,使用了标准中定义的JSF和EJB3.也许现在由于各个应用服务器厂商保护投资的必要JavaEE 5.0 的服务器还没有普及,但是这是一个趋势,使用基于规范的技术会获得服务器更好的支持。
3. 集成AJAX
使用JBoss的RichFaces和ICEFaces,可以不使用JavaScript编码而达到你想要的AJAX效果。
4. 集成业务流程管理(BPM)
Seam集成了JBoss的jBPM,可以方便的处理业务流程。
5. 声明性的状态管理
可以使用声明的方式处理事务,安全,甚至是持久化上下文(Persistence Context)
6. 双向依赖注入(bijection)
在其他的很多框架中都浅雕依赖注入,Seam不但提供了注入,而其提供了注出。除了能使用外部定义的服务,内容外,还可以将内部的状态注出到外部组建。
7. 工作区管理和多窗口浏览(Workspace management and multi-window borwsing)
用户可以在浏览器的不同tab之间切换,Seam可以识别一个用户的多个Tab的Session。
8. 多用标注(Annotation)少用XML
Seam不但支持传统的XML的配置方式,而且更支持JDK 5所引入的Annotation
9. 简单的处理集成测试
Seam都是使用POJO对象,所以很容易测试
10. 补充完善了Java EE 规范的不足
例如JSF不方便处理GET类型的请求,而Seam做了对应
11. Seam让你的Web应用更完善
Seam支持PDF,JFreechart等多种类型的输出。
Seam支持JPA,Hibernate3访问数据库,支持EJB Timer Service,Quartz处理定时任务,支持jBPM处理业务流程,以及Mail,JMS等。
Seam与其他Java EE技术的关系如下图所示:



使用Seam开发Java Web应用
学习Seam需要的一些基础

第一部分

第一章, Seam介绍
第二章,一个简单的Seam应用程序分析
第三章,使用Seam Gen构建程序开发框架

第二部分

第四章,基于状态的Web项目的开发
第五章,短会话(Conversation)
第六章,并发短会话(Concurrent Conversation)
第七章,事务处理

第三部分

第八章,校验输入
第九章,数据表
第十章,Seam处理JSF的Http Get操作
第十一章,Seam CRUD 程序
第十二章,异常处理

第四部分

第十三章,Seam中的AJAX支持
第十四章,RichFaces & ICEFaces
第十五章,最底层的JavaScript

第五部分

第十六章,Seam & jBPM
第十七章,Pageflows
第十八章,Rule-Based 安全框架
第十九章,集成Testng测试
第二十章,其他

Seam 常见问题解决&方法

对于Seam我不了解,想一边学习一边将介绍补充上去。所以现在根本没有提纲/目录的概念所以九借用了,Michael JunTao Yuan的《JBoss Seam simplicity and power beyond java ee》这本书的提纲。Michael的blog在如下的位置,大家可以参照。后期随着我对Seam的理解,我肯定会慢慢的修改上述章节的名字,内容和布局。

Michael的blog http://www.michaelyuan.com/blog/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: