We may earn an affiliate commission when you visit our partners.
Course image
John Thompson • 500,000+ Enrollments Worldwide

This course is All Things Spring.

Do you wish to master Spring Framework 6 and Spring Boot 3? Then this is the course for you.

This course is for developers with no previous Spring Framework or Spring Boot experience.

Read more

This course is All Things Spring.

Do you wish to master Spring Framework 6 and Spring Boot 3? Then this is the course for you.

This course is for developers with no previous Spring Framework or Spring Boot experience.

This course has been developed by a back end developer, for back end developers.

Inside this course, you will learn about:

  • Build a Spring Boot Web App

  • Use Spring for Dependency Injection

  • Create RESTful Web Services with Spring MVC

  • Create RESTful Web Services with Spring Webflux

  • Create RESTful Web Services with Spring Webflux.fn

  • Learn Best Practices using Project Lombok with Spring

  • Create MapStruct Mappers as Spring Components

  • Spring MockMVC with Mockito and JUnit 5

  • Spring Data JPA

  • Spring Data MongoDB

  • Spring Data R2DBC (Reactive)

  • Spring RestTemplate

  • Spring WebClient

  • Spring WebTestClient

  • Spring Security HTTP Basic Authentication

  • Spring Security OAuth2 Authentication w/ JWT

  • Spring Authorization Server

  • Spring WebMVC OAuth2 Resource Server

  • Spring WebFlux OAuth2 Resource Server

  • Spring Cloud Gateway

  • Spring AI

  • Spring Boot Maven Plugin

  • Spring Boot Gradle Plugin

  • Use Java Bean Validation with Spring

  • Spring Boot Auto-Configuration with MySQL

  • Use Spring Boot and Flyway for Database Migrations

  • Hibernate Database Relationship Mapping with Spring Data JPA

Spring AI - Learn to use OpenAI with Spring.

This is the first major Spring course to include a section on Spring AI. You will learn how to leverage OpenAI's ChatGPT API using Spring AI.

Course Extra - IntelliJ IDEA Ultimate

Students enrolling in the course can receive a free 4 month trial license to IntelliJ IDEA Ultimate. Get hands on experience using the Java IDE preferred by Spring Framework professionals.  

Course Extra - Access to a Private Slack Community

You're not just enrolling in a course > You are joining a community learning Spring.

With your enrollment to the course, you can access an exclusive Slack community. Get help from the instructor and other Spring Framework Gurus from around the world - in real time. This community is only available to students enrolled in this course. 

This is a very active Slack community with over 19,000 Spring Framework Gurus.

This is the largest online community of people learning Spring in the world.

With your enrollment, you can join this community of awesome gurus.

Closed Captioning / Subtitles

Closed captioning in English is available for all course videos.

PDF Downloads

All keynote presentations are available for you to download as PDFs.

Lifetime Access

When you purchase this course, you will receive lifetime access. You can login anytime from anywhere to access the course content.

No Risk - Money Back Guarantee 

You can buy this course with no risk. If you are unhappy with the course, for any reason, you can get a complete refund. The course has a 30 day Money Back Guarantee.

Enroll now

What's inside

Learning objectives

  • Learn to build a spring boot web application
  • Perform dependency injection with spring framework 6
  • Learn best practices for building restful apis
  • Use project lombok to speed up your development
  • Create restful web services using springmvc
  • Test spring mvc using spring mockmvc with mockito
  • Use spring data jpa with spring mvc
  • Validate data using bean validation
  • How to access a mysql database with spring boot
  • Use flyway for database migrations
  • Create restful apis using spring data rest
  • How to use spring resttemplate
  • Configure http basic auth with spring security
  • How to use and configure spring authorization server
  • Create a spring oauth2 resource server
  • Learn functional reactive programming
  • Learn spring data mongo with webflux-fn
  • How to configure spring cloud gateway
  • Show more
  • Show less

Syllabus

Introduction

Introduction and welcome to the course, Spring Framework 6: Beginner to Guru

Meet your instructor, John Thompson. The founder of Spring Framework Guru.

Read more
Getting the Most out of this Course
Setting Up Your Development Environment
Is Your IDE Free Like a Puppy?
Free 120 Day IntelliJ IDEA Trial!
Getting Help with the Spring Framework
Course Slack Room - Chat Live with Me and Other Gurus!
Using GitHub
Building a Spring Boot Web App
Introduction to Spring
Application Overview
Spring Initilizer
Open Project in IntelliJ
Using JPA Entities
JPA Relationships
Code Examples in GitHub
Equality in Hibernate
Spring Data Repositories
Initializing Data with Spring
Assignment - Add Publisher Entity
Publisher Relationships
Introduction to H2 Database Console
Introduction to Spring MVC
Create Service Layer
Configuring Spring Controllers
Thymeleaf Templates
Assignment - Display List of Authors
Project Review
Dependency Injection with Spring
SOLID Principles of OOP
Assignment: Create Spring DI Example Project
The Spring Context
Spring Test Context
Basics of Dependency Injection
Dependencies Without Injection
Dependency Injection without Spring
Dependency Injection using Spring Framework
Primary Beans
Using Qualifiers
Spring Profiles
Default Profile
Dependency Injection Assignment
Spring Bean Life Cycle
Spring Bean Life Cycle Demo
Dependency Injection Quiz
Introduction to Restful Web Services
HTTP Protocol
HTTP Request Methods
Postman Demonstration
Beginners Guide to REST
Richardson Maturity Model
Spring Framework and RESTFul Services

Quiz on Restful Web Services

Learn how to configure and use Project Lombok
Create New Project
Project Lombok Features
Project Lombok POJOs
Project Lombok Builders
Project Lombok Constructors
Project Lombok Logging
De-Lombock
Spring MVC Rest Services
Introducing SFG Beer Works
HTTP GET with Spring MVC List Operation
HTTP Client
Using Path Parameters - Get By Id
Assignment - GET Customer
Spring Boot Development Tools
HTTP POST with Spring MVC
Set Header on HTTP Response
Assignment - HTTP POST with Spring MVC
HTTP PUT with Spring MVC
Assignment - HTTP PUT with Spring MVC
HTTP DELETE with Spring MVC
Assignment - HTTP DELETE with Spring MVC
HTTP PATCH with Spring MVC
Spring MVC Rest Quiz
Assignment - HTTP PATCH with Spring MVC
Spring MockMVC Test with Mockito
Introduction to Testing with MockMVC
MockMVC Configuration
Return Data With Mockito
Using JSON Matchers
MockMVC Test List Beers
Assignment - Test GET Customer
Create JSON Using Jackson
MockMVC Test Create Beer
Assignment - Test Create Customer
MockMVC Test Update Beer
Assignment - Test Update Customer
MockMVC Test Delete Beer
Assignment - Test Delete Customer

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Examines Spring Framework 6, which is standard in industry
Taught by John Thompson, who is recognized for their work in Spring Framework
Develops Intermediate Spring Framework skills, which are core skills for working with Java
Builds a strong foundation for Beginners in Spring Framework
Multi-modal and includes a mix of media: videos, readings, discussions
Offers hands-on labs and interacive materials, such as exercises and assignments

Save this course

Save Spring Framework 6: Beginner to Guru to your list so you can find it easily later:
Save

Reviews summary

Engaging foundation in spring framework

Learners say this course is largely positive, describing it as easy to digest and well-paced. The course covers essential Spring Framework principles, such as dependency injection and data access. Students also appreciate the practical exercises and in-depth explanations provided by the instructor. While some reviewers mention outdated sections, the majority find the content engaging and relevant. Overall, learners recommend this course for beginners seeking a strong foundation in Spring Framework.
very interesting, easy to follow, easy to understand. Very enjoyable thank you!
"It’s very engaging so far"
"Very informative and great fit for me.Course was clearly presented as I am new to online learning."
Clear, instructive, straightforward!
"The course is well-structured and informative; it reiterates points to ensure you retain them!"
"Everything was explained from setup to testing and implementation with the best of tools and clarity"
Easy to understand for beginners. Well-structured. Thank you Sal.
"Awesome so relaxing I feel like I am on the table."
"Loved the course. It was easy to learn as Iam beginner"
knowledgeable and easy to understand
"Mark is amazing at teaching. I have taken a few of his classes and all of them have been great."
"I love this instructor's teaching style, his explanations are clear, he goes straight to the point, is very knowleadgeable and has a great vibe"
There are some outdated codes which do not functional anymore. Needs to be updated.
"Course is very good but not up-to-date. Some stuff do not work but you can find solutions in the comments (lecture's "Browse Q&A")."
"I would be nice to add a chapter about LangFlow, its an awesome tool."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Spring Framework 6: Beginner to Guru with these activities:
Connect with experienced Spring developers for mentorship
Seek guidance and support from experienced professionals to accelerate your learning and gain valuable industry insights related to Spring development.
Show steps
  • Identify potential mentors
  • Reach out and introduce yourself
  • Schedule meetings or calls to connect
Review course materials and create a summary document
Consolidate and reinforce course concepts by creating a comprehensive summary of key topics, concepts, and examples from the course materials.
Show steps
  • Gather course materials
  • Identify key topics and concepts
  • Summarize findings in a structured document
Create a Spring Boot application using Maven or Gradle
Practice setting up a Spring Boot project using Maven or Gradle, reinforcing the fundamentals of Spring Boot configuration and project management.
Browse courses on Spring Boot
Show steps
  • Create a new Spring Boot project using the Spring Initializr
  • Configure dependencies using Maven or Gradle
  • Run the Spring Boot application
Six other activities
Expand to see all activities and additional details
Show all nine activities
Build an application using Spring Boot and Spring MVC
Develop a project that integrates Spring Boot, Spring MVC, and RESTful APIs to reinforce the concepts learned in this course.
Browse courses on Spring MVC
Show steps
  • Create a new Spring Boot project
  • Implement a Spring MVC controller
  • Define a RESTful API using Spring MVC annotations
  • Test the RESTful API using a tool like Postman or JUnit
Develop a blog post or article on a Spring-related topic
Share your knowledge and understanding of Spring by creating a blog post or article that discusses a specific Spring-related topic or project, reinforcing your learning through writing and sharing.
Browse courses on Spring
Show steps
  • Choose a topic to write about
  • Research and gather information
  • Write and edit the blog post or article
  • Publish and promote your content
Explore advanced Spring topics such as Spring Cloud and Spring Batch
Extend your Spring knowledge by exploring advanced topics like Spring Cloud for distributed systems and Spring Batch for batch processing, broadening your understanding of Spring's capabilities.
Browse courses on Spring Cloud
Show steps
  • Identify advanced Spring topics to explore
  • Find relevant tutorials or documentation
  • Follow tutorials and implement concepts
Deliver a presentation on the security features of Spring
Develop a presentation to synthesize and showcase your understanding of the security capabilities provided by Spring Security, including authentication, authorization, and other security aspects.
Browse courses on Spring Security
Show steps
  • Research different security features of Spring
  • Create a presentation outline
  • Prepare slides and supporting materials
  • Deliver the presentation
Design and implement a Spring-based web application
Build a complete web application using Spring to solidify your understanding of the full-stack development process with Spring, including database integration, user authentication, and front-end development.
Browse courses on Web Development
Show steps
  • Plan and design the web application
  • Create the back-end using Spring Boot and Spring MVC
  • Develop the front-end using HTML, CSS, and JavaScript
  • Integrate the back-end and front-end
  • Test and deploy the web application
Contribute to open-source Spring projects
Engage with the Spring community by contributing to open-source projects to deepen your understanding of Spring and gain practical experience in a real-world environment.
Browse courses on Open Source
Show steps
  • Identify open-source Spring projects
  • Choose an area to contribute
  • Submit pull requests with your contributions

Career center

Learners who complete Spring Framework 6: Beginner to Guru will develop knowledge and skills that may be useful to these careers:
Back-End Web Developer
Many Back End Web Developers work on Spring-based applications. This course provides a lot of the foundational Spring knowledge needed to succeed in this career. The course covers the Spring Framework, Spring Boot, Spring MVC, Spring Data JPA, and Spring Security, which are essential for building robust and scalable web applications. 
Java Developer
This course covers Java programming as it pertains to back end web development with the Spring Framework. Java is the most widely used programming language for enterprise applications, and Spring is the most popular Java framework. With Spring and Java, you can build cloud-based applications that can handle millions of users. 
Software Engineer
Software Engineers who work with Spring have a strong understanding of Java, Spring, and database technologies. This course provides a comprehensive overview of Spring and its ecosystem, and it can help you build a solid foundation for a career in software engineering.
Full-Stack Web Developer
While this course primarily focuses on back end development with Spring, it also covers some front end development with Thymeleaf templates. This course can help you build a strong foundation for a career as a Full Stack Web Developer.
Data Engineer
This course covers Spring Data JPA, which is a powerful library for working with relational databases in Spring applications. Data Engineers can use Spring Data JPA to build data pipelines, perform data analysis, and create data-driven applications. 
Cloud Architect
This course covers Spring Cloud Gateway, which is a powerful library for building API gateways and managing API traffic. Cloud Architects can use Spring Cloud Gateway to design and implement cloud-based architectures for their organizations.
Security Engineer
This course covers Spring Security, which is a powerful library for securing Spring applications. Security Engineers can use Spring Security to implement authentication, authorization, and other security measures to protect their applications from threats. 
DevOps Engineer
This course covers Spring Boot, which is a powerful library for building and deploying Spring applications. DevOps Engineers can use Spring Boot to automate the build, deployment, and management of their applications.
Data Scientist
This course covers Spring Data MongoDB, which is a powerful library for working with MongoDB databases in Spring applications. Data Scientists can use Spring Data MongoDB to build data pipelines, perform data analysis, and create data-driven applications. 
Machine Learning Engineer
This course covers Spring AI, which is a powerful library for integrating artificial intelligence into Spring applications. Machine Learning Engineers can use Spring AI to build machine learning models, train those models on data, and deploy those models into production. 
AI Engineer
This course covers Spring AI, which is a powerful library for integrating artificial intelligence into Spring applications. AI Engineers can use Spring AI to build artificial intelligence systems, train those systems on data, and deploy those systems into production. 
Blockchain Developer
This course does not cover blockchain development, but it does cover Java programming, which is a popular language for blockchain development.
Front-End Developer
This course primarily focuses on back end development with Spring, but it also covers some front end development with Thymeleaf templates. 
UX Designer
Product Manager
This course does not cover product management.

Reading list

We've selected eight books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Spring Framework 6: Beginner to Guru.
Provides a comprehensive overview of Hibernate, a popular Java persistence framework. It covers topics such as mapping Java objects to relational databases, caching, and performance tuning.
Provides a comprehensive overview of Spring Security, a popular Java security framework. It covers topics such as authentication, authorization, and protecting web applications from attacks.
Provides a comprehensive overview of Spring Data JPA, a popular Java framework for accessing data using JPA. It covers topics such as mapping Java objects to relational databases, performing CRUD operations, and using queries.
Provides a comprehensive overview of effective Java programming practices. It covers topics such as object-oriented design, concurrency, and performance.
Provides a comprehensive overview of Java programming for beginners. It covers topics such as object-oriented design, data structures, and algorithms.
Provides a comprehensive overview of Spring Boot 2.0, a popular Java framework for building web applications. It covers topics such as dependency injection, web development, and testing.
Provides a comprehensive overview of Spring Boot 2.0, a popular Java framework for building web applications. It covers topics such as dependency injection, web development, and testing.
Provides a comprehensive overview of Spring Security 5.0, a popular Java framework for securing web applications. It covers topics such as authentication, authorization, and protecting web applications from attacks.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Spring Framework 6: Beginner to Guru.
Effective OAuth2 with Spring Security 5 and Spring Boot
Most relevant
Spring Framework 5: Using Spring Security OAuth2 Login
Most relevant
Testing Spring Boot: Beginner to Guru
Most relevant
Spring Boot Microservices with Spring Cloud Beginner to...
Most relevant
Spring Framework 5: Beginner to Guru
Most relevant
Authentication and Authorization in Spring Boot 3 Using...
Most relevant
Spring Boot 3: The Big Picture
Most relevant
Spring Boot 2: The Big Picture
Most relevant
[NEW] Spring Boot 3, Spring 6 & Hibernate for Beginners
Most relevant
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser