0% found this document useful (0 votes)
48 views5 pages

Introduction

Spring Boot is a framework that simplifies development of stand-alone, production-grade Spring based applications. It provides opinionated configuration and reduces boilerplate code. Some key features include embedded servers, externalized configuration, auto configuration, starters for common dependencies, and metrics and health checks.

Uploaded by

Iheb RIAHI
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
48 views5 pages

Introduction

Spring Boot is a framework that simplifies development of stand-alone, production-grade Spring based applications. It provides opinionated configuration and reduces boilerplate code. Some key features include embedded servers, externalized configuration, auto configuration, starters for common dependencies, and metrics and health checks.

Uploaded by

Iheb RIAHI
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

Spring Boot

Spring Boot Tutorial provides basic and advanced concepts of Spring Framework.

Spring Boot is a Spring module that provides the RAD (Rapid Application
Development) feature to the Spring framework..

What is Spring Boot


Spring Boot is a project that is built on the top of the Spring Framework. It provides
an easier and faster way to set up, configure, and run both simple and web-based
applications.

It is a Spring module that provides the RAD (Rapid Application


Development) feature to the Spring Framework. It is used to create a stand-alone
Spring-based application that you can just run because it needs minimal Spring
configuration.

In short, Spring Boot is the combination of Spring Framework and Embedded


Servers.

In Spring Boot, there is no requirement for XML configuration (deployment


descriptor). It uses convention over configuration software design paradigm that
means it decreases the effort of the developer.

We can use Spring STS IDE or Spring Initializr to develop Spring Boot Java


applications.

Why should we use Spring Boot Framework?

We should use Spring Boot Framework because:


o The dependency injection approach is used in Spring Boot.
o It contains powerful database transaction management capabilities.
o It simplifies integration with other Java frameworks like JPA/Hibernate ORM, Struts,
etc.
o It reduces the cost and development time of the application.

Along with the Spring Boot Framework, many other Spring sister projects help to
build applications addressing modern business needs. There are the following Spring
sister projects are as follows:

o Spring Data: It simplifies data access from the relational and NoSQL databases.


o Spring Batch: It provides powerful batch processing.
o Spring Security: It is a security framework that provides robust security to
applications.
o Spring Social: It supports integration with social networking like LinkedIn.
o Spring Integration: It is an implementation of Enterprise Integration Patterns. It
facilitates integration with other enterprise applications using lightweight messaging
and declarative adapters.

AD

Advantages of Spring Boot


o It creates stand-alone Spring applications that can be started using Java -jar.
o It tests web applications easily with the help of different Embedded HTTP servers
such as Tomcat, Jetty, etc. We don't need to deploy WAR files.
o It provides opinionated 'starter' POMs to simplify our Maven configuration.
o It provides production-ready features such as metrics, health
checks, and externalized configuration.
o There is no requirement for XML configuration.
o It offers a CLI tool for developing and testing the Spring Boot application.
o It offers the number of plug-ins.
o It also minimizes writing multiple boilerplate codes (the code that has to be included
in many places with little or no alteration), XML configuration, and annotations.
o It increases productivity and reduces development time.

Limitations of Spring Boot


Spring Boot can use dependencies that are not going to be used in the application.
These dependencies increase the size of the application.

AD

Goals of Spring Boot


The main goal of Spring Boot is to reduce development, unit test, and integration
test time.

o Provides Opinionated Development approach


o Avoids defining more Annotation Configuration
o Avoids writing lots of import statements
o Avoids XML Configuration.

By providing or avoiding the above points, Spring Boot Framework


reduces Development time, Developer Effort, and increases productivity.

Prerequisite of Spring Boot


To create a Spring Boot application, following are the prerequisites. In this tutorial, we
will use Spring Tool Suite (STS) IDE.

o Java 1.8
o Maven 3.0+
o Spring Framework 5.0.0.BUILD-SNAPSHOT
o An IDE (Spring Tool Suite) is recommended.

Spring Boot Features


o Web Development
o SpringApplication
o Application events and listeners
o Admin features
o Externalized Configuration
o Properties Files
o YAML Support
o Type-safe Configuration
o Logging
o Security

Web Development

It is a well-suited Spring module for web application development. We can easily


create a self-contained HTTP application that uses embedded servers like Tomcat,
Jetty, or Undertow. We can use the spring-boot-starter-web module to start and
run the application quickly.

AD

SpringApplication

The SpringApplication is a class that provides a convenient way to bootstrap a Spring


application. It can be started from the main method. We can call the application just
by calling a static run() method.

1. public static void main(String[] args)  
2. {    
3. SpringApplication.run(ClassName.class, args);    
4. }  

Application Events and Listeners

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

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

AD

Admin Support

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

Externalized Configuration

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

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

YAML Support

It provides a convenient way of specifying the hierarchical configuration. It is a


superset of JSON. The SpringApplication class automatically supports YAML. It is an
alternative of properties file.

Type-safe Configuration

The strong type-safe configuration is provided to govern and validate the


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

Logging

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

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 is available to
develop a secure Spring Boot application.

Prerequisite
Before learning Spring Boot, you must have the basic knowledge of Spring
Framework.

You might also like