我们采用debug跟踪一下代码,可以看到在查找枚举BizType的映射处理器的时候使用了mybatis-plus复合枚举处理类型CompositeEnumTypeHandler 这里可能我们有疑问,TypeHandlerRegistry.defaultEnumTypeHandler这个默认枚举处理器是怎么设置进去的了,其实是构建MybatisConfiguration的时候设置的 接着我们往下debug可以看到使用了mybatis-plus...
接下来用具体的例子看一下mybatis-plus通用枚举的使用。 3.1定义枚举 3.1.1方式1:@EnumValue标注入库映射字段 使用注解@EnumValue定义存储到数据库的值: package com.kfit.user.enums; import com.baomidou.mybatisplus.annotation.EnumValue; import com.fasterxml.jackson.annotation.JsonValue; /** *...
UserType packagecom.ly.plugins.mybatisplus;importcom.baomidou.mybatisplus.annotation.IEnum;importlombok.AllArgsConstructor;importlombok.Getter;/***@author: ly*/@Getter@AllArgsConstructorpublicenumUserTypeimplementsIEnum<Integer> {ADMIN(1,"admin"),NORMAL(2,"normal");privateInteger code;privateString va...
mybatis-plus: # 配置type-enums-package只对注解方式的枚举处理能提前加载缓存. type-enums-package: com.baomidou.mybatisplus.samples.enums.enums configuration: # 3.0.8之前版本问题默认将枚举注册为EnumOrdinalTypeHandler,这是错误的方式,默认是 org.apache.ibatis.type.EnumTypeHandler ...
我们在使用ORM框架的时候,经常会碰到这种情况,比如数据库中有一个tinyint或char类型的gender字段,映射成为实体对象时倾向使用GenderEnum这样的枚举类型,因为这样使用起来比较方便,否则我们就需要手动转换枚举类型,如果这样的字段比较多,这样的手动转换还是比较费时费力的。如果我们使用的时MybatisPlus,那么处理这样的情况就...
Mybatis-plus是一款优秀的Mybatis扩展插件,它为Mybatis提供了许多实用的功能和注解,其中之一就是@EnumValue注解。@EnumValue注解主要用于将数据库中的枚举类型字段映射到Java枚举类型,方便我们在Java代码中处理枚举类型的数据。在Mybatis-plus中,使用@EnumValue注解可以将数据库中的枚举类型字段映射到Java枚举类型,同时也...
最近看到有人使用这几个注解,就稍微了解了一下各自的用法,发现枚举在前后台传值,DB和entity之间的映射很方便 1.使用@JsonCreator,可以将前台的属性值直接转换为枚举类型 2.@EnumValue 将枚举中的指定的值直接存储到数据库,不需要再手动转换 3.@JsonValue 后台返回前台数据时也不需要转换,可以直接返回指定的值 ...
mybatis-plus: type-enums-package: com.example.demo.enumeration 1. 2. 2.枚举类 package com.example.demo.enumeration; import com.baomidou.mybatisplus.annotation.EnumValue; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; ...
import com.baomidou.mybatisplus.annotation.EnumValue;import lombok.Data;@Datapublic class User {private Integer id;private String name;@EnumValue // 声明该字段需要枚举处理器进行映射private RoleEnum role;} 在上述示例中,我们使用@EnumValue注解标识了role字段,告诉MyBatis-Plus这是一个需要通过枚举处理器...