Mybatis-Plus在Springboot下用法详解
MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。
详细介绍可见http://mp.baomidou.com/guide/。配置例子可见https://github.com/zhuquanwen/mybatis-plus-learn。使用流程如下:
1 加入依赖,以gradle工程为例
compile group: 'com.baomidou', name: 'mybatis-plus-boot-starter', version: "${mybatis_plus_boot_starter_version}"
compile group: 'org.apache.velocity', name: 'velocity-engine-core', version: "${velocity_engine_core_version}"
compile group: 'freemarker', name: 'freemarker', version: "${freemarkerVersion}"
compile group: 'org.projectlombok', name: 'lombok'
compile group: 'com.baomidou', name: 'kaptcha-spring-boot-starter', version: "${kaptchaVersion}"
compile group: 'com.alibaba', name: 'druid-spring-boot-starter', version: "${druidVersion}"
2 基本配置 数据源使用druid连接Mysql,数据库信息配置文件在application-dev.properties,Java配置在com.mybatis.plus.mybatisplususe.config包下
mybatis-plus:
global-config:
#主键类型 0:"数据库ID自增", 1:"用户输入ID",2:"全局唯一ID (数字类型唯一ID)", 3:"全局唯一ID UUID";
id-type: 0
db-config:
# 逻辑已删除值(默认为 1)
logic-delete-value: 1
# 逻辑未删除值(默认为 0)
logic-not-delete-value: 0
#jackson配置
spring.jackson.serialization.indent_output: true
spring.http.converters.preferred-json-mapper: jackson
spring.jackson.date-format: yyyy-MM-dd HH:mm:ss
spring.jackson.joda-date-time-format: yyyy-MM-dd HH:mm:ss
spring.jackson.time-zone: GMT+8
#logback.xml配置
logging.config=classpath: logback.xml
#kaptcha验证码配置
kaptcha:
height: 50
width: 200
content:
length: 4
source: abcdefghjklmnopqrstuvwxyz23456789
space: 2
font:
color: blue
name: Arial
size: 40
background-color:
from: lightGray
to: white
border:
enabled: true
color: black
thickness: 1
spring.profiles.active: dev
3 代码生成器
见MpGenerator类,修改其中参数,直接运行就可以生成Mapper、Service、Controller
4 各种查询例子见UserController类
5 逻辑删除见http://mp.baomidou.com/guide/logic-delete.html
6 自动填充功能见http://mp.baomidou.com/guide/logic-delete.html
7 性能分析插件见http://mp.baomidou.com/guide/performance-analysis-plugin.html
8 乐观锁见http://mp.baomidou.com/guide/optimistic-locker-plugin.html