JDK1.6的新特性
1.DeskTop类和SystemTray类
前者用于调度操作系统中的一些功能,例如:
- 可以打开系统默认浏览器指定的URL地址;
- 打开系统默认邮件客户端给指定的邮箱发信息;
- 用默认程序打开或编辑文件;
- 用系统默认的打印机打印文档。
Desktop desk=Desktop.getDesktop(); desk.browse(new URI("http://www.google.com/")); desk.open(file) desk.print(file)
后者可用来在系统托盘区创建一个托盘程序。
2.使用JAXB2来实现对象与XML之间的映射
JAXB是Java Architecture for XML Binding的简写。JAXB是一个业界的标准,是一项可以根据XML Schema产生Java类的技术。JAXB提供了快速而简便的方法将XML模式绑定到Java表示,从而使得Java开发者在Java应用程序中能方便地结合XML数据和处理函数。
原来JAXB是Java EE的一部分,在JDK6中,SUN将其放到了Java SE中。
3.StAX
StAX是JDK1.6中除了DOM和SAX之外的有一种处理XML文档的API。
StAX是The Streaming API for XML的缩写。由于JDK6.0中的JAXB2和JAX-WS 2.0都会用到StAX,所以Sun决定把StAX加入到JAXP家族当中来,并将JAXP的版本升级到1.4.
JDK6里面JAXP的版本就是1.4。JAXP是Java API for XML Processing的英文字头缩写,中文含义是:用于XML文档处理的使用Java语言编写的编程接口。
4.使用Complier API
现在我们可以用JDK1.6 的Compiler API动态编译Java源文件,Compiler API结合反射功能就可以实现动态的产生Java代码并编译执行这些代码,有点动态语言的特征。
这个特性对于某些需要用到动态编译的应用程序相当有用, 比如JSP Web Server,当我们手动修改JSP后,是不希望需要重启Web Server才可以看到效果的,这时候我们就可以用Compiler API来实现动态编译JSP文件。
5.轻量级的Http Server API
JDK6 提供了一个简单的Http Server API,据此我们可以构建自己的嵌入式Http Server,它支持Http和Https协议,提供了HTTP1.1的部分实现,没有被实现的那部分可以通过扩展已有的Http Server API来实现。
6.插入式注解处理API(Pluggable Annotation Processing API)
JSR (JSR是Java Specification Requests的缩写,意思是Java 规范请求)用Annotation Processor在编译期间而不是运行期间处理Annotation, Annotation Processor相当于编译器的一个插件,所以称为插入式注解处理。
7.用Console开发控制台程序
JDK6中提供了java.io.Console 类专用来访问基于字符的控制台设备. 你的程序如果要与Windows下的cmd或者Linux下的Terminal交互,就可以用Console类代劳。
8.对脚本语言的支持
如: ruby, groovy, javascript
9.Common Annotations
Common annotations原本是Java EE 5.0规范的一部分,现在SUN把它的一部分放到了Java SE 6.0中. 随着Annotation元数据功能加入到Java SE 5.0里面,很多Java 技术(比如EJB,Web Services)都会用Annotation部分代替XML文件来配置运行参数,保证Java SE和Java EE 各种技术的一致性。