《Java EE 7精粹》—— 1.2 可交付成果

简介: 在Java EE 7之前,GlassFish服务器开源版3.1.2.2提供了完全兼容Java EE 6的应用服务器。它还提供具备了高可用性和带命令行界面(CLI)的集中管理平台的集群、基于Web的管理控制台和REST管理/监控API。

本节书摘来异步社区《Java EE 7精粹》一书中的第1章,第1.2节,作者:【美】Arun Gupta,更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.2 可交付成果

Java EE 7平台是遵从JCP 2.9作为JSR 342而开发的。JCP过程对每一个JSR定义了以下三个主要可交付成果。

1.2.1 规范(Specification)

描述了被提议的组件及其功能的一份正式的文件。

1.2.2 参考实现(RI)

对被提议的规范的二进制实现。参考实现有助于确保被提议的规范能以一个二进制形式实现,并为规范过程提供不断的反馈。

Java EE的参考实现建立在GlassFish社区中。

1.2.3 技术兼容包(TCK)

用于验证参考实现是否符合被提议的规范的一组测试。技术兼容包使多家厂商可以提供与被提议的规范兼容的实现。

Java EE 7包还定义了跨平台需求的平台规范,还包含以下组件的规范。

1.2.4 Web技术

  • JSR 45:支持其他语言调试1.0。
  • JSR 52:JSP标准标签库(JSTL)1.2。
  • JSR 245:JSP2.3。
  • JSR 340:Servlet3.1。
  • JSR 341:表达式语言3.1。
  • JSR 344:JSF2.2。
  • JSR 353:处理JSON的Java API(JSON -P)1.0。
  • JSR 356:WebSocket的Java API 1.0。

1.2.5 企业技术

  • JSR 236:Java EE并发工具包1.0。
  • JSR 250:Java平台通用注解1.2。
  • JSR 316:托管Bean1.0。
  • JSR 318:拦截器1.2。
  • JSR 322:JCA1.7。
  • JSR 330:Java依赖注入(DI)1.0。
  • JSR 338:JPA2.1。
  • JSR 343:Java消息服务(JMS)2.0。
  • JSR 345:EJB(EJB)3.2。
  • JSR 346:Java EE的上下文和依赖注入(CDI)。

1.2.6 平台1.1

  • JSR 349:Bean验证1.1。
  • JSR 352:Java平台批处理应用1.0。
  • JSR 907:JTA1.2。
  • JSR 919:JavaMail1.5。

1.2.7 Web服务技术

  • JSR 93:用于XML注册的Java API(JAXR)1.0(可选的Java EE 7)。
  • JSR 101:基于XML RPC的Java API(JAX-RPC)1.1(可选的Java EE 7)。
  • JSR 109:实现企业Web服务1.4。
  • JSR 181:Java平台的Web服务元数据包2.1。
  • JSR 222:JAXB 2.2。
  • JSR 224:JAX-WS 2.2。
  • JSR 339:JAX-RS 2.0。

1.2.8 管理和安全技术

  • JSR 77:J2EE管理API1.1。
  • JSR 88:Java EE平台应用部署API1.2(Java EE 7可选)。
  • JSR 115:JACC1.5。
  • JSR 196:JASPI 1.1。
    不同的组件工作在一起提供了一个集成的技术栈,如图1-1所示。

c92a172c0af9a0753b48399e6b30da32cf806e29

不同的组件逻辑上可以分为后端层、中间层和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许可证的持有者有效,用于测试他们各自的实现。

相关文章
|
5月前
|
Java API
Java基础知识:什么是Java平台,包括Java SE,Java EE和Java ME?
Java基础知识:什么是Java平台,包括Java SE,Java EE和Java ME?
59 2
|
12天前
|
存储 Java Linux
【Java EE】 文件IO的使用以及流操作
【Java EE】 文件IO的使用以及流操作
|
12天前
|
存储 安全 Java
【Java EE】CAS原理和实现以及JUC中常见的类的使用
【Java EE】CAS原理和实现以及JUC中常见的类的使用
|
12天前
|
安全 Java 编译器
【Java EE】总结12种锁策略以及synchronized的实现原理
【Java EE】总结12种锁策略以及synchronized的实现原理
|
14天前
|
Java 调度 Windows
【Java EE】多线程(一)
【Java EE】多线程(一)
|
18天前
|
SQL Java 数据库连接
Java从入门到精通:3.1.2深入学习Java EE技术——Hibernate与MyBatis等ORM框架的掌握
Java从入门到精通:3.1.2深入学习Java EE技术——Hibernate与MyBatis等ORM框架的掌握
|
18天前
|
消息中间件 存储 Java
Java从入门到精通:3.1.1掌握EJB、JPA、JMS等Java EE核心技术
Java从入门到精通:3.1.1掌握EJB、JPA、JMS等Java EE核心技术
|
22天前
|
JavaScript Java 测试技术
基于Java的大学生成果登记系统的设计与实现(源码+lw+部署文档+讲解等)
基于Java的大学生成果登记系统的设计与实现(源码+lw+部署文档+讲解等)
20 0
|
2月前
|
分布式计算 安全 Java
Java的三大体系架构:深入剖析Java的三大体系架构,包括Java SE、Java ME和Java EE等
Java的三大体系架构:深入剖析Java的三大体系架构,包括Java SE、Java ME和Java EE等
50 1
|
7月前
|
Oracle Java 关系型数据库
JAVA 那些事 - 聊聊那些易混淆的概念:JVM/JRE/JDK,openJDK/oracleJDK,JAVA SE/JAVA EE/Jakarta EE
JAVA 那些事 - 聊聊那些易混淆的概念:JVM/JRE/JDK,openJDK/oracleJDK,JAVA SE/JAVA EE/Jakarta EE