Download Tutorial Spring Framework 5: Beginner to Guru
Learn Spring with the most modern and comprehensive course available for Spring Framework 5 and Spring Boot 2. You will see how to build multiple real world applications using Spring Framework 5.
This is the only major Spring Framework course on Udemy developed completely on version 5 of the Spring Framework.
Be careful of Spring Framework 4 courses, which have just added some content for Spring Framework 5.
The in demand technologies you will use to build Spring Framework applications, include:
- Spring Framework 5
- Spring Boot 2
- Spring Data JPA
- Spring MVC
- Spring MockMVC
- Spring WebFlux
- Spring Web Client
- Spring Data MongoDB
- Spring Security (Coming in Q4 2018)
- Project Lombok
- JUnit 4 and JUnit 5
All source code examples used in this course have been developed using the latest version of the Spring Framework – Spring Framework 5 and Spring Boot 2.
You will see how modern Spring Framework development is done by leveraging the features of Spring Boot 2.
Jump In and Build a Spring MVC App with Spring Boot!
We’ll jump right into web development with the Spring Framework. I’ll show you how kick off a Spring Boot project by using the Spring Initializr. We will then go step by step to build a simple Book / Author web application.
You will see how easy it is to use Spring Boot, Spring MVC, and Spring Data JPA to create a functional web application running under Tomcat with a H2 in-memory database.
Use Test Driven Development!
In addition to teaching you Spring Framework 5, you will learn about modern best practices used in enterprise application development.
As we build the applications, you’ll see me using Test Driven Development (TDD) with JUnit and Mockito.
You will learn how to test Spring applications using JUnit 4 and JUnit 5. While JUnit 5 has been released for some time, many companies are still using JUnit 4.
See how using Mockito mocks will keep your Spring Framework unit tests light and fast!
You’ll also see how the Spring context can be used for more complex integration tests.
These techniques are best practices used by companies all over the world to build and manage large scale Spring Framework applications.
GitHub Source Code
You will have complete access to all source code examples used in the course.
In each lesson where we write code, you will have a link to GitHub with two branches in the Github repository.
The first branch is the starting state of the code.
The second branch is the ending state of the code.
You can see exactly what changed in each lesson. Each step of the way, you have a working example you can use for troubleshooting.
In fact, you will get access to 24 (and growing!) different GitHub repositories – each packed with Spring Framework programming examples.
And, you’re encouraged to fork my GitHub repositories so you can share the Spring Framework applications, which you built, to future employers!
Continuous Integration Builds
Since we are using GitHub and have great test coverage, I also show you how easy it is to set up Continuous Integration builds with CircleCI.
Continuous Integration builds are another best practice used by enterprise developers.
Using CircleCI makes your CI builds a snap!
We all know Java development can require a lot of boiler plate code. It’s just the nature of Java.
Would you like to see how to slash your boiler plate code using Project Lombok?
Spring Data JPA and Hibernate
Spring MVC and Hibernate have long been cornerstones of the Spring Framework. You will learn how to use Spring MVC, Spring Data JPA and Hibernate to build a real world web application. You’ll learn about Hibernate configuration, and about the mapping of JPA entities.
The Thymeleaf template engine is hugely popular with the Spring community. You will see how easy Spring Boot makes using Thymeleaf with Spring MVC.
While Bootstrap CSS is not a focus of the course, we will leverage Bootstrap CSS to make our web pages look awesome!
Spring MVC has a lot of robust capabilities.
I start you off showing you how to build recipe application (using TDD, of course).
Initially, it’s all happy path development. We go back and add custom exception handling, form validation, and internationalization.
In the course you will also learn how to use Spring MVC to create RESTful APIs.
A big theme of Spring Framework 5 is Reactive Programming.
Inside the course we build a web application using Thymeleaf, Spring MVC, Spring Data MongoDB, and MongoDB.
We then take the MongoDB application we built and convert it to a Reactive application. You’ll see how you can leverage the new Reactive types inside the Spring Framework from the data tier to the web tier.
You will get to see step by step how to convert a traditional Spring MVC application to an end to end reactive application using the WebFlux framework – which is brand new to Spring Framework 5.
Spring Pet Clinic
Spring Pet Clinic is a classic reference application used to demonstrate best practices. The Pet Clinic application actually has it’s origin within the J2EE/JEE community.
The Spring Framework team took the original Pet Clinic application and rebuilt it using Spring, to demonstrate best practices.
In this course, we will re-create the Spring Pet Clinic application.
You will get to see how to create a Spring Framework application from the ground up. Step by Step.
The approach used to develop the Spring Pet Clinic application is slightly different than the other applications developed in the course.
In addition to showing you how to build a Spring Framework application, you will see best practices in software development.
We start off the Pet Clinic project by creating a GitHub repository. Then using Spring Initializer to generate the basic shell of Spring Boot project.
Next you see how to use GitHub to mimic Agile development practices, such as using issues and a backlog.
We plan development of the Spring Pet Clinic using GitHub Issues. Planning work into issues creates a work backlog, which is an important Agile concept.
In fact, many organizations have a formal rule that no code is changed without having an issue or some type of ticket (in Github, Jira, or some other issue tracker)
From there, we use GitHub issues to complete programming assignments. Lessons start with a GitHub ticket, then we complete the programming assignment.
You will see how to build a Spring Framework application, step by step, using best practices in software development.
Spring Framework 5 GA Release
This Spring Framework course has been developed completely on Spring Framework 5. Early developed was performed using Spring Framework 5 ‘Release Candidate’ releases.
Spring Framework 5 went GA (General Availability) in September of 2017, and Spring Boot 2.0 went GA in March of 2018.
All source code examples have been updated to the GA releases of the Spring Framework and Spring Boot.