A few days ago a friend sent me a link to Spring Boot. I have used Spring for a large number of projects over the years and the description of Spring Boot seemed to indicate it could remove a number of my biggest peeves. When I first used Spring I did not like the odd combination of XML and code that was necessary to create an application. The introduction of annotation based configuration and the ability to create an application with little to no XML has led to a more likable Spring. I particularly value the ease of dependency injection which aids in testing and MVC end point annotations. But, Spring still requires a great deal of setup and boilerplate to get even the simplest site up and running. Spring Boot seems to be the extension that finally makes Spring a go to tool not only for it's enterprisiness but also for its ease of deployment. To find out if this promis was true I stepped through a few examples, watched a bit of a video and set out to create a prototype as quickly as possible.

I was able to make a couple end points in small enough space I didn't even think it warranted a Github repo.

The code

The POM

With these two files and a simple: mvn spring-boot:run

You can point your browser at http://localhost:8080 and receive:

Some text from Spring Boot

Or http://localhost:8080/arguments?foo=test&bar=42 and receive:

The arguments are foo: test bar: 42

I consider that an excellent first test and as a result will look into more of what Spring Boot can offer.

Spring Boot has a familiar tagline full of phrases from popular frameworks. It is "opinionated" and "favors convention over configuration". But, given the promise it shows, it very well may be the tool that brings about the Spring framework renaissance.