Tag

MyBatis-Plus

2 views collected around this technical thread.

macrozheng
macrozheng
Jun 13, 2025 · Backend Development

Why MyBatis-Plus saveBatch Triggers Unexpected Transaction Rollback and How to Fix It

This article explains a puzzling Spring Boot transaction rollback caused by MyBatis-Plus's saveBatch method, reproduces the error with nested @Transactional calls, analyzes why the rollback flag is set, and offers a practical workaround by replacing the framework batch operation with a custom mapper implementation.

JavaMyBatis-PlusSpringBoot
0 likes · 6 min read
Why MyBatis-Plus saveBatch Triggers Unexpected Transaction Rollback and How to Fix It
Java Tech Enthusiast
Java Tech Enthusiast
Jun 9, 2025 · Backend Development

Eliminate Repetitive Audit Fields in Java: 6 Proven Strategies with MyBatis‑Plus, AOP, and JWT

This article presents a production‑tested, six‑step solution for automatically handling common entity fields such as createTime, updateTime, createUser, and updateUser in Java backend systems, covering MyBatis‑Plus auto‑fill, AOP interception, multi‑data‑source adaptation, distributed ID generation, pitfalls avoidance, performance tuning, and audit logging.

AOPAutomatic Field FillingJava
0 likes · 9 min read
Eliminate Repetitive Audit Fields in Java: 6 Proven Strategies with MyBatis‑Plus, AOP, and JWT
Java Tech Enthusiast
Java Tech Enthusiast
Jun 4, 2025 · Backend Development

Object‑Oriented Join Queries in MyBatis‑Plus Using the mybatis‑plus‑join Library

The article explains how to replace hand‑written SQL join statements in MyBatis with an object‑oriented approach by adding the mybatis‑plus‑join library, configuring the Maven dependency, and writing concise Java code that leverages MPJQueryWrapper for clear and error‑free join queries.

JavaJoin QueryMyBatis-Plus
0 likes · 3 min read
Object‑Oriented Join Queries in MyBatis‑Plus Using the mybatis‑plus‑join Library
Selected Java Interview Questions
Selected Java Interview Questions
May 27, 2025 · Backend Development

Mybatis-Plus Generator UI: A Web UI Tool for Custom Code Generation in Spring Boot

This article introduces the Mybatis-Plus Generator UI, a highly customizable web‑based code generator that wraps Mybatis‑Plus, explains its features, shows how to integrate it via Maven, run a sample main class, configure generation strategies, customize templates and naming rules, and even extend the frontend with Yarn builds.

Code GenerationJavaMyBatis-Plus
0 likes · 11 min read
Mybatis-Plus Generator UI: A Web UI Tool for Custom Code Generation in Spring Boot
Code Ape Tech Column
Code Ape Tech Column
May 26, 2025 · Backend Development

Automated Management of Common Fields in Order Modules Using MyBatis-Plus, AOP, and JWT

This article presents a production‑validated solution that combines MyBatis‑Plus auto‑fill, AOP, JWT, multi‑data‑source handling, distributed ID generation, performance tuning, and audit logging to eliminate repetitive maintenance of common fields such as createTime, updateTime, createUser, and updateUser in Java backend order services.

AOPCommon FieldsJava
0 likes · 9 min read
Automated Management of Common Fields in Order Modules Using MyBatis-Plus, AOP, and JWT
Architecture Digest
Architecture Digest
May 21, 2025 · Backend Development

Automating Common Entity Fields in Java Backend with MyBatis-Plus, AOP, and JWT

This article presents a production‑tested solution for automatically handling common entity fields such as createTime, updateTime, createUser, and updateUser in Java backend systems, combining MyBatis‑Plus auto‑fill, AOP interceptors, custom annotations, multi‑datasource support, distributed ID generation, and auditing techniques to eliminate repetitive code and reduce bugs.

AOPJavaMyBatis-Plus
0 likes · 9 min read
Automating Common Entity Fields in Java Backend with MyBatis-Plus, AOP, and JWT
Code Ape Tech Column
Code Ape Tech Column
May 13, 2025 · Backend Development

Elegant Multi‑Tenant Data Isolation with MyBatis‑Plus in SaaS Applications

This article explains the concept of SaaS multi‑tenant architecture, compares three data‑isolation designs, and demonstrates how to implement elegant tenant‑level data isolation in Java using MyBatis‑Plus’s tenant plugin, complete with configuration, handler code, SQL examples, and troubleshooting tips.

Data IsolationJavaMulti-Tenant
0 likes · 15 min read
Elegant Multi‑Tenant Data Isolation with MyBatis‑Plus in SaaS Applications
Java Captain
Java Captain
May 12, 2025 · Backend Development

Automatic Construction of MyBatis-Plus QueryWrapper Using Reflection and Generics

This article describes a utility method that leverages Java reflection and generics to automatically generate a MyBatis-Plus QueryWrapper from a DTO, handling field‑name mapping, type‑specific query conditions, and camel‑to‑snake case conversion for seamless database queries.

JavaMyBatis-PlusORM
0 likes · 4 min read
Automatic Construction of MyBatis-Plus QueryWrapper Using Reflection and Generics
Java Tech Enthusiast
Java Tech Enthusiast
May 5, 2025 · Backend Development

Advanced MyBatis-Plus Features: Batch Insert, Logical Delete, Auto Field Fill, Type Handlers, Dynamic Table Names, Multi-Tenant

The article demonstrates advanced MyBatis‑Plus techniques—including high‑speed batch inserts with rewriteBatchedStatements, logical deletes via global config, automatic timestamp and user fields through MetaObjectHandler, JSON serialization with JacksonTypeHandler, dynamic table naming via an interceptor, and a brief multi‑tenant overview—to streamline development and reduce boilerplate code.

Dynamic TableJavaMyBatis-Plus
0 likes · 16 min read
Advanced MyBatis-Plus Features: Batch Insert, Logical Delete, Auto Field Fill, Type Handlers, Dynamic Table Names, Multi-Tenant
Code Ape Tech Column
Code Ape Tech Column
Apr 29, 2025 · Backend Development

Custom SQL Injector in MyBatis‑Plus: Built‑in Extensions, Global Configuration, and How to Create Your Own

This article explains the concept of SQL injectors in MyBatis‑Plus, lists the built‑in injectable methods, shows how to configure them globally, demonstrates creating a custom mapper and injector with full code examples, and provides step‑by‑step testing procedures for extending MyBatis‑Plus functionality.

Custom MapperJavaMyBatis-Plus
0 likes · 7 min read
Custom SQL Injector in MyBatis‑Plus: Built‑in Extensions, Global Configuration, and How to Create Your Own
Top Architect
Top Architect
Apr 28, 2025 · Backend Development

Replacing MyBatis with MyBatis-Plus: Debugging LocalDateTime Conversion Errors and MySQL Connector Upgrades

The article walks through migrating an old MySQL‑5.7 project from MyBatis 3.5.0 to MyBatis‑Plus 3.1.1, diagnosing a LocalDateTime conversion exception caused by an outdated mysql‑connector‑java driver, and resolves it by upgrading the driver version, highlighting the need for careful component compatibility checks.

JavaLocalDateTimeMyBatis-Plus
0 likes · 10 min read
Replacing MyBatis with MyBatis-Plus: Debugging LocalDateTime Conversion Errors and MySQL Connector Upgrades
Java Captain
Java Captain
Apr 27, 2025 · Backend Development

Parallel Pagination Query Interceptor for MyBatis-Plus in Spring Boot

This article explains how to implement a custom MyBatis-Plus pagination interceptor that parallelizes COUNT and data queries using CompletableFuture and a configurable thread pool in Spring Boot, suitable for large single-table and complex multi-table pagination scenarios, and provides detailed configuration and code examples.

JavaMyBatis-PlusParallel Query
0 likes · 13 min read
Parallel Pagination Query Interceptor for MyBatis-Plus in Spring Boot
Java Captain
Java Captain
Apr 21, 2025 · Backend Development

MyBatis-Plus Guide: Features, Quick Start, CRUD Extensions, and Advanced Usage

This article introduces MyBatis‑Plus, an enhancement for MyBatis, outlining its lightweight features, step‑by‑step setup including database creation, Maven dependency, configuration, entity and mapper definitions, CRUD operations, pagination, optimistic locking, logical deletion, condition wrappers, and code generation utilities for rapid backend development.

CRUDCode GenerationJava
0 likes · 12 min read
MyBatis-Plus Guide: Features, Quick Start, CRUD Extensions, and Advanced Usage
Architect's Guide
Architect's Guide
Apr 12, 2025 · Backend Development

Refactoring Data Validation with Java 8 Functional Interfaces

This article demonstrates how Java 8's functional interfaces, especially Function and SFunction, can be used to abstract and reuse data‑validation logic, dramatically reducing boilerplate code, improving readability, and making validation rules easier to maintain and extend.

Data ValidationFunctional ProgrammingJava
0 likes · 12 min read
Refactoring Data Validation with Java 8 Functional Interfaces
Java Tech Enthusiast
Java Tech Enthusiast
Mar 7, 2025 · Backend Development

Implementing a Responsibility Chain Pattern with Spring Boot and MyBatis Plus

The article demonstrates how to build a dynamic Chain of Responsibility in a Spring Boot and MyBatis‑Plus application by defining an abstract handler, implementing concrete @Component beans that modify a shared Lombok‑based context, retrieving them via an ApplicationContext‑aware proxy utility, and invoking them in a client‑specified order through a REST endpoint, while suggesting LiteFlow as a production alternative.

JavaMyBatis-PlusREST API
0 likes · 9 min read
Implementing a Responsibility Chain Pattern with Spring Boot and MyBatis Plus
Selected Java Interview Questions
Selected Java Interview Questions
Feb 27, 2025 · Backend Development

Step-by-Step Guide to Using MybatisX with Spring Boot

This article introduces MybatisX, an IntelliJ IDEA plugin that streamlines MyBatis and MyBatis‑Plus development, and provides a detailed step‑by‑step tutorial on setting up a Spring Boot project, configuring the database, generating code, and writing a simple controller using MyBatis‑Plus.

JavaMyBatis-PlusMyBatisX
0 likes · 5 min read
Step-by-Step Guide to Using MybatisX with Spring Boot
Selected Java Interview Questions
Selected Java Interview Questions
Feb 17, 2025 · Backend Development

Refactoring Data Validation with Java 8 Functional Interfaces and SFunction

This article demonstrates how to use Java 8 functional interfaces, especially Function and the MyBatis‑Plus SFunction wrapper, to eliminate repetitive data‑validation code, improve readability, and create reusable validation utilities for backend services.

Data ValidationFunctional ProgrammingJava
0 likes · 14 min read
Refactoring Data Validation with Java 8 Functional Interfaces and SFunction
Architect's Guide
Architect's Guide
Feb 15, 2025 · Backend Development

Using @TableLogic Annotation for Logical Deletion in MyBatis-Plus

This article explains how the @TableLogic annotation in MyBatis-Plus implements logical deletion by converting delete operations into updates, details its parameters, supported field types, global configuration, and provides complete Java and SQL code examples for practical usage.

AnnotationJavaLogical Deletion
0 likes · 8 min read
Using @TableLogic Annotation for Logical Deletion in MyBatis-Plus
Java Architecture Diary
Java Architecture Diary
Jan 14, 2025 · Backend Development

MyBatis-Plus 3.x Release Highlights: New Features, Fixes, and Upgrade Guide

MyBatis-Plus, an enhanced toolkit for MyBatis, simplifies CRUD operations and injects dynamic SQL, and this release introduces numerous bug fixes, new annotations, code‑generator enhancements, and upgrades to MyBatis, Spring Boot, and Kotlin, with important migration notes for developers.

CRUDJavaMyBatis-Plus
0 likes · 5 min read
MyBatis-Plus 3.x Release Highlights: New Features, Fixes, and Upgrade Guide
Top Architect
Top Architect
Jan 8, 2025 · Backend Development

Implementing Data Permission Interceptor in MyBatis‑Plus with Custom Annotations

This article explains how to create a custom annotation and a MyBatis‑Plus interceptor that automatically injects data‑permission SQL conditions based on the current user's role, showing both a basic implementation and an advanced version with role‑based scope handling, complete with code examples and integration steps.

Data PermissionInterceptorJava
0 likes · 16 min read
Implementing Data Permission Interceptor in MyBatis‑Plus with Custom Annotations