- 介绍mybatis-plus通用枚举的使用- 分析mybatis-plus通用枚举的实现方式 2. mybatis-plus通用枚举的使用 mybatis-plus通用枚举官网传送门 其中有一段关键的说明 解决了繁琐的配置,让 mybatis 优雅的使用枚举属性! 从 3.5.2 版本开始只需完成 步骤1: 声明通用枚举属性 即可使用 2.1 方式1:@EnumValue标注入库映...
这种方式更简单,只需要将@EnumValue注解标注在枚举类的字段上即可,被该注解标注的属性的值会存储到数据库中。 EnumValue类代码如下。 package com.baomidou.mybatisplus.annotation; import java.lang.annotation.*; @Documented @Retention(RetentionPolicy.RUNTIME) @Target({ElementType.FIELD, ElementType.ANNOTATION_TY...
@EnumValue是Mybatis Plus框架中的一个注解,用于指定枚举类型属性在数据库中的映射值。当我们使用Java中的枚举类型作为实体类的属性时,如果想要将枚举类型属性的值映射到数据库中以便于查询和存储,就需要使用@EnumValue注解来定义枚举类中具体的映射值。 具体使用 【1】我们先在表中添加一个字段,表示性别,这里我们一...
实体类 @TableName("mytest")@DatapublicclassMyTest{@TableId(type = IdType.AUTO)privateLong id;/** * 使用mybatisPlus的EnumValue注解后就可以把这个定义为枚举类型 */privateSexEnum sex;publicMyTest(){ }publicMyTest(Long id, SexEnum sex){this.id = id;this.sex = sex; } } 测试 @Testvoid...
新建一个枚举包,在枚举包下写SexEnum类,该类需要继承枚举接口IEnum,需要实现getValue方法,就是返回我们要存入数据库的数字值。 1.定义设置值的含义,1表示数据表中sex字段的男,2表示数据表中sex字段的女。 2.设置存储值。 3.toString方法返回数据库中字段对应的值含义。用来展示给用户。
首先是通用枚举。 1、通用枚举 表中的有些字段值是固定的,例如性别(男或女),此时我们可以使用MyBatis-Plus的通用枚举来实现。 这里就以用户表里最常见的性别字段做演示。 然后就是创建通用枚举。 /** *@description:性别枚举类 *@author: jie *@time: 2022/6/12 19:44 ...
3. 定义实体类 4.测试使用 环境: <mybatis-plus.version>3.4.2</mybatis-plus.version> <spring-boot.version>2.4.2</spring-boot.version> 1. 配置文件添加配置 主要介绍MP通用枚举,其他配置省略! # MP 配置 mybatis-plus: # 配置type-enums-package只对注解方式的枚举处理能提前加载缓存. ...
如果配置了枚举类扫描路径,MybatisPlus会获取该路径下所有的枚举类,遍历为每一个枚举类注册一个MybatisEnumTypeHandler对象到TypeHandlerRegistry中。熟悉Mybatis的同学都知道,TypeHandler对象在ParameterHandler设置参数或者ResultSetHandler映射对象时会被调用。MybatisEnumTypeHandler怎么处理枚举相关逻辑自行查看源码。
在使用SpringBoot和MybatisPlus时,枚举类型(enum)是常用的数据类型之一。但在实际使用中,有时候会出现“No enum constant xxx”的错误,这个错误通常是因为MybatisPlus在处理枚举类型时出现了问题。要解决这个问题,可以尝试以下几个方法: 检查枚举类型的定义:确保你的枚举类型定义是正确的,并且所有枚举常量都正确地定义...
首先,我们需要配置数据库表和实体类以支持枚举类型的映射。 创建user表的SQL语句如下: CREATE TABLE `user` (`id` INT(11) PRIMARY KEY,`name` VARCHAR(255),`role` VARCHAR(20)); 然后,在实体类(这里是User类)中,我们可以定义一个枚举类来表示用户的角色,例如: ...