Spring is the most popular and innovative community for the Java developers. They have changed the way how to build the enterprise applications and how to manage them. Spring Boot is their latest innovation to keep up to date with the changing technology needs. The primary motivation behind developing Spring Boot is to simplify the process for configuring and deploying the spring applications.

It is a Spring module which provides RAD (Rapid Application Development) feature to Spring framework.

It is used to create stand alone spring based application that you can just run because it needs very little spring configuration.

Spring Boot does not generate code and there is absolutely no requirement for XML configuration.

WHY We Need Spring Boot?

  • Spring Boot is next generation attempt to easy spring setup.
  • Spring Boot’s main benefit is configuring the resources based on what it finds in the classpath.
  • Ease the Java-based applications Development, Unit Test and Integration Test Process.
  • Reduce Development, Unit Test and Integration Test time by providing some defaults.
  • Increase Productivity.

Advantages of Spring Boot:

  • Create stand-alone Spring applications that can be started using java -jar.
  • Reduces lots of development time and increases productivity.
  • Automatically configure Spring whenever possible.
  • Provides lots of plugins to develop and test Spring Boot Applications very easily using Build Tools like Maven and Gradle.
  • Embed Tomcat, Jetty or Undertow directly. You don’t need to deploy WAR files.
  • It provides lots of plugins to work with embedded and in-memory Databases very easily.
  • Absolutely no code generation and no requirement for XML configuration.

Spring Boot Features:

Web Development

Web Development is well suited Spring module for web application development. We can easily create a self-contained HTTP server using embedded Tomcat, Jetty or Undertow. We can use the spring-boot- starter-web module to start and running application quickly.

Application events and listeners

Spring Boot uses events to handle variety of tasks. It allows us to create factories file that are used to add listeners. we can refer it by using ApplicationListener key.

Always create factories file in META-INF folder like: META-INF/spring.factories

SpringApplication

SpringApplication is a class which provides the convenient way to bootstrap a spring application which can be started from main method. You can call start your application just by calling a static run() method.

Externalized Configuration

Spring Boot allows us to externalize our configuration so that we can work with the same application in different environments. Application use YAML files to externalize configuration.

Admin support

Spring Boot provides the facility to enable admin related features for the application. It is used to access and manage application remotely. We can enable it by simply using spring.application.admin.enabled property.

YAML Support

It provides convenient way for specifying hierarchical configuration. It is a superset of JSON. The SpringApplication class automatically support YAML. It is successful alternative of properties.

Properties Files

Spring Boot provides rich set of Application Properties. So, we can use that in properties file of our project. Properties file is used to set properties like: server-port = 8082 and many others. It helps to organise application properties.

Logging

Spring Boot uses Common logging for all internal logging. Logging dependencies are managed by default. We should not change logging dependencies, if there is no required customization is needed.

Type-safe Configuration

Strong type-safe configuration is provided to govern and validate the configuration of application. Application configuration is always a crucial task which should be type-safe. We can also use annotation provided by this library.

Security

Spring Boot applications are spring bases web applications. So, it is secure by default with basic authentication on all HTTP endpoints. A rich set of Endpoints are available for develop a secure Spring Boot application.

It's good to share...Share on FacebookTweet about this on TwitterShare on LinkedInPin on PinterestShare on Google+Email this to someone

Leave a Reply

Your email address will not be published. Required fields are marked *