Mybatis中text类型字段返回问题

Mybatis中text类型字段返回问题

彼方 967 2022-04-10

Mybatis中text类型字段的返回问题

问题原因

使用Mybatis Generator生成代码时,会为text类型字段单独生成一个resultMap,如下图:
blog1

selectByExample

此时如果使用selectByExample方法会导致返回值中text类型为null,查看一下这个方法的后台sql,如图:
blog2

selectByExampleWithBLOBs

再对比一下selectByExampleWithBLOBs方法的后台sql:
blog3

总结

上面三张图一起看就能知道为什么selectByExample不返回text字段了,如果字段中有大文本字段,mybatis在生成后台sql代码的时候,会将它单独生成一个resultMap然后继承BaseResultMap,所以以后如果需要返回text类型字段值时,直接使用selectByExampleWithBLOBs即可!