Spring is a java based MVC framework to develop enterprise application. Spring framework provides a complete framework in all the aspects of an enterprise application. It has different modules in it and the best part is spring never compels you to use all the modules at a time in your application. All the different modules like spring-core, spring-jdbc, spring-security,spring-aop can be used independently in any enterprise application and this is made Spring very popular over the period.
Spring is completely configuration based framework. Spring provides .xml, annotations and java based configurations and using these configurations you can build your enterprise application in a very short span of time. But sometimes these configurations are overhead and there are many boiler plate configurations too which developers generally don’t like to spend time on it. Spring Boot is a solution for this pain and it provides many production grade features out of the box to your application.
Spring Boot Features
- Spring Boot helps you to make a stand-alone application using Spring. It provides default build system to compile and package your code.
- It also provides embedded application server features. Spring Boot supports embedded tomcat, jetty and hence you do not need to worry about deploying your war files.
- If you have used maven before, you must be knowing the version mismatch issue with pom file. This creates a very weird issue sometimes and requires considerable time to resolve it. Spring Boot come with many starter maven artifacts which takes care of the version mismatch overhead and simplify the maven configurations.
- Spring boot also provides automatic bean configurations to your application based on the dependencies included in your pom file. It automatically creates required bean based on the annotations you have defined at class level. e.g. Include spring -boot security artifact in your pom and spring boot automatically provides basic authentication to all your rest endpoints.
- Apart from these, Spring boot also provides metrics features to your application out of the box. You only include spring-boot-actuator artifact in your pom and you can control and manage your applications metrics, thread dumps, environments, loggers using some REST endpoints those are provided by spring boot actuator out of the box without writing even a single line of code. Learn more about Spring Boot Actuator here Quick Guide to Spring Boot Actuator
- And the most important is while using Spring boot you can completely get rid of your .xml configurations.
This is a quick intro to Spring Boot. To get started with building sample Spring Boot applications and about different integrations of Spring Boot start from here – Spring Boot Tutorials Guide