Java™ EE 6 提供了一些此发行版支持的新功能部件或增强功能部件。
Web Service
- Web Service 提供了对编写 XML Web Service 客户机应用程序的支持。
- 您可以使用简单注释将 API 公开为 .NET 互操作 Web Service。
- Java SE 6 添加了新的解析和 XML 至 Java 对象的映射 API,这些解析和 API 先前只在 Java EE 平台实现或 Java Web
Service 包中可用。
JDBC 增强功能
- Java SE 6 开发套件包括纯 Java JDBC 数据库和基于 Apache Derby 的 Java DB。
- JDBC 包括已更新的 JDBC 4.0 API,该 API 包含许多重要改进,其中包括对 XML 作为 SQL 数据类型的特殊支持以及更好地集成了二进制大对象 (BLOB) 和字符大对象 (CLOB)
- 在 Java 6 中,您不再需要显式装入 JDBC 类。代码行:Class.forName("oracle.jdbc.driver.OracleDriver") 已替换为简单声明:Connection conn
= DriverManager.getConnection("jdbc:derby:TestDB");
监视和管理
- Java EE 6 改进了 Java 监视和管理控制台(即 JConsole)。
- JConsole 的图形外观已得到改进;您现在可以在同一 JConsole 实例中监视几个应用程序,并且摘要屏幕已得到重新设计。
- 在 Java 6 中,您可以监视在 Java 6 虚拟机中运行的任何应用程序。
- Java 6 也随附了复杂的线程管理和监视功能。
- OutOfMemoryError 将不仅仅是让您猜测;它将打印完整的堆栈跟踪,以便您可以知道可能导致问题的原因。
管理文件系统
- Java 6 为您提供了对本地文件系统的更细致的控制。
- java.io.File 类具有下列三个新方法以确定给定磁盘分区上的可用空间量(以字节计):
- 现在,java.io.File 类具有一组功能,这些功能允许您使用 Unix chmod 命令根据需要在本地文件系统中的文件上设置可读、可写和可执行标记。
安全性
- 用于创建和处理数字签名的 XML 数字签名 (XML-DSIG) API 受支持。它还添加了各种用于访问平台本机的安全服务的新方式,其中包括
- Microsoft Windows 上的本机公共密钥基础结构 (PKI) 和加密服务(适用于安全认证和通信),
- Java 类属安全性服务 (Java GSS) 和 Kerberos 服务(适用于认证),
- 对 LDAP 服务器的访问权限(适用于对用户进行认证)。
Java EE 6 API 中的更改
WebBeans 1.0:这是在 Java EE 6 中开发的最具创新的其中一个 API,WebBean 填充了 Java EE 中的一些空白。
WebBeans
- 将 JSF、JPA 和 EJB 3 编程模型统一到单个、良好集成的平台中。WebBeans 会将 EJB 3 Bean、JPA 实体和 JavaBeans 注册为 WebBeans 组件,这些组件可通过 EL 进行访问并且彼此之间都是可注入的。
- 向平台引入了稳固的依赖关系注入功能。
- 通过添加用于将拦截器绑定至注释(而不必将拦截器绑定至目标对象类本身)的功能,增强了 Java EE 拦截器模型。
EJB 3.1:在添加有意义的业务组件服务时,EJB
3.1 继续使 EJB 尽量简单。EJB 3.1
- 使业务接口变为可选,即使对于会话 Bean 也是如此。
- 添加单独 Bean 的概念。因为它们旨在用于管理共享应用程序状态,所以它们在缺省情况下完全是线程安全的;同时,EJB 3.1 添加了声明式并行控制提高灵活性。
- 添加对定时执行样式调度的支持。
- 添加通过 @Asynchronous 注释以异步方式调用会话 Bean 方法的功能。
- 引入了 EJB 3.1 Lite 的概念,以添加适合于 Web 概要文件的 EJB API 的较小子集。虽然 EJB Lite 包括诸如事务以及安全等功能,但它不包括诸如消息传递、远程处理和调度等功能。
- 引入了标准 JNDI 名称:java:global/app/module/beah#interface。
JPA 2.0:在 Java EE 6 中,JPA 已作为不同的 API 与 EJB 正式分开。JPA 2.0
- 添加了一些 ORM 映射增强功能,例如使用 @ElementCollection 注释对集合、映射和列表进行建模的能力以及映射单向一对多关系的能力。
- 同时增强了 EntityManager 和查询 API,以支持下列功能:检索第一个结果、指定查询结果的最大大小、获取对特定于供应商的底层实体管理器和查询对象的访问权限以及悲观锁定。
- 通过与 SQL 类似的 CASE、NULLIF 和 COALESCE 增强了 JPQL
- 添加标准 API。
Servlet 3.0:Servlet 3.0 包含 Java EE 5 模型。Servlet 3.0
- 引入了诸如 @WebServlet、@WebFilter 和 @WebListener 等注释。
这将减少 web.xml 配置,直到可以将其整体移除。
- 引入了 Web 片段的构想。有关更多信息,请参阅:创建 Web 片段项目。
- 添加了通过 ServletContext 以编程方式添加 Servlet、过滤器和侦听器的能力。
- 遵循 EJB 3.1,使部署描述符成为可选项。
- 提供了对 Web 3.0 项目中 EJB 3.0 和 3.1 Bean 的支持。
JAX-RS 1.1:JAX-RS 1.1 是 JAX-WS 的 REST 对应项。JAX-RS 1.1
- 使用 @Path 注释来确定可用于访问 JAX-RS 资源的 URL。
- 映射来自源(例如 URL 查询参数、URL 的一部分、cookie 和 HTTP 头值)的输入。
- 使用 @Produces 注释指示 JAX-RS 返回值的内容类型是 text/xml 和 text/json 之类的类型。
- 与 Servlet、WebBeans 和 EJB 集成