Right NOW, I am just starting to use J2SE 5.0's features, like generic types or java.util.concurrent, in my bigger projects. The reason is that large corps are slow, and they use application servers from even slower vendors...
More details in this article: Sun Advances Security for the Java SE Platform.
If you are like me and you'be been voting on bugs like 4449383: Support For 'Design by Contract', beyond "a simple assertion facility" (#2 in the Top RFEs!), or 4093718: const - qualifier for methods, parameters and return-value (closed as &
Java SE 5.0 Update 8 is available. Besides the traditional few dozens of bugfixes, this release closes a number of important performance bugs in the JIT compiler, GC and runtime. So even if you play more in the conservative side, it's a great time to evaluate and upgrade your Java runtime.
[FIXED: I originally posted wrong data for JSE 6.0 Client b59's: the average score was correct, so it stands that the Client VM became 58% faster; but scores for the individual tests were identical to other VM as I copy&pasted the HTML but didn't change the values. Sorry for the confusion.
Check Tomcat 5.5.12 or later. When you install these new builds, the installer (at least on Windows) offers to download a native code library that Tomcat will use to optimize some performance-critical tasks like connection handling, file I/O and SSL encryption.
I’ve been a close observer of the evolution of the Java platform, and one of the aspects that attracted me since the beginning was its openness. Back in 1996, the JDK 1.0 bundled source code for all public API classes (378Kb!).