seam主要属于应用开发框架,隐藏了基础的粘合代码,主要实现无缝集成视图和组件(java bean 和ejb)。提出了web beans 概念并提交jcp审核通过。
seam的核心概念就是把除了视图之外把一切内容都抽象为组件模型进行统一的管理,提供IOC(DI)功能,而且是bijection(双向注入, 在作用域变量和属性之间通过注解双向赋值)
还有一个特点就是号称有状态框架,将所有组件保存在一定的作用域,这样可以实现请求、请求间、业务逻辑间保存信息状态,实现跨请求的信息共享(在session的基础上建立更符合实际需要的新的细分的会话作用域)
seam开发中可以使用的技术组合模型
视图 action 数据处理
POJO 模式
JSF JAVA BEAN HIBERNATE、实体BEAN(示例上hibernate session 可以操作声明为entity的java bean)
EJB 模式
JSF SESSION BEAN JPA、实体bean