Introduction to Spring Boot

Learn via : Virtual Classroom / Online
Duration : 3 Days
  1. Home
  2. Introduction to Spring Boot

Description

    Spring Boot is a module within the Spring Framework ecosystem and is a tool that enables the rapid and easy development of Java-based applications. Spring Boot is designed to increase the productivity of Java developers and greatly simplifies the configuration and development processes of traditional Spring applications.

    The aim of Spring Boot training is to teach participants how to develop modern and scalable Java-based Java applications using Spring Boot.


Outline

Module 1: Spring Boot Basics and Project Setup

What is Spring Boot?

Installing and Configuring a Spring Boot Project

Basic Spring Boot Annotations

Creation of RESTful Services

Module 2: Spring Boot Web Applications

Spring MVC and Thymeleaf Integration

Form Data Binding and Validation

Working with RESTful Web Services

Web Security & Authentication

Module 3: Spring Data and Database Operations

Database Integration with Spring Data JPA

CRUD Operations and HQL Queries

Data Validation and Hibernate Validator

Customized JPA Query Creation

Module 4: Microservices Development

Microservice Architecture and Spring Boot

Service Discovery and Registration (Eureka)

API Gateway and Routing (Zuul)

Error Management and Hystrix

Module 5: Spring Boot and Database Integration

Working with NoSQL Databases (MongoDB, Redis)

Using Spring Data MongoDB and Redis

Relational Databases with Hibernate

Merging Database Operations

Module 6: Spring Boot and Security

Basic Safety Concepts

OAuth 2.0 and JWT-Based Authentication

CSRF Protection and CORS Settings

Addressing Similar Application Security Issues

Module 7: Application Configuration and External Dependencies

External Configuration and Environment Variables

Logging and Monitoring Tools (Log4j, Spring Actuator)

Use of Various External Dependencies with Spring Boot (REST Client, Messaging)

Module 8: Testing and Debugging

Writing Unit Tests (JUnit, Mockito)

Integration, Tests, and Test Automation

Application Debugging and Profile Management

Performance Tests and Optimization Tips

Module 9: Deployment and Management of the Application

Containerization of the Application with Docker

Orchestration with Kubernetes

Setting Up a Continuous Integration and Deployment (CI/CD) Pip

Deploying and Managing the Application to the Live Environment

Module 10: Real-World Project Implementation and Application Review

Case studies

Prerequisites

To have basic knowledge of Java programming, web programming, database and software architecture.