When we talk about Enterprise application development in JAVA,we remember Spring Framework as a one of the most popular framework. It serves a large number of modules providing a range of services. These include a component container, aspect oriented programming support for building cross cutting concerns, security framework, data access framework, web application framework and support classes for testing components.
History
- Initially J2EE was available. Because of configuration issues in J2EE, later on Spring became popular in developers. Spring offers a ton of features which are not available in J2EE.
- The first version of the Spring framework was written by Rod Johnson along with a book in 2002.
- The framework was first released in June 2003 under the Apache license version 2.0.
- The first milestone release of Spring framework (1.0) was released in March 2004.
- The current stable version(5.3.8) of spring came in Sept. 2021.
Why Spring Boot over Spring ?
Spring Boot is basically an extension of the Spring framework, which eliminates the boilerplate configurations required for setting up a Spring application.
Features of Spring Boot over Spring.
- Embedded server to avoid complexity in application deployment.
- Automatic configurations for Spring functionality – whenever needed.
- Opinionated ‘starter’ dependencies to simplify the build and application configuration.
- Metrics, Health check, and externalized configurations are available.
Spring Boot provides a number of starter dependencies for different Spring modules. Some of the most commonly used ones are:
- spring-boot-starter-data-jpa
- spring-boot-starter-security
- spring-boot-starter-test
- spring-boot-starter-web
- spring-boot-starter-thymeleaf
With Spring Boot framework developer can easily start developing Enterprise applications with micro-services as well as monolithic architecture.
