今天使用SpringBoot+Mybatis
比如:我的activity表中存放activity_type为1,想要通过Mybatis转换后为正在使用
当然,可以使用if else 但是状态值很多时,就变得很复杂,且不利于维护,故需要用到枚举类
数据库查询时获得activity_type值为1,通过Mybatis依照枚举类进行转换获取到对应的状态
之前使用时总是报错:
java.lang.IllegalArgumentException: No enum constant com.glm.enums.ActivityType.1
原因是无法使用Mybatis默认的转换器EnumTypeHandler 进行转换,解决方法:
就是在SpringBoot的yml配置文件中配置枚举类转换器,指定要转换的枚举类所在的包:
mybatis-plus:
configuration:
# 此为日志输出,将日志输出到控制台
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
#枚举类转换器,值为要转换的枚举类所在的包
type-enums-package: com.glm.enums