读书人

seam、weld跟CDI的关系

发布时间: 2012-10-28 09:54:44 作者: rapoo

seam、weld和CDI的关系

CDI 是Java EE 的JCP规范(JSR-299: Java Contexts and Dependency Injection for the Java EE platform)。

Weld是CDI的参考实现。

Seam 3是一组扩展CDI的模块,提供了超越Java EE 6的功能。

?

??? 两种技术有共同的目标,为Java Web应用提供统一的、上下文有关的编程模型。两者都支持集成EJB和JSF。

?

????However, Seam 3 is a superset of JSR-299. Think of JSR-299 as the core of Seam 3 - it's the basic programming model for your application components, and for the built-in components that make up the Seam framework. Weld is our implementation of this programming model. Based on this programming model, Seam provides a full framework for application development, including integration with various non-standard open source technologies. JSR-299 defines a very powerful framework for portable extensions. Seam 3 is implemented as a set of portable extensions, or modules, for JSR-299, that run in any environment which supports JSR-299 (including any Java EE 6 environment).

?

????Seam will continue to be the vehicle which delivers BPM integration, Seam Security, Drools integration, RESTeasy integration, PDF and email templates, Excel generation, etc. You can think of Seam as the goodies. Seam will also contain improvements for technologies in Java EE such as JSF fixes (yes, still) or Seam-managed persistence.

Keep in mind that CDI is the specification, of which Weld is a full implementation.

读书人网 >软件架构设计

热点推荐