Quarkus-Mybatis-Plus持久化解决方案
引入依赖:
Maven
<dependency>
<groupId>io.quarkiverse.mybatis</groupId>
<artifactId>quarkus-mybatis-plus</artifactId>
<version>1.0.3</version>
</dependency>
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-jdbc-mysql</artifactId>
</dependency>
Gradle
implementation 'io.quarkiverse.mybatis:quarkus-mybatis-plus:1.0.3'
implementation 'io.quarkus:quarkus-jdbc-mysql'
数据库表结构:
Table
create table t_user_info
(
id bigint auto_increment comment '自增主键'
primary key,
email varchar(30) not null comment '邮箱',
password varchar(20) not null comment '密码',
actual_name varchar(20) null comment '真实姓名',
age int null comment '年龄',
phone varchar(20) not null comment '手机号',
is_del int default 0 not null comment '是否删除:0.未删除,1.已删除',
create_time datetime not null comment '创建时间'
)
comment '用户信息表';
application.properties
#【配置数据源】数据库地址、驱动、用户名、密码
quarkus.datasource.jdbc.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&zeroDateTimeBehavior=convertToNull&serverTimezone=Asia/Shanghai
quarkus.datasource.jdbc.driver=com.mysql.cj.jdbc.Driver
quarkus.datasource.username=root
quarkus.datasource.password=123456
案例代码:
注:quarkus-mbp已经默认开启分页,无需像SpringBoot那样需要手动写配置类开启。字段映射驼峰转下划线目前没有找到解决方案,所以使用@TableField注解。
UserInfoEntity
package com.abing.mbp.user.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.quarkus.runtime.annotations.RegisterForReflection;
import lombok.AllArgsConstructor