最近发行了Java标准版本6.0的(Java SE 6,也称作Mustang)的beta版。我下载并测试了这个版本,在可试用的第一时间内,我深深地为其新的桌面特征所打动。除了适合于所有的Java平台("2"被删除了)的新的命名惯例外,在许多新特征的改进方面值得我们去深入研究。这些改进可以被划分成两部分:桌面应用和内核方面。
为了支持Java脚本编程,Java SE 6支持JSR 223,这是一种提供了到Java内部进行存取的脚本语言的框架标准。你可以定位脚本引擎并且在运行时调用它们以运行脚本。该脚本编程API答应你为选择的脚本语言提供Java支持。此外,该Web脚本框架答应脚本代码在任何Servlet容器内生成Web内容。
对于Solaris 10用户来说,Hotspot JVM for Solaris针对Solaris DTrace系统调试工具提供了钩子机制以跟踪和显示内部JVM活动,例如垃圾收集、类加载、线程、锁机制等。我在JavaOne上面得到有关这方面特征的第一个演示程序,并因此为DTrace系统所提供的调试深度所深深吸引。当一个应用程序运行时,DTrace答应你在任何一处停止代码,观看所有已经加载的库(而不仅仅是Java库,也包括所有系统库),并且能够单步跟踪到Solaris内核中(直到硬件层)。Java对于这种高级调试工具的新的支持使该工具非常适合于系统级上的调试。我现在还记得以前在JVM中出现Solaris Signal-8错误时的情况,假如当时有这种支持,那将会节省我大量的分析时间。
(三) Web服务
Java SE 6包括一些新的API以支持Web服务开发。其中,xml数字签名API答应你保护基于Java的Web服务——通过执行针对XML数据的加密操作。Java-XML Web服务(JAX-WS)2.0 API对以前命名为JAX-RPC的部分作了进一步更新。对于Java-XML绑定(JAXB)2.0的改进包括了对XML模式的支持和把类绑定到特定模式上。最后,针对于XML的流式API(StaX)提供了一种双向的API以便经由事件流读写XML-包括跳过节的能力以及能够直接针对文档的子节进行操作。
(四) 安全性
Java SE 6中增加的安全方面的功能包括GSS/Kerberos集成,Java认证和针对LDAP认证的授权服务(JAAS),还有一个安全证书请求框架-它答应Java应用程序通过许多协议来请求安全证书。
三、 桌面特征和改进
长期以来,Java被认为是一种基于服务器端软件的优秀语言,但是只能作为一种二流的桌面GUI应用开发工具。Sun的Java桌面开发小组一直在致力于改变这种局面。在Java SE 6忠他们成功的把Java与其所运行的主机系统更紧密地集成到一起,这导致的结果是,不仅使Java SE 6在GUI性能方面得到很大的改进,而且也大大改进了Java GUI应用程序的行为。