Development
Spring Boot 2025: Master the Java Spring Framework 6 & Spring Boot 3
Become proficient in building robust, scalable web applications using Java Spring Framework 6 and Spring Boot 3. This course covers everything from RESTful APIs to microservices and security, equipping you with the skills needed to excel in backend development for modern web applications.
What you will learn
- Java Basics & Advanced
- Spring Framework 6 Fundamentals
- Spring Boot 3 Introduction
- Building RESTful APIs with Spring Boot
- Spring Data JPA
- Spring Security
- Microservices with Spring Boot
- Testing with Spring Boot
- Working with Databases: MySQL & PostgreSQL
- Deployment with Docker & Kubernetes
- Spring Boot for Cloud Applications
- Integrating Spring Boot with Frontend Frameworks
- API Authentication & Authorization
- Unit Testing & Integration Testing
- Working with Messaging Queues (RabbitMQ, Kafka)
Corporate training outcomes
- Completion certificate
- Practical assignments and project work
- Mentor support and progress tracking
- Custom batch options for teams
- Yes
Requirements
- Laptop with good internet
- Basic knowledge of Java
- Willing to dedicate time
- Passionate about backend development
- Curious about building scalable enterprise applications with Java Spring Boot
Curriculum
Course Introduction
- Introduction
Core Java
- Intro to Java
- JDK Setup
- IntelliJ IDEA Setup
- First Code in Java
- First Code Setup
- Variables
- Data Types
- Literals
- Type Conversion
- Quiz 1
- Arithmetic Operators
- Relational Operators
- Logical Operators
- If Else
- If Else If
- Ternary Operator
- Switch Statement
- Need for Loop
- While Loop
- Do While Loop
- For Loop
- Which Loop to Use
- Quiz 2
- Class and Object Theory
- Class and Object Practical
- JDK, JRE, JVM
- Methods
- Method Overloading
- Stack and Heap
- Need of Array
- Creation of Array
- Multi Dimensional Array
- Quiz 3
- Jagged and 3D Array
- Drawbacks of Array
- Array of Objects
- Enhanced for Loop
- What is String
- Mutable vs Immutable String
- StringBuffer and StringBuilder
- Static Variables
- Static Methods
- Static Block
- Encapsulation
- Getters and Setters
- This Keyword
- Constructor
- Default vs Parameterized Constructor
- Naming Conventions
- Anonymous Object
- What is Inheritance
- Need of Inheritance
- Single and Multilevel Inheritance
- Multiple Inheritance
- This and Super Methods
- Method Overriding
- Packages
- Access Modifiers
- Polymorphism
- Dynamic Method Dispatch
- Final Keyword
- Object Class: equals, toString, hashcode
- Upcasting and Downcasting
- Wrapper Class
Advance Java
- Project 1 - Introduction
- Project 1 - QuestionService and Question Class
- Project 1 - Hard Coded Questions and Display Them
- Project 1 - Play Quiz
- Project 1 - Calculate Score
- Abstract Keyword
- Inner Class
- Anonymous Inner Class
- Abstract and Anonymous Inner Class
- What is Interface
- More on Interfaces
- Need of Interface
- What is Enum
- Enum if and Switch
- Enum Class
- What is Annotation
- Types of Interface
- Functional Interface
- Lambda Expression
- Lambda Expression with Return
- Exception Handling using Try Catch
- Try with Multiple Catch
- Exception Hierarchy
- Exception Throw Keyword
- Custom Exception
- Ducking Exception using Throws
- User Input using BufferedReader and Scanner
- Try with Resources
- Threads
- Multiple Threads
- Thread Priority and Sleep
- Runnable vs Thread
- Race Condition
- Thread States
- Collection API
- ArrayList
- Set
- Map
- Comparator vs Comparable
- Need of Stream API
- forEach Method
- Stream API
- Map, Filter, Reduce, Sorted
- ParallelStream in Java
- Optional Class in Java
- Method Reference
- Constructor Reference
- Quiz 4
Maven
- Maven Introduction
- Maven in IDE
- Getting Dependencies
- Effective POM
- Maven Archetype
- Maven in Eclipse
- How Maven Works
JDBC
- JDBC Intro
- Postgres Setup
- JDBC Steps
- Postgres Library jar
- Connecting Java and DB
- Execute and Process
- Fetching all Records
- Crud operations
- Problems with Statement
- PreparedStatement
Getting Started with Spring and Spring Boot
- Spring Intro
- Spring Docs
- Prerequisites
- IDE For Spring
- IoC And DI
- Spring Vs Spring Boot
- First Spring Boot App
- DI Using Spring Boot
- Autowiring In Spring Boot
Exploring Spring Framework
- Spring 1st Project
- Spring Bean Xml Config
- Object Creation
- Scopes
- Setter Injection
- Ref Attribute
- Constructor Injection
- Creating Interface
- Autowiring
- Primary Bean
- Lazy Init Bean
- Getbean By Type
- Inner Bean
Java Configuration
- Java Based Config
- Bean Name
- Scope Annotation
- Autowire
- Primary And Qualifier
- Component Stereotype Annotation
- Autowire Field, Constructor, Setter
- Primary Annotation
- Scope And Value Annotation
Spring Boot
- Spring To Spring Boot
- Using Annotations In Spring Boot
- Different Layers
- Service Class
- Repository Layer
Spring JDBC
- Spring JDBC
- Creating A Spring JDBC Project
- Student Service And Repo
- JDBCtemplate
- Schema And Data Files
- Rowmapper
- Spring JDBC Postgres
Spring Boot Web
- Web App Intro
- Creating A Servlet Project
- Running Tomcat
- Servlet Mapping
- Responding To The Client
- Introduction to MVC
- Creating a Spring Boot Web App Project
- Creating a JSP Page
- Creating a Controller
- RequestMapping
- Sending data to Controller
- Accepting Data the Servlet Way
- Display Data on Result Page
- RequestParam
- Model Object
- Setting Prefix and Suffix
- ModelAndView
- Need for ModelAttribute
- Using ModelAttribute
Web MVC
- Spring MVC Introduction
- Creating a Spring MVC Project
- Running Tomcat in Eclipse
- Dispatcher Servlet
- Configuring the DispatcherServlet
- Internal Resource View Resolver
- Summary
Building Project
- Project Overview
REST with Spring Boot
- Introduction
- What is REST
- Http Methods
- Understanding the React UI
- Working with Postman
- Creating a Rest Controller
- Connecting React and Spring
- PathVariable
- Sending Data and RequestBody
- Put and Delete Mapping
- Content Negotiation
Spring Data JPA
- Spring Data JPA Introduction
- What is ORM and JPA
- Creating Table And Inserting Data
- Findall
- findById
- Query DSL
- Update and Delete
- JPA in Job App
- Loading Data and Entity
- Search by Keyword
- React UI for Search
- React UI for Update and Delete
Project using Spring Boot MVC
- Introduction
- Running and Understanding the React UI Code
- Spring Boot Project Setup
- Creating Product Model and Table
- Fetching All Products from DB
- ResponseEntity
- Fetch Product By Id
- Add Product with Image
- Fetch Product Image
- Update and Delete Product
- Search
Spring Data Rest
- Spring Data Rest Introduction
- Creating A Data Rest Project
- Running The Project
- Update And Delete
Spring AOP
- Spring AOP Introduction
- Logging the Calls
- AOP Concepts
- Before Advice
- JoinPoint
- After Advice
- Performance Monitoring using Around Advice
- Validating the input using Around Advice
Spring Security
- Importance Of Security
- OWASP Top 10
- Creating a Spring Security Project
- default login form
- Spring Security Filters
- Session ID
- Setting username and password
- Basic Auth using Postman
- What is CSRF
- Error without CSRF Token
- Sending CSRF Token
- Same Site Strict
- Security Configuration
- Disabling CSRF Token
- without lambda
- Getting ready for user database
- Working with Multiple Users
- Creating User table and db properties
- AuthenticationProvider
- Creating a UserDetailsService
- User Repository
- UserDetails and UserPrincipal
- Summary till now
- What is Bcrypt
- User Registration
- BCrypt Encoding for User Registration
- Setting Password Encoder
JWT and OAUTH2
- Encryption and Decryption
- Digital Signature
- Why JWT
- What is JWT
- Project Setup for JWT
- Custom Login
- Generating token
- Token Generated
- Creating a JWT Filter
- Setting AuthToken in SecurityContext
- Validating token
- JWT Summary
- Implementing OAuth2
- Google Oauth2 Login
- Github Login
Docker
- Docker intro
- Solution With Virtualization
- Solution With Containerization
- What is Docker
- Docker Setup
- Running First Container
- Docker Commands
- Docker Architecture
- Running JDK Docker Container
- Packing The Spring Boot Web App
- Running Spring Boot Web App On Docker
- Docker File For Docker Images
- Web App With Postgres
- Docker Compose
- Running Multiple Containers
- Docker Volumes
Cloud Deployment
- What is cloud
- Which cloud
- AWS account signup process
- AWS services and IAM account
- Simple Web App Project
- Deploying on Elastic Beanstalk
- Spring Project with DB
- Creating database in AWS RDS
- Deploying app on Beanstalk
- Introduction to ECS
- Configuring AWS CLI
- Creating Cluster and Task
- Running the task for Postgres
- Pushing the docker image to ECR
- Running Java App Task
Microservices
- What are microservices?
- Cloud Native
- Quiz App Project Setup part- 1
- Quiz App Project Setup part- 2
- Quiz App Project Setup part- 3
- Quiz App Project Setup part- 4
- Quiz App Project Setup part- 5
- Quiz App Project Setup part- 6
- Quiz App Project Setup part- 7
- Quiz App Project Setup part- 8
- Building Microservices Introduction Part- 9
- Creating a Question Service Part-1
- Creating a Question Service Part-2
- Running the Question Service Part-3
- Creating a Quiz Service Part-4
- Need of Service Discovery
- Creating a Service Registry
- Working with Feign
- Microservice is calling a Microservice
- Completing the 2 Microservices
- Load Balancing
- API Gateway
Git
- Git version control
- History of Git
- Git Setup
- Git Init
- Git commit
- Git Skipping the Staging Area
- Git diff
- Git Remove File
- Github Repository
- Adding Files to Remote Repository
- Git tag
- Git clone a project
- Git branch create
- Git delete branch
- Git branch pushing to remote repository
- Git branch how it works
- Git merge
- Git rebase
- Git merge conflict
- Git time travel
- Git stash
- Git fork
- Git Pull Request
Projects
- Project 2
- Project 3
- Project 4
- Project 5
Resume & Interview Preparations
- Resume Preparation
- Interview Preparation