by Ola Bini
The Java ecosystem is experiencing an interesting time, both with large technical changes but also a changed political landscape. Oracle is a very different company than Sun, and that's been obvious from such things as how the Java Community Process has been handled, and also in interactions with projects such as Hudson and Android. So is Java still relevant? Is it the platform or the language we are interested in, and what will have to be done to future proof these technologies? This presentation will take a critical look at both the technical and political landscape of Java, and also look at what kind of changes in process might be necessary. You will leave knowing a bit better what might be coming next, and how it will impact you.
Twitter is increasingly relying on services written in either Java or Scala and running on the JVM. While JVM gives us a world-class runtime in terms of operational stability, performance, and manageability, it is still not trivial to achieve the desired performance characteristics of the programs being run on it, especially when you're dealing with services that need lots of memory, or have very low latency requirements, or both. In this talk, we'll present examples of performance problems we encountered while operating JVM-based services and the ways we solved them.
Spring Framework 3.1 continues Spring's mission with a focus on flexible Java-based configuration. This session introduces foundational 3.1 facilities such as environment profiles for application contexts, feature specifications within configuration classes, and Spring’s new caching abstraction. Finally, the session will cover Spring’s ongoing support for enterprise Java specifications: in particular Servlet 3.0 support.
Keywords: Java, Spring
Target Audience: Spring Users
by Jonas Bonér
We believe that one should never have to choose between productivity and scalability, which has been the case with traditional approaches to concurrency and distribution. The cause of that has been the wrong tools and the wrong layer of abstraction and Akka is here to change that. Akka is using the Actors together with Transactional Memory to create a unified runtime and programming model for scaling both UP (utilizing multi-core processors) and OUT (utilizing the grid/cloud). Akka provides location and network transparency by abstracting away both these tangents of scalability by turning them into an operations and configuration task. This gives the Akka runtime freedom to do adaptive automatic load-balancing, cluster rebalancing, replication and partitioning. In this talk you will learn what Akka is and how it can be used to solve hard scalability problems. Akka is available at akka.io (under Apache 2 license).
by Stuart Marks
This session will describe several new features introduced in Java 7, including a couple of the "Project Coin" language features. These features will be described and their benefits shown by using them to improve an actual piece of code from the JDK. The features to be shown are try-with-resources, more-precise rethrow (which are two language features introduced by Project Coin), and one of the new NIO utilities. The presentation will begin by showing a single method taken from the JDK 6 code base. It will continue by applying the features one by one using NetBeans, including an explanation of the feature and of its significance. Finally, the "before" and "after" code will be compared. The resulting code will be more concise and more correct than the original, showing that the new Java 7 features offer the opportunity to make great improvements to your Java code.
Keywords: Java, Java SE 7, JDK 7, OpenJDK, NIO, Files, Project Coin, Exception Handling
Target Audience: This session should be of interest to any Java programmers who are interested in using Java 7 features to improve their code.
13th–15th October 2011