If you’re looking for a light weight performant container framework that supports web based development with a variety of plug in modules then you should look at Bootique. () I’ve recently implemented two different micro-services projects with this framework and it works like a charm. It’s based on Google Guice and it’s a bit of work to wrap your head around that, but the same is true for almost any IoC container framework. It’s light weight, useable with Jetty and very performant.
My problem with Spring is that once you start going down that path it seems you end up using more and more of their software. Personally, I’d prefer to use Jersey over MVC, and Cayenne of JPA/Hibernate. And Jetty over Tomcat. When I tried using the example of using Jetty with SpringBoot, using the sample code they provided. I still got messages about tomcat being spun up. I don’t think that was actually happening because it was clear from the pom dependencies that Tomcat was not in the class-path, but the SpringBoot code was heavily biased to using Tomcat and so messages about starting up Tomcat where still in the log.
I like Bootique, it’s really platform neutral, it supports a lot of different choices and it does so wholeheartedly. It’s built by the same team that supports Apache Cayenne, and they are both helpful and experienced. I can’t recommend it highly enough.