mybatis 返回Map类型key默认为大写问题
短信预约 -IT技能 免费直播动态提醒
返回Map类型key默认为大写
在工作中发现的问题
默认情况下,当resultType=“java.util.Map”时,返回的key值都是大写的!!
<select id="getSystemDataOutZxwtList" resultType="java.util.Map">
</select>
修改方法
<select id="getStudentList" resultType="java.util.Map">
select t.name as "sName",t.sex as "sSex"
from student
</select>
关于mybatis返回map的坑
mybatis返回类型为java.util.Map的时候,会有问题,就是如果该字段为null或者“”的话,封装返回的Map中会自动去除该字段,因此经常会在Map中取不到值,关于这个问题网上有很多解决办法,mybatis高版本通过配置settings解决,低版本的话暂时无法解决
Map中key是分大小写的
mybatis返回的Map封装,Key默认全是大写,因此JAVA取Map值,key都要大写
其实低版本可以通过Java定义与sql相同的字段名称,在JAVA中判断是否包含键值对,如果没有,那么手动添加该键的空值(空键值对),相当于自己又封装了一遍数据,其实比较麻烦,如果更改SQL,那么JAVA也要相应更改
其他暂无好的办法
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341