Understanding Password Encoders in Spring Security

Since Spring Security 5, numerous changes happened to how passwords are handled within the security context. The major change was how the framework started making developers encode or hash the passwords when storing and validating them. If passwords are stored in plain text, the security would be compromised by anyone who has access to the…

Session Tracking modes in Spring security

Applications maintain their state with the user using a concept called session. In this post we will see about different type of session tracking modes and how they work. When an application authenticates a user, it can do two possible things. Forget about the user after the request is processed and user will have to authenticate for each…

Generate PDF files with Spring Boot using ITextPDF

In this post, we will discuss on how to generate PDF files using Spring Boot, thymeleaf and Itext library. Understanding Itext PDF The library helps generate PDF files by either creating each element manually or by converting a HTML+CSS into PDF. The methods provided by this library is straightforward. Let’s see both of these methods…

FreeMarker vs Groovy vs Mustache vs Thymeleaf

In this post, we will try to compare FreeMarker vs Groovy vs Mustache vs Thymeleaf with examples. Spring Boot supports FreeMarker, Groovy, Mustache and Thymeleaf. But, how do they compare with each other? Let’s find out which template engine is the best for different use-cases in spring boot. For this comparison, I have created four…

Spring Boot Custom Health Indicators

In this post, We will learn about writing Custom Health Check indicators for Spring Boot Applications. Spring Boot out of the box health checks are good. But in the real world, it is often the case that one application relies on another application’s availability for performing operations. In this case, it would be helpful to…