I got an opportunity to review Sanjay Patel‘s Spring Course Material which is divided into 3 modules.
http://www.naturalprogrammer.com/spring-tutorial/
The total course is divided into 3 modules covering various aspects of web application development using Spring/SpringBoot framework.
- Module I : Spring Framework 4 And Dependency Injection For Beginners
- Module II : Spring Framework for the Real World
- Module III : Spring Framework REST API Development
Module I: Spring Framework 4 and Dependency Injection For Beginners
The material is structured in such a way that the readers can follow the course and practice in a step by step manner.
The following topics are covered in this Module:
- Quick and brief introduction to Dependency Injection using Spring
- Loading and binding properties from properties files
- Using environment profiles
- Brief introduction about using @Conditional
- Sending Email
Overall, this module will be good for people who already have some basic knowledge on Spring. But for complete beginners it may be overwhelming to understand all these Spring concepts along with SpringBoot.
Module II: Spring Framework for the Real World
This module covers the most of the aspects of web application development. The explanation is straight forward and to the point.This module explains the concepts by implementing various use-cases of typical User Management such as SignIn, SignUp, Forgot Password, Reset Password etc.
This module covers:
- Implementing Controllers, Request Parameters binding
- Performing Validations, Customizing Error Messages
- Creating custom validation constraints
- Exception Handling
- Brief introduction to Spring Data JPA and Transaction Handling
- Implementing Security using Spring Security
- Configuring Spring Security
- Form based Login, Remember Me, Password Encryption
- Spring Security JSP Tag libraries
- A quick introduction to Asynchronous processing using @Async
- Scheduling tasks using @Scheduled
This module gives hands-on experience on using many of the Spring web application development tasks. This module also contains creating many commonly used utilities such as getting I18N messages, getting login user details etc which comes very handy.
We can also use JSP with SpringBoot jar type packaging as described in Spring Boot With JSPs in Executable Jars(https://dzone.com/articles/spring-boot-with-jsps-in-executable-jars-1)
Module III: Spring Framework REST API Development
This module covers building REST API using SpringBoot. This module contains excellent material covering most of the aspects required for building a good REST API.This module covers:
- Creating REST Endpoints using @RestController
- Exception handling via @ControllerAdvice
- Environment specific properties using Profiles
- Using @ConfigurationProperties to bind properties
- How to catch constraint violation exceptions
- How to use reCAPTCHA
- Securing REST API
- Customizing Spring Security to support REST API
- Switching User
- Handling CSRF and CORS
- This module filled with lot of interesting material required to build a Secured REST API.
However, I feel like there are few important things which are not covered:
- No mention of Serializing JPA entities
- Dealing with bi-directional JPA Entity relation serialization issues
- Token based Security
Overall this course looks very to me and I strongly recommend this course if you are looking for a fast paced Spring course.
No comments:
Post a Comment