Spring Core Advanced - Beyond the Basics
What you will learn
Use Spring Data JPA Repositories
Use Command Objects with Spring MVC
Leverage Spring to validate user input on Command Objects
Create and display custom validation messages
Configure Spring Security to authenticate against a database.
Secure a web application with Spring Security.
Understand Spring's approach to Aspect Oriented programming (AOP)
Publish and consume custom Spring Events
Configure scheduled tasks in Spring.
Learn advanced Configuration of Spring, by removing Spring Boot from the project and manually providing all the objects configured by Spring Boot.
Use Spring to Send and Receive JMS Messages
Section 1: Course Introduction
Section 2: Spring Data JPA
Section 3: Command Objects and Spring MVC
Section 4: Introduction to Spring Security
Section 5: Aspect Oriented Programming
Section 6: Spring Application Events
Section 7: Task Scheduling in the Spring Framework
Section 8: Removing Spring Boot
Section 9: Spring Framework JMS Support
Section 10: Troubleshooting Spring
Enterprise class use of Spring Framework 4 and Spring Boot
- Students should be comfortable programming in Java and using Maven to build Java projects
- Students should know about the core features of Spring around dependency injection and inversion of control (IoC)
My Spring Core course is intended to be a predecessor to this course. In Spring Core, I gave you a solid foundation in 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
- Externalized messages
- Using Spring Security
- Aspect Oriented Programming
- Spring Application Events
- Scheduled Tasks
- 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.
Who this course is for:
- This is not a beginner level course on the Spring Framework
- This course is for students with some knowledge of the Spring Framework wishing to learn about advanced features of Spring commonly used in the enterprise.