本节书摘来异步社区《Java EE 7精粹》一书中的第1章,第1.2节,作者:【美】Arun Gupta,更多章节内容可以访问云栖社区“异步社区”公众号查看。
Java EE 7平台是遵从JCP 2.9作为JSR 342而开发的。JCP过程对每一个JSR定义了以下三个主要可交付成果。
描述了被提议的组件及其功能的一份正式的文件。
对被提议的规范的二进制实现。参考实现有助于确保被提议的规范能以一个二进制形式实现,并为规范过程提供不断的反馈。
Java EE的参考实现建立在GlassFish社区中。
用于验证参考实现是否符合被提议的规范的一组测试。技术兼容包使多家厂商可以提供与被提议的规范兼容的实现。
Java EE 7包还定义了跨平台需求的平台规范,还包含以下组件的规范。
1.2.6 平台1.1
JSR 349:Bean验证1.1。JSR 352:Java平台批处理应用1.0。JSR 907:JTA1.2。JSR 919:JavaMail1.5。不同的组件逻辑上可以分为后端层、中间层和Web层三层。这仅仅是一种逻辑上的表述,可以根据应用程序的要求,将组件限定到一个不同的分层中。JPA和JMS用于提供基础服务,比如数据库访问和消息传送。JCA用于连接遗留系统。Batch用于执行非交互式的,面向批量的任务。托管Beans和EJB提供了一个简化的编程模型,该模型使用POJO来使用基础服务。CDI、拦截器(Interceptors),以及通用注解(Common Annotations)提供的概念适用于各种各样的组件,比如类型安全的依赖注入、使用拦截器和一组通用的注解访问横切面关注点。并发工具包(Concurrency Utilities)用于在管理线程中运行任务。JTA启用的事务拦截器可用于任意的POJO。CDI Extensions允许以标准方式扩展平台,使其超越现有的能力。Web服务使用JAX-RS和JAX-WS、JSF、JSP和EL表达式为Web应用程序定义编程模型。Web Fragments天然地支持第三方Web框架的自动注册。JSON提供了在Web层解析和生成JSON数据结构的方法。WebSocket允许建立一条双向的、全双工通信的TCP连接通道。Bean验证(Bean Validation)提供了跨技术的约束声明和验证的标准方式。Java EE 7中删节了JAX-RPC(JSR101)、JAXR(JSR93)、EJB实体Bean(JSR153的一部分)和Java EE Application Deployment(JSR88)。
Java EE的参考实现建立在GlassFish社区中,GlassFish服务器开源版4.0提供了完全兼容Java EE 7的、自由和开源的应用服务器。
在Java EE 7之前,GlassFish服务器开源版3.1.2.2提供了完全兼容Java EE 6的应用服务器。它还提供具备了高可用性和带命令行界面(CLI)的集中管理平台的集群、基于Web的管理控制台和REST管理/监控API。
TCK对所有Java EE许可证的持有者有效,用于测试他们各自的实现。