You can be pretty sure of what you’re going to get with a Manning ‘In Action’ book and Spring Boot in Action is no exception. It’s clear, friendly while not being over familiar and above all a pleasure to read. In fact I struggled to put it down. I’ve got back into reading recently, but this is the first technical book I have fully read for quite a while.
The thing is I’m a huge fan of Java. This brings me into a lot of ridicule. There are lots of other software development technologies such as Ruby on Rails and Node.js which are arguably more productive because they do a lot of the standard web application boilerplate for you. The Spring library provides the Java developer with a lot of web application boilerplate as well, but there is no getting away the fact that Java is more verbose than some of the other options and you need a lot more code and configuration to wire the boilerplate together.
Enter Spring Boot. Spring Boot is about taking away a lot of the pain of developing Java web applications with Spring. Spring Boot automatically configures most of a Spring Web application for you. It takes care of most of the dependency management and servlet configuration and creates and injects commonly used beans into the application context as, when, and if they are needed. This drastically reduces the amount of code and configuration you need to write and it’s clever enough to work out which dependencies you need and employs tested configurations to make sure they play nicely together. Plus you can reduce the amount of code further by writing your application in Groovy or a combination of Groovy and Java. You can even take advantage of Grails.
Suddenly Java becomes a lot more competitive in terms of productivity with Ruby on Rails and Node.js, with the added advantage of a statically type, non-interpreted language running on the JVM. I’ve frequently seen Java Spring web applications outperforming similar Ruby on Rails applications. These are very exciting times indeed for Java.
Spring Boot in Action clearly explains all of this and more including running an embedded tomcat and testing with Selenium. It’s not a long book and the last 35% or so is appendices, but it’s the sort of useful information you need as a Spring Boot developer. Being short also means that Spring Boot does feel like a massive mountain to climb and conquer. If I had one criticism of the book, it would be that the chapter on deployment should be near the beginning, not right at the end.
Naked Element will soon be developing their first Spring Boot application and we’re really looking forward to it.