Updated to reflect Java 8 and Spring 4.