MySQL, Oracle, Linux, 软件架构及大数据技术知识分享平台

网站首页 > 精选文章 / 正文

MyBatis-Plus实用指南(mybatisplus常用方法)

2025-04-10 23:11 huorong 精选文章 10 ℃ 0 评论

一、核心特性与快速集成

无侵入增强:MyBatis-Plus在MyBatis基础上只做增强不做改变,通过继承BaseMapper接口可直接使用预定义的CRUD方法

快速集成:

xml

Copy Code

com.baomidou

mybatis-plus-boot-starter

3.5.3.1

可替代传统MyBatis的starter依赖

自动映射:基于实体类注解自动映射数据库表,支持驼峰与下划线自动转换

二、高效CRUD操作

基础Mapper用法:

java

Copy Code

public interface UserMapper extends BaseMapper {}

// 内置方法示例

userMapper.selectById(1);

userMapper.insert(user);

userMapper.updateById(user);


批量操作:

java

Copy Code

// 批量插入(性能优于循环单条插入)

userMapper.insertBatchSomeColumn(list);

条件构造器:

java

Copy Code

// Lambda表达式写法

LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();

wrapper.eq(User::getAge, 20)

.like(User::getName, "张");

userMapper.selectList(wrapper);

三、实用功能配置

逻辑删除:

yaml

Copy Code

mybatis-plus:

global-config:

db-config:

logic-delete-field: isDelete # 逻辑删除字段名

logic-delete-value: 1 # 删除标记值

logic-not-delete-value: 0 # 正常标记值

配置后删除操作自动转为更新

自动填充:

java

Copy Code

@TableField(fill = FieldFill.INSERT)

private LocalDateTime createTime;

@TableField(fill = FieldFill.INSERT_UPDATE)

private LocalDateTime updateTime;

分页插件:

java

Copy Code

@Configuration

public class MybatisPlusConfig {

@Bean

public MybatisPlusInterceptor mybatisPlusInterceptor() {

MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();

interceptor.addInnerInterceptor(new PaginationInnerInterceptor());

return interceptor;

}

}


四、代码生成器

基础配置:

java

Copy Code

FastAutoGenerator.create("jdbc:mysql://localhost:3306/test", "root", "123456")

.globalConfig(builder -> builder.author("baomidou"))

.packageConfig(builder -> builder.parent("com.baomidou.mybatisplus"))

.strategyConfig(builder -> builder.addInclude("user_info"))

.execute();

生成内容:自动生成Entity、Mapper、Service、Controller等层代码

五、性能优化建议

批量处理:使用executeBatch替代循环单条SQL

二级缓存:谨慎开启,适合读多写少场景

SQL打印:开发环境可开启SQL日志,生产环境建议关闭

yaml

Copy Code

mybatis-plus:

configuration:

log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

官方文档地址:
https://baomidou.com/pages/24112f

Tags:mybatis-plus删除

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言