Spring Boot Persistence with MyBatis

MyBatis is a lightweight SQL-mapping framweork that removes most JDBC boiler-plate while still giving full control over SQL. The following walkthrough shows how to integrate it into a Spring Boot project and perform common CRUD operations. Project bootstrap and data source configuration Create a new Spring Boot project with the spring-boot- ...

Posted on Wed, 20 May 2026 08:09:11 +0000 by AceE

Understanding Lombok's Annotation Processing Mechanism

Introduction In recent projects, I've observed that many modern Java applications utilize Lombok, a library designed to automate the generation of boilerplate methods like getters, setters, and toString(). By simply annotating classes, developers can eliminate the need to manually write these repetitive methods. Lombok Setup Adding Dependency t ...

Posted on Wed, 13 May 2026 00:46:05 +0000 by rdimaggio

IntelliJ Decompiler Anomalies: Constant Folding, Magic Numbers, and Debugger-Induced State Changes

When inspecting auto-generated equality or hashing implementations in IntelliJ IDEA, developers may encounter a seemingly invalid assignment: int PRIME = true;. This occurs frequently when frameworks manipulate bytecode directly to synthesize methods like hashCode(). At first glance, assigning a boolean literal to an integer variable violates s ...

Posted on Fri, 08 May 2026 03:06:10 +0000 by adrian28uk

Lombok Builder Annotation Pitfall: Why Default Field Values Disappear

A stable public service interface, previously maintained and later handed over, started throwing NullPointerException errors when a new consumer system integrated with it. The error occurred within a conditional block: if (req.getFlag() && req.getName() != null && req.getType() != null) { // execute business logic ...

Posted on Thu, 07 May 2026 07:18:21 +0000 by pnoeric