java seam 框架简介

Seam远比传统的web框架,如Struts,涉及的范围更广范,最好把它说成是一个应用堆栈(application stack)。

Seam应用堆栈包括框架、类库、构建脚本以及项目生成器、IDE集成、基础测试类、可嵌入的JBoss容器,而且与许多技术集成。

java seam 框架简介

为了了解为什么创建Seam,你需要知道它所面临过的挑战。
尽管Java EE 5的发布已经为向着企业级Java开发建立敏捷平台前进了一大步,但是它在JSF管理的web层组件和JEB3管理的业务层组件之间留下了一个相当大的鸿沟,
因此需要一个将二者连接起来的桥梁纽带。

Java EE 5规范为了创建基于web的业务应用,合并了两个关键组件架构(用于创建可重用对象的规范),:Java Server Faces(JSF) 1.2和Enterprise JavaBeans(EJB)3。
JSF是一个web层的标准表现框架,它提供了用户界面组件模型和服务器端的事件模型。
EJB3是一个标准的编程模型,它用来创建安全的、可以访问事务资源的可扩展业务组件。
EJB3也包括Java Persisten API(JPA),JPA定义了在关系数据库和Java实体类之间传输数据的标准持久化模型。

除了都是Java EE5的规范之外,刚才说的两个架构几乎没有相似之处,两者就像硬币的正反面。
这种沟通障碍为各有着巨大潜力的技术蒙上了一层阴影。
尽管开发人员能够使这两中Java EE层之间共同协作,但是这需要许多“粘结”代码。
Seam担负起了这个职责,使JSF和EJB 3能够彼此一致,这“熨平”了Java EE5规范中最粗糙的一点,并填补了Java EE平台演化过程中完全缺少的一个环。