Wikipedia

Search results

Wednesday, March 13, 2019

What is the core problem that Spring Framework solves

what is Spring Framework
  • Most important feature of Spring Framework is Dependency Injection
  • build decoupled systems enterprise application
It’s packed with some nice features like Dependency Injection and out of the box modules like:
  • Spring JDBC
  • Spring MVC
  • Spring Security
  • Spring AOP
  • Spring ORM
  • Spring Test
These modules can drastically reduce the development time of an application.
For example, in the early days of Java web development, we needed to write a lot of boilerplate code to insert a record into a data source. But by using the JDBCTemplate of the Spring JDBC module we can reduce it to a few lines of code with only a few configurations.

What is Spring Boot?

Spring Boot is basically an extension of the Spring framework which eliminated the boilerplate configurations required for setting up a Spring application.
It takes an opinionated view of the Spring platform which paved the way for a faster and more efficient development eco-system.
Here are just a few of the features in Spring Boot:
  • Opinionated ‘starter’ dependencies to simplify build and application configuration
  • Embedded server to avoid complexity in application deployment
  • Metrics, Helth check, and externalized configuration
  • Automatic config for Spring functionality – whenever possible

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
we can say that the Spring Boot is simply an extension of Spring itself to make the development, testing, and deployment more convenient.

 What else does Spring Framework solve

Problem 1 : Duplication/Plumbing Code

integrated with other sub module of spring as below
  • Spring JDBC
  • Spring MVC
  • Spring AOP
  • Spring ORM
  • Spring JMS
  • Spring Test
Provides below advantages:
  • Reduce Boilerplate Code/ Reduce Duplication
  • Promote Decoupling/ Increase Unit Testablity

Problem 2 : Good Integration with Other Frameworks

  • Hibernate for ORM
  • iBatis for Object Mapping
  • JUnit & Mockito for Unit Testing

No comments:

Post a Comment