当前使用版本(必填,否则不予处理)

3.3.1

该问题是如何引起的?(确定最新版也有问题再提!!!)

使用@EnumValue的时候遇到的,如果实体字段为关键字(如status)那么则枚举映射无效,

重现步骤(如果有就写完整)

private OrderStatus status;
public enum OrderStatus {
 // 该方式无法成功映射,因为 status 在数据库是关键字,经过测试数据库字段改个名字就可以
}

报错信息

无错误信息,只是数据无法映射成功

Comment From: miemieYaho

给出你的复现demo

Comment From: levin950825

没demo,这是我开发中发现的,我尝试将status修改成status1就能成功映射

Comment From: miemieYaho

无法复现

Comment From: levin950825

补充一点

IPage<Product> list = this.baseMapper.queryByParams(page,param);
然后list.getRecords() 看到的 status 是空

普通查询如主键之类的是没有问题的

Comment From: miemieYaho

有一个没问题那就都不会有问题,mybatis的封装data逻辑都是一样的

Comment From: levin950825

我现在也很纳闷,我试过写demo 测试没问题,但是在项目里确实发生了这个问题。所以来提交了issue ,我后续在看看

Comment From: miRUAcleInjoker

status 貌似是关键字, 可能因为这个,改名之后就没问题了