This answer is based on my personal opinion, it may vary from person to person:
Spring Boot Advantages
- Simplified & version conflict free dependency management through the starter POMs.
- We can quickly setup and run standalone, web applications and micro services at very less time.
- You can just assemble the jar artifact which comes with an embedded Tomact, Jetty or Undertow application server and you are ready to go.
- Spring Boot provides HTTP endpoints to access application internals like detailed metrics, application inner working, health status, etc.
- No XML based configurations at all. Very much simplified properties. The beans are initialized, configured and wired automatically.
- The Spring Initializer provides a project generator to make you productive with the certain technology stack from the beginning.
You can create a skeleton project with web, data access (relational and NoSQL datastores), cloud, or messaging support.
Spring Boot Disadvantages
- Spring boot may unnecessarily increase the deployment binary size with unused dependencies.
- If you are a control freak, I doubt Spring Boot would fit your needs.
- Spring Boot sticks good with micro services. The Spring Boot artifacts can be deployed directly into Docker containers.
In a large and monolithic based applications, I would not encourage you to use Spring Boot.