码迷,mamicode.com
首页 > 编程语言 > 详细

零基础学习java------37---------mybatis的高级映射

时间:2019-10-12 12:48:17      阅读:111      评论:0      收藏:0      [点我收藏+]

标签:对比   通过   java   缓存   span   对象   cts   代码   resultmap   

一.  mybatis的高级映射

1.1  单表,字段不一致

resultType输出映射:

  要求查询的字段名(数据库中表格的字段)和对应的java类型的属性名一致,数据可以完成封装映射

如果字段和java属性名不一致,则查出来的结果中不一致的那个属性对应的值为null,如下:

Product中书名的属性名为name,但数据库的products表中相应的字段名为book_name

技术图片

 

 技术图片

 

 最终查询得到的结果如下(省略了代码部分)

技术图片

 

 可见查到的name属性为null,解决方法有两种

(1)在查询的sql语句中起别名,如下

技术图片

(2)手动指定 ,通过resultMap标签

可以手动的指定某个字段封装在哪个属性中  

技术图片

 

 id和result都是映射单列值到一个属性或者字段的简单数据理性,唯一不同的是,id是作为标签的唯一标识,当合其他对象实例对比的时候,这个id很有用,尤其是应用到缓存和内嵌的结果映射

注意;在单表查询的时候,尽量使用resultType来进行映射(别名)

 

零基础学习java------37---------mybatis的高级映射

标签:对比   通过   java   缓存   span   对象   cts   代码   resultmap   

原文地址:https://www.cnblogs.com/jj1106/p/11660585.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!