MyBatis-Plus 3.0.1中枚举类型返回null的解决策略是什么?

2026-04-30 03:461阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1436个文字,预计阅读时间需要6分钟。

MyBatis-Plus 3.0.1中枚举类型返回null的解决策略是什么?

mybatis-plus 3.0.1 中,当枚举返回 null 时,解决策略:2020-11-02 14:28:48 今日再次回到代码中查看,发现原本和 mybatis-plus 没有关联。产生这个问题的根本原因可能还是需要查看对应的 Mapper.xml 中是否指定了 jdb。

mybatis-plus 3.0.1 枚举返回为null解决办法

2020-11-02 14:28:48
今天再次回到代码里无意间看到,原来和mybatis-plus没有关系!发生这个问题的根本原因还是要看是否在对应的Mapper.xml里指定了jdbcType。由于我使用了IDEA的代码生成插件,所以没有再进一步去研究为什么返回的数据类型会是以BigDecimal包装的,就此闹了个笑话。。

结论:枚举类用EnumValue注解修饰的数据类型,例如是Integer,那么在Mapper.xml中的jdbcType需要修改为对应类型!

最好的解决办法就是使用新版的mybatis-plus!

3.1.0版本后改变了mybatis原生的默认行为,而3.1.2版本以下的枚举处理类依然是EnumTypeHandler。推测在3.1.2以上的版本应该是不会出现这个问题的。

阅读全文

本文共计1436个文字,预计阅读时间需要6分钟。

MyBatis-Plus 3.0.1中枚举类型返回null的解决策略是什么?

mybatis-plus 3.0.1 中,当枚举返回 null 时,解决策略:2020-11-02 14:28:48 今日再次回到代码中查看,发现原本和 mybatis-plus 没有关联。产生这个问题的根本原因可能还是需要查看对应的 Mapper.xml 中是否指定了 jdb。

mybatis-plus 3.0.1 枚举返回为null解决办法

2020-11-02 14:28:48
今天再次回到代码里无意间看到,原来和mybatis-plus没有关系!发生这个问题的根本原因还是要看是否在对应的Mapper.xml里指定了jdbcType。由于我使用了IDEA的代码生成插件,所以没有再进一步去研究为什么返回的数据类型会是以BigDecimal包装的,就此闹了个笑话。。

结论:枚举类用EnumValue注解修饰的数据类型,例如是Integer,那么在Mapper.xml中的jdbcType需要修改为对应类型!

最好的解决办法就是使用新版的mybatis-plus!

3.1.0版本后改变了mybatis原生的默认行为,而3.1.2版本以下的枚举处理类依然是EnumTypeHandler。推测在3.1.2以上的版本应该是不会出现这个问题的。

阅读全文