Spring Boot for Java Beginners: REST APIs, Data, and Thymeleaf
Build powerful web applications from scratch with Spring Boot, mastering REST APIs, data persistence, and dynamic front-ends using Thymeleaf.
...
Share
Introduction to Spring Boot
Unit 1: Why Spring Boot?
The Spring Framework
Enter Spring Boot
Boot vs. Framework
Benefits of Spring Boot
Unit 2: Core Concepts
Auto-Configuration
Starter Dependencies
Embedded Servers
Unit 3: Setting Up Your Environment
Java Setup
Maven vs. Gradle
IDE Time!
Unit 4: Creating Your First Project
Spring Initializr
Generate the Project
Project Structure
Building Your First REST API
Unit 1: REST API Fundamentals
What is a REST API?
RESTful Principles
API Design Best Practices
Tools for API Testing
Unit 2: Building a Simple REST Controller
Spring Boot Setup
Your First Controller
Handling GET Requests
Returning JSON
ResponseEntity Explained
Unit 3: Handling Different HTTP Methods
Handling POST Requests
Handling PUT Requests
Handling DELETE Requests
Path Variables
Request Parameters
Understanding Spring Boot Components and Dependency Injection
Unit 1: Spring Components
Beans: The Building Blocks
@Component Explained
@Service Deep Dive
@Repository Unveiled
Stereotype Annotations
Unit 2: Dependency Injection
DI: The Core Concept
@Autowired Explained
Constructor Injection
Setter Injection
Field Injection
Unit 3: Spring Application Context
Context: The Big Picture
Bean Scopes
Bean Lifecycle
Context Aware Beans
Working with Data using Spring Data JPA
Unit 1: Introduction to Spring Data JPA
JPA: A Helping Hand
Setting the Stage
Configuring the Source
Unit 2: Defining JPA Entities
Entity Essentials
ID Please!
Column Mapping
Entity Relationships
Unit 3: Creating Spring Data Repositories
Repository Intro
Saving Data
Fetching Data
Updating Data
Deleting Data
Custom Queries
Advanced REST API Development
Unit 1: Request Parameters and Validation
Query Parameters
Path Variables
Validating Requests
Custom Validation
Unit 2: Exception Handling
Global Exception Handler
Custom Exceptions
ResponseEntity
Unit 3: Pagination and Sorting
Pagination Basics
Sorting Data
Spring Data JPA
Unit 4: API Testing with Postman
Postman Setup
GET Requests in Postman
POST, PUT, DELETE
Automated Tests
Securing Your Spring Boot Application with Spring Security
Unit 1: Spring Security Fundamentals
Security Intro
Adding Spring Security
Configuring Security
Customizing User Details
Password Encoding
Unit 2: Authorization and Access Control
Authorize Requests
More on Role Hierarchy
Securing Methods
Expression-Based Access
Custom Access Decisions
Unit 3: Advanced Security Concepts
CSRF Protection
CORS Configuration
Session Management
Logout Functionality
Introduction to Thymeleaf
Unit 1: Thymeleaf Fundamentals
What is Thymeleaf?
Thymeleaf vs. Alternatives
Setting Up Thymeleaf
Your First Template
Expressions in Thymeleaf
Unit 2: Displaying Data with Thymeleaf
Passing Data to Views
Displaying Simple Data
Working with Objects
Lists and Iteration
Conditional Display
Unit 3: Advanced Thymeleaf Features
Link Generation
Form Handling Basics
Thymeleaf Fragments
Template Layouts
Building a Dynamic Front-End with Thymeleaf
Unit 1: Displaying API Data with Thymeleaf
Fetching Data for Thymeleaf
Displaying Data in HTML
Lists and Tables
Formatting Data
Conditional Display
Unit 2: Handling Forms with Thymeleaf
Creating HTML Forms
Binding Forms to Objects
Processing Form Data
Displaying Error Messages
Dropdowns and Radio Buttons
Unit 3: Advanced Thymeleaf Techniques
Thymeleaf Expressions
Thymeleaf Fragments
Layouts with Thymeleaf
URLs and Links
Connecting the Front-End to the Back-End
Unit 1: Setting Up the Front-End
Project Setup
API Service Layer
Data Transfer Objects
Unit 2: Making API Calls with Thymeleaf
GET Requests
Displaying API Data
POST Requests
Form Submission
Unit 3: Error Handling and Data Flow
Basic Error Handling
Displaying Error Messages
Data Flow Overview
Unit 4: Advanced Techniques
API Authentication
Data Validation
Loading Indicators
Refresh Data
Deployment and Next Steps
Unit 1: Preparing for Deployment
Deployment Overview
Executable JARs
Build Profiles
Externalized Configuration
Unit 2: Cloud Deployment
Cloud Platforms
Deploying to Heroku
AWS Elastic Beanstalk
Containerization with Docker
Docker Hub
Unit 3: Maintaining and Scaling
Logging
Monitoring
Scaling Strategies
Unit 4: Advanced Features
Spring Cloud Intro
Spring Data REST