mybatis Result Maps collection already contains value

这是个小功能,我当时没有怎么在意,后来发到了测试环境的时候测试提出了bug,我才慌忙查看原因,

    <select id="getRoleInfo"   parameterType="java.lang.String" resultMap="
com.hupu.smart.game.platform.dto.common.RoleInfo" >
        SELECT r.id,r.`name` FROM gamedb.game_platform_role r,gamedb.game_platform_user_role u
WHERE u.role_id = r.id AND u.user_id = #{userId}
</select>

这是我最开始写的mapper  , 查询是两个表的连接查询,返回的结果我是用一个dto对象来封装的,后来我发现,如果这 个对象的字段和数据库的字段 一样的话,就可以用resultMap="RoleInfo"  ,当实体类的字段存在和数据库的字段不一样的情况的时候,就不能用resultMap 来封装查询出的数据了。我在调试的时候看到List是有三条数据,但是数据的内容是看不到的,我当时以为有数据及可以了。可是。。

后来,这个问题以bug的形式提交给我的时候,我才发现原来是数据有问题,我debugger 的时候查看 返回的list 提示 “”所有基础都是空的“”

后来 我把mapper  添加了一个resultMap   

<resultMap type="com.hupu.smart.game.platform.dto.common.RoleInfo" id="roleMap">
<id column="id" property="roleId"/>
<result column="name" property="roleName"/>
</resultMap> <select id="getRoleInfo" parameterType="java.lang.String" resultMap="roleMap" >
SELECT r.id,r.`name` FROM gamedb.game_platform_role r,gamedb.game_platform_user_role u
WHERE u.role_id = r.id AND u.user_id = #{userId}
</select> 同时 resultType也要改成resultMap 这样才能完全正确的显示数据

最新文章

  1. 在执行xp_cmdshell的过程中出错,调用'LogonUserW'失败,错误代码:'1909'
  2. Android笔记:去除标题栏
  3. Mac OS X使用快捷键改善窗口管理的六个方法
  4. iOS各种动画效果
  5. 移动端动画使用transform提升性能
  6. STL——内存基本处理工具
  7. asp.net弹出框后页面走样
  8. maven之ssh项目搭建
  9. JavaScript 闭包究竟是什么
  10. Python基础篇(二)
  11. List Set Map比较
  12. Py之any函数【转载】
  13. SpringBoot后台接收前台的字符串数据
  14. Laravel 5.2--如何让表单提交错误,不清空?
  15. Python函数学习——匿名函数
  16. (并发编程)进程 (multiprocessing--Process实现进程并发)
  17. 让 Python 更加充分的使用 Sqlite3
  18. Split Array Largest Sum LT410
  19. POJ3304(KB13-C 计算几何)
  20. 【转】Oracle回收站(recyclebin)

热门文章

  1. c#使用DotNetZip封装类操作zip文件(创建/读取/更新)实例
  2. jQuery删除DOM节点
  3. JAVA轻量级文件监控
  4. js动画(四)
  5. redis使用Lua脚本
  6. eclipse安装git插件
  7. CodeForces 722A
  8. java7 invokedynamic命令深入研究
  9. Redis key 相关命令
  10. Sublime Text3自定义主题