Java SE 6 incorporates a broad range of
enhancements to the infrastructure of Java rather
than specific syntax enhancements
(unlike Java 5)
• Java SE 6 features include:
– XML and Web services support
– JDBC 4.0 support
– More Annotation types
– More flexible annotation processing
– Jave compiler APIs accessible from programs
– Application client GUI enhancements for both
AWT and Swing
XML & Web Services Support
• Javas SE 6 address the growth of Web services
and XML processing in the Java community
including support for:
– Web Services client stack
– Streaming API for XML (StAX)
– Java Architecture for XML Binding (JAXB) 2.0
– Java API for XML-based Web services (JAXWS) 2.0 Web services metadata
– XML digital signature APIFebruary 2010 Copyright @ 2010, John Jay King
Page 61
New JDBC 4.0 Features
• Java SE 6 includes JDBC 4.0; designed to
improve ease of JDBC development by:
– Simplified access to relational data sources
with utility classes
– Use of generics and annotations
– Addition of JDBC 4.0 wrapper pattern
– Safe access to vendor-specific APIs
– Automatic driver discovery
– Enhanced connection management
– New data types
(including XML and SQL ROWID)February 2010 Copyright @ 2010, John Jay King
Page 62
Annotation-based Development
• Annotations were in Java 5.0 allowing developers
to embed metadata in Java source code
• Java SE 6 includes additional built-in annotation
types and annotation-processing APIs including:
– Web services metadata for the Java Platform
(JSR 181)
– Common Annotations for the Java Platform
(JSR 250)
– Pluggable Annotation Processing API
(JSR 269)February 2010 Copyright @ 2010, John Jay King
Page 63
Java Compiler APIs
• Java command-line compilers receive input from
the file system and report errors using a stream
• Java SE 6 allows the compiler to receive input
and/or send output to an abstraction of the file
system
• Java programs may now specify compiler
directives and process compiler output (this
feature was add mostly due to software vendor
requests)February 2010 Copyright @ 2010, John Jay King
Page 64
Application GUI Client APIs
• Java SE 6 enhances application GUI capabilities
with changes to both AWT and Swing
• AWT
– Faster splash screens (using native code)
– System tray support (icons & messages)
– Access to browsers and other desktop
application “helpers”
• Swing
– Improved drag-and-drop support
– Enhanced layout customization
– Simplified multi-thread programming
– Writing of GIF imagesFebruary 2010 Copyright @ 2010, John Jay King
Page 65
Other Java SE 6 Features
• Changes to Java class file specification
(JSR 202)
• Framework to connect Java programs to
scripting-language interpreters (JSR 223)
• New bi-directional (allowing backward navigation)