Posts
All the articles I've posted.
Where to Put Filter Conditions in MySQL Joins
A two-table LEFT JOIN example compares the results of putting filter conditions in ON versus WHERE. It shows how a condition on the right-hand table in WHERE removes some left-hand records, and how moving the condition changes the join results to match the intended output.
Spring Boot: Pitfalls with @Async and @Transactional
Using asynchronous conversion of uploaded Word documents to images as an example, this article investigates why @Async did not take effect in Spring Boot. It explains the importance of return types and calls through a proxy, and discusses similar considerations for @Transactional when methods call other methods in the same class.
Using Shiro: Complete Spring Boot Integration Code
The main code for integrating Shiro, Spring Boot, and JWT: the Shiro configuration, a custom Realm, an authentication filter, and a JWT utility. Together, these four pieces show login authentication, request interception, and token creation and validation, with a look back at the session-management choices made during integration.
Using Shiro: Integrating JWT for More Capable Tokens
JWT is integrated with Shiro and Spring Boot to issue tokens after login and parse, validate, and check them for expiry on subsequent requests. This article explains the JWT utility, authentication filter, and configuration properties, and traces a dependency-injection failure caused by constructing the filter manually.