Much of revolution started from 1.2 onwards with JFC event delegation model as earlier version of Java i.e 1.x was much popular for Servlets and Applets than anything else.
Java Printing API was one of the area that got improved from 1.2 onwards...
Do you know that Java Uses different Floating Point Standard than compared to Microsoft. Read the article here... You must know this...
http://www.concentric.net/~ttwang/tech/javafloat.htm
http://www.cs.berkeley.edu/~wkahan/JAVAhurt.pdf
    
Differences:
 
Java Platform, Standard Edition 7 is a major feature release. This document includes information on features and enhancements in Java SE 7 and in JDK 7, Oracle's implementation of Java SE 7.
Java Printing API was one of the area that got improved from 1.2 onwards...
Do you know that Java Uses different Floating Point Standard than compared to Microsoft. Read the article here... You must know this...
http://www.concentric.net/~ttwang/tech/javafloat.htm
http://www.cs.berkeley.edu/~wkahan/JAVAhurt.pdf
Differences:
| 
JDK 1.0 (January 23, 1996)  
·        
  Initial release  
JDK 1.1 (February 19, 1997)  
·        
  Retooling of the AWT event
  model  
·        
  Inner classes added to the
  language  
·        
  JavaBeans  
·        
  JDBC  
·        
  RMI  
J2SE 1.2 (December 8, 1998)  
This and subsequent releases
  through J2SE 5.0 were rebranded retrospectively Java 2 & version name
  "J2SE" (Java 2 platform, Standard edition) replaced JDK to
  distinguish the base platform from J2EE (java 2 platform, enterprise edition)
  and J2ME (java 2 platform, micro edition).  
·        
  Strictfp keyword  
·        
  Reflection  
·        
  Swing api integration into
  the core classes  
·        
  JVM equipped with a jit
  compiler  
·        
  Java plug-in  
·        
  Java IDL  
·        
  An IDL implementation for
  corba interoperability  
·        
  Collections Framework  
 
J2SE 1.3 (may 8, 2000)  
·        
  Hotspot jvm included  
·        
  JavaSound  
·        
  JNDI included in core
  libraries  
·        
  Java platform debugger
  architecture (jpda)  
·        
  RMI was modified to
  support optional compatibility with corba  
J2SE 1.4 (february 6, 2002)  
·        
  assert keyword  
·        
  Regular expressions  
·        
  Exception chaining (allows
  an exception to encapsulate original lower-level exception)  
·        
  Internet protocol version
  6 (IPV6) support  
·        
  Non-blocking nio (new
  input/output)  
·        
  Logging API  
·        
  Image i/o api for reading
  and writing images in formats like jpeg and png  
·        
  Integrated XML parser and
  XSLT processor (JAXP)  
·        
  Integrated security and
  cryptography extensions (JCE, JSSE, JAAS)  
·        
  Java web start  
J2SE 5.0 (september 30, 2004)
  tiger [originally numbered 1.5]  
·        
  Generics: provides
  compile-time (static) type safety for collections and eliminates the need for
  most typecasts (type conversion). ( example: typed Collections, Set(<String>)) 
·        
  Metadata: also called
  annotations; allows language constructs such as classes and methods to be
  tagged with additional data, which can then be processed by metadata-aware
  utilities.  
·        
  Autoboxing/unboxing:
  automatic conversions between primitive types (such as int) and primitive
  wrapper classes (such as integer).  
·        
  Enumerations: the enum
  keyword creates a typesafe, ordered list of values (such as day.monday,
  day.tuesday, etc.). Previously this could only be achieved by non-typesafe
  constant integers or manually constructed classes (typesafe enum pattern).  
·        
  Swing: new skinnable look
  and feel, called synth.  
·        
  Var args: the last
  parameter of a method can now be declared using a type name followed by three
  dots (e.g. Void drawtext(string... Lines)). In the calling code any number of
  parameters of that type can be used and they are then placed in an array to
  be passed to the method, or alternatively the calling code can pass an array
  of that type. Another example: printf() function, allows variable number of different arguments. 
·        
  Enhanced for each loop:
  the for loop syntax is extended with special syntax for iterating over each
  member of either an array or any iterable, such as the standard collection
  classesfix the previously broken semantics of the java memory model, which
  defines how threads interact through memory.  
·        
  Automatic stub generation
  for rmi objects.  
·        
  Static imports concurrency
  utilities in package java.util.concurrent.  
·        
  Scanner class for parsing
  data from various input streams and buffers.  
·        
  Assertions  
·        
  StringBuilder class (in
  java.lang package)  
·        
  Annotations  
Links: 
Java SE 6 (december 11, 2006)
  mustang sun replaced the name "J2SE" with java se and dropped the
  ".0" from the version number. Beta versions were released in
  february and june 2006, leading up to a final release that occurred on
  december 11, 2006. The current revision is update 20.  
·        
  Support for older win9x
  versions dropped.  
·        
  Scripting lang support:
  Generic API for integration with scripting languages, & built-in mozilla
  javascript rhino integration  
·        
  Dramatic performance
  improvements for the core platform, and swing.  
·        
  Improved web service
  support through JAX-WS JDBC 4.0 support  
·        
  Java compiler API: an API
  allowing a java program to select and invoke a java compiler
  programmatically.  
·        
  Upgrade of JAXB to version
  2.0: including integration of a stax parser.  
·        
  Support for pluggable
  annotations  
·        
  Many GUI improvements,
  such as integration of swingworker in the API, table sorting and filtering, and
  true swing double-buffering (eliminating the gray-area effect).  
Java se 6 update 10 A major enhancement in terms of end-user
  usability.  
·        
  Java Deployment Toolkit, a
  set of javascript functions to ease the deployment of applets and java web
  start applications.  
·        
  Java Kernel, a small
  installer including only the most commonly used jre classes. Enhanced
  updater.  
·        
  Enhanced versioning and
  pack200 support: server-side support is no longer required.  
·        
  Java quick starter, to
  improve cold start-up time.  
·        
  Improved performance of
  java2D graphics primitives on windows, using direct3D and hardware
  acceleration.  
·        
  A new Swing look and feel
  called NIMBUS and based on synth.  
·        
  Next-generation java
  plug-in: applets now run in a separate process and support many features of
  web start applications.  
Java se 6 update 12 This
  release includes the highly anticipated 64-bit java plug-in (for 64-bit
  browsers only), windows server 2008 support, and performance improvements of
  java and JAVAFX applications. 
Features and Enhancements JDK
  Documentation  Java Platform, Standard Edition 6 is a major feature release. The following list highlights many of the significant features and enhancements in Java SE 6 since the prior major release, J2SE 5.0. It is followed by a detailed table with links to related bugs, enhancements, and JSRs. Note, this web page relates to the Release Candidate milestone for Java SE 6. Its related Umbrella JSR 270 does not itself define specific features. Instead it enumerates features defined in other JSRs or through the concurrent maintenance review of the Java SE platform specification. The final release is expected to include all JSR 270 features, although it is possible for an approved feature to be dropped. Refer also to: Java Platform, Standard Edition Differences between 5.0 fcs and 6 Beta . Highlights of Technology Changes in Java SE 6 Choose a technology for links to further information. Collections Framework Deployment (Java Web Start and Java Plug-in) Drag and Drop Instrumentation Internationalization Support I/O Support JAR (Java Archive Files) - An annotated list of changes between the 5.0 and 6.0 releases to APIs, the jar command, and the jar/zip implementation. Java Web Start Java DB 10.2 JDBC4 Early Access The $JAVA_HOME/db subdirectory contains class libraries for Java DB, Sun Microsystems's distribution of the Apache Derby database technology. For information on Java DB, see Java DB. For information on Derby, see: Apache Derby. For documentation on this version of Java DB, see Java DB - Reference. For a description of the capabilities of this version of Java DB, see the release notes in the $JAVA_HOME/db subdirectory. This Early Access version of Java DB is built from Apache Derby 10.2.1.7 source code (revision 453926) using JDK 6 JDBC 4 APIs to build JDBC 4 driver code. Comments regarding this version of Java DB can be sent to javadb-ea@sun.com. DISCLAIMER: THIS IS EARLY ACCESS SOFTWARE AND COMES WITH NO WARRANTIES OR SUPPORT. IT IS PROVIDED "AS IS". IT IS NOT FOR PRODUCTION USE. JMX (Java Management Extensions) - A list of JMX API changes between the J2SE 5.0 and Java SE 6 releases. JPDA (Java Platform Debugger Architecture) JVM TI (Java Virtual Machine Tool Interface) lang and util Packages Monitoring and Management for the Java Platform JConsole is Officially Supported in Java SE 6 Networking Features Performance Reflection RMI (Remote Method Invocation) Scripting Security Serialization of Objects Swing VM (Java Virtual Machine) Detailed Table of Technology Changes in Java SE 6 Items are ordered by area/component. The first column indicates the scope of a change: jsr – A larger feature or feature set having its own Java Specification Request api – A smaller feature that adds new Java APIs (application programming interfaces) imp – An implementation enhancement that does not involve new APIs, for example, a performance improvement 
 On Printing Thats something not out of box in Java Refer to this: http://code.google.com/p/ups-php/ http://code.google.com/p/zxing/ http://www.google.com/chrome/intl/en/p/cloudprint.html http://code.google.com/p/escprinter/ http://code.google.com/p/jzebra/ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Java SE 7 Features and Enhancements
Java Platform, Standard Edition 7 is a major feature release. This document includes information on features and enhancements in Java SE 7 and in JDK 7, Oracle's implementation of Java SE 7.
Contents
- Highlights of Technology Changes in Java SE 7
- Important RFEs Addressed in Java SE 7
- Important RFEs Addressed in JDK 7
- Known Issues
Highlights of Technology Changes in Java SE 7
The following list contains links to the the enhancements pages in the Java SE 7 guides documentation. Choose a technology for further information.
- Swing
- IO and New IO
- Networking
- Security
- Concurrency Utilities
- Rich Internet Applications (RIA)/Deployment
- Java 2D
- Java XML - JAXP, JAXB, and JAX-WS
- Internationalization
- java.lang Package
- Java Programming Language- Binary Literals
- Strings in switch Statements
- The try-with-resources Statement
- Catching Multiple Exception Types and Rethrowing Exceptions with Improved Type Checking
- Underscores in Numeric Literals
- Type Inference for Generic Instance Creation
- Improved Compiler Warnings and Errors When Using Non-Reifiable Formal Parameters with Varargs Methods
 
- Java Virtual Machine (JVM)
- JDBC
