使用mybatis plus枚举类自动转换的方法

转载:springboot mybatisplus enum 枚举返回中文描述, 动态转换成相应的描述,程序达人 | 爱程序,爱分享

枚举类:

package com.wenhe.blogdao.model.enums;

public enum ArticleStateEnum  {

    NotReviewed(0, "未审核"),
    Reviewed(1, "审核通过"),
    Reject(2, "驳回");

    @EnumValue
    private final Integer code;

    public int getCode() {
        return this.code;
    }
    @JsonValue
    private final String desc;

    public String getDesc(){
        return desc;
    }

    ArticleStateEnum(Integer code, String desc) {
        this.code = code;
        this.desc = desc;
    }

    public static   String getDesc(int code) {
        for (ArticleStateEnum value : ArticleStateEnum.values()) {
            if (Objects.equals(code, value.getCode())) {
                return value.getDesc();
            }
        }
        return null;
    }

    @Override
    public String toString() {
        return this.desc;
    }
}

实体类:

public class Article  {

    private static final long serialVersionUID = 1L;


    /**
     * 0 未审核 不显示  ,, 1  会员发布未审核,,2 审核通过 ,, 3 草稿箱 ,, 4回收站  ,,
     */
    @JSONField(serialzeFeatures= SerializerFeature.WriteEnumUsingToString)
    private ArticleStateEnum articleState;

}

application.yml mybatisplus 配置:

mybatis-plus:
  mapper-locations: classpath*:com/wenhe/blogdao/mapper/mapping/**.xml
  type-aliases-package: com.wenhe.blogdao.model
  global-config:
    db-config:
      id-type: AUTO  #0:数据库ID自增   1:用户输入id  2:全局唯一id(IdWorker)  3:全局唯一ID(uuid)
      logic-delete-value: 0
      logic-not-delete-value: 1

  configuration:
    map-underscore-to-camel-case: false
    cache-enabled: true #配置的缓存的全局开关
    lazyLoadingEnabled: true #延时加载的开关
    multipleResultSetsEnabled: true #开启的话,延时加载一个属性时会加载该对象全部属性,否则按需加载属性
    default-enum-type-handler: org.apache.ibatis.type.EnumOrdinalTypeHandler
  type-enums-package: com.wenhe.blogdao.model.enums
#    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #打印sql语句,调试用

注:mybatis plus的依赖包是3.5.2版本,低版本可能会报错!

<dependency>
	<groupId>com.baomidou</groupId>
	<artifactId>mybatis-plus-boot-starter</artifactId>
	<version>3.5.2<</version>
</dependency>

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值