My Spring Core course is intended to be a predecessor to this course. In Spring Core, I give you a solid foundation for working with the Spring Framework.
In this course, I build upon that foundation expanding your skills with the Spring Framework. The skills taught in this course are skills you will need for enterprise application development using the Spring Framework.
Spring Data JPA
Form Validation in Spring MVC
Using Spring Security
Aspect Oriented Programming
Spring Application Events
Advanced Spring Configuration
I start this course by showing students how to replace the traditional JPA DAO structure we created in the Spring Core course, using Spring Data JPA. I continue building upon concepts learned in the Spring Core course by showing students how to use Command objects in Spring MVC and how to perform server side property validations.
Next we get into using Spring Security. Spring Security is one of the most widely used modules of the Spring Framework.
I show you how to add Spring Security to our existing Spring MVC web application. We configure Spring Security to read user information from our database, and then secure URLs to authenticated users and users with specific security roles.
Aspect Oriented Programming (AOP) is a really cool programming paradigm, and its supported by the Spring Framework. In the module on AOP, I show you how to use AOP to log login activity in Spring Security. By using AOP, we don't need to change any of the Spring Security code.
The Spring Framework has a very mature events framework we can use for application events. I show you how to create a custom application event, then how to setup an event handler to take action on specific application events.
In Spring Core and in this course, the project we're working uses Spring Boot as its foundation. Spring Boot is doing a lot of automatic configuration for us.
In the last module of this course, we will remove Spring Boot from the project. This will require us to configure all the objects and data sources being provided by Spring Boot manually. In doing so, students will gain insight into all the automation being provided by Spring Boot, and how to manage a more advanced Spring Configuration.