I looked at the release notes for Spring Boot 2.0.0.M1 not expecting a lot of exciting changes but was surprised by some compelling things. There is the usual “deprecated classes are removed” and “Dependency X is upgraded” but there are some more exciting changes.
Java 8 Only
I think we can all agree that this is a good thing and a long time coming.
HikariCP over Tomcat Connection Pooling
I was happy to see Spring Boot 2 changing the connection pooling library to HikariCP. I’ve used HikariCP in past projects and its great for high-performance services. As it’s documentation states “There are a lot of knobs to tweak” so I assume that they will be exposed in
application.properties. Luckily HikariCP works well out-of-the-box with no tweaks.
Better Gradle Support
I always felt that Gradle has been a second-class citizen in the Spring Boot world but they are making strides to change that in Spring Boot 2. You can see a list of their closed issues. Things I really liked seeing:
bootWarnow extend the
wartasks. This fits better into Gradle’s model and makes it a better Gradle citizen. See the Github issue for some interesting reading.
- The minimal Gradle version is 3.4 and it supports Reproducible Builds and so does Spring Boot 2.
- Some Spring Boot tasks weren’t listed in the correct section running
gradle tasks. This sounds like a simple thing, but I think it’s a good change, especially for people just coming to Spring Boot.
Spring Boot 2 is only on Milestone 2 with a full release scheduled in November, so we still have a long ways to go but I like the changes I see so far!