MyBatis ResultMap Assocation 返回属性为null的问题
Model:
public class Employee {
private Integer id;
private String lastName;
private String email;
private String gender;
private Department dept;
}
public class Department {
private Integer id;
private String departmentName;
}
不使用Assocation的方式,可以正常返回数据,没有关联的属性email和gender也可以绑定上:
<resultMap id="myEmpPlus" type="com.roy.simple.model.Employee">
<id column="id" property="id"/>
<result column="last_name" property="lastName"/>
<result column="d_id" property="dept.id"/>
<result column="dept_name" property="dept.departmentName"/>
</resultMap> <select id="getEmpAndDeptById" resultMap="myEmpPlus">
select e.*, d.id d_id, d.dept_name from tbl_employee e
inner join tbl_dept d on e.dept_id = d.id
where e.id = #{id}
</select>
输出:
Employee{id=3, lastName='roy', email='adfa@asdf', gender='1', dept=Department{id=1, departmentName='开发部'}}
使用Assocation,如果不显示指定列的关联,gender和emai为null
<resultMap id="myEmpPlus2" type="com.roy.simple.model.Employee">
<id column="id" property="id"/>
<result column="last_name" property="lastName"/>
<!--<result column="gender" property="gender"/>-->
<!--<result column="email" property="email"/>-->
<!--可以指定联合的javabean的对象
property:指定哪个属性是联合的对象
javaType:指定对象的类型【不能省略】
-->
<association property="dept"javaType="com.roy.simple.model.Department">
<id column="d_id" property="id"/>
<result column="dept_name" property="departmentName"/>
</association>
</resultMap>
输出:
Employee{id=3, lastName='roy', email='null', gender='null', dept=Department{id=1, departmentName='开发部'}}
在学习过程中碰到了这个问题,暂时还没有找到是什么原因引起的。望各位高手帮忙看看
MyBatis ResultMap Assocation 返回属性为null的问题的更多相关文章
- mybatis resultmap标签type属性什么意思
mybatis resultmap标签type属性什么意思? :就表示被转换的对象啊,被转换成object的类型啊 <resultMap id="BaseResultMap" ...
- SpringBoot中配置不序列化返回值为null的属性
package com.weiresearch.properties; import com.fasterxml.jackson.annotation.JsonInclude;import com.f ...
- 03_MyBatis基本查询,mapper文件的定义,测试代码的编写,resultMap配置返回值,sql片段配置,select标签标签中的内容介绍,配置使用二级缓存,使用别名的数据类型,条件查询ma
1 PersonTestMapper.xml中的内容如下: <?xmlversion="1.0"encoding="UTF-8"?> < ...
- mybatis ResultMap详解
前言 MyBatis是基于“数据库结构不可控”的思想建立的,也就是我们希望数据库遵循第三范式或BCNF,但实际事与愿违,那么结果集映射就是MyBatis为我们提供这种理想与现实间转换的手段了,而res ...
- MyBatis 插入时返回刚插入记录的主键值
MyBatis 插入时返回刚插入记录的主键值 一.要求: 1.数据库表中的主键是自增长的,如:id: 2.获取刚刚插入的记录的id值: 二.源代码: 1.User.java package cn.co ...
- Mybatis resultMap和resultType的区别
resultType和resultMap功能类似 ,都是返回对象信息 ,但是resultMap要更强大一些 ,可自定义.因为resultMap要配置一下,表和类的一一对应关系,所以说就算你的字段名 ...
- Java MyBatis 插入数据库返回主键
最近在搞一个电商系统中由于业务需求,需要在插入一条产品信息后返回产品Id,刚开始遇到一些坑,这里做下笔记,以防今后忘记. 类似下面这段代码一样获取插入后的主键 User user = new User ...
- mybatis resultMap映射学习笔记
这几天,百度mybatis突然看不到官网了,不知道百度怎么整的.特此贴出mybatis中文官网: http://www.mybatis.org/mybatis-3/zh/index.html 一个学习 ...
- MyBatis自动获取主键,MyBatis使用Oracle返回主键,Oracle获取主键
MyBatis自动获取主键,MyBatis使用Oracle返回主键,Oracle获取主键 >>>>>>>>>>>>>> ...
随机推荐
- Linux启动或禁止SSH用户及IP的登录,只允许密钥验证登录模式
启动或禁止SSH用户登录 一般情况下,在使用Linux操作系统都不会去机房来操作机器,都是使用一些第三方的工具来操作. 比如使用SSH Secure File Transfer Client工具来传输 ...
- BZOJ4739 : 定向越野
起点/终点向每个圆的切点连边. 任意两个圆的公切点之间连边. 同一圆上相邻两个关键点之间连边. 然后Dijkstra求最短路即可,时间复杂度$O(n^3)$. 注意判边可行性的时候要忽略这条边来源的圆 ...
- [P1396]营救 (并查集)
大佬都是用最短路做的 我用最小生成树 #include<bits/stdc++.h> #include<algorithm> using namespace std; stru ...
- 游历校园 [COGS 614] [欧拉图]
Description 刷完牙洗完脸,黄黄同学就要上课去了.可是黄黄同学每次去上课时总喜欢把校园里面的每条路都走一遍,当然,黄黄同学想每条路也只走一遍.我们一般人很可能对一些地图是办不到每条路走一遍且 ...
- HashMap实现原理(jdk1.7/jdk1.8)
HashMap的底层实现: 1.简单回答 JDK1.7:HashMap的底层实现是:数组+链表 JDK1.8:HashMap的底层实现是:数组+链表/红黑树 为什么要红黑树? 红黑树:一个 ...
- db2 reorg详解
reorgchk,检查table index 是否需要重组.reorg 重组,重新放置数据位置.runstats 统计信息,可以优化查询器 一个完整的日常维护规范可以帮助 DBA 理顺每天需要的操作, ...
- angularJs中怎么模拟jQuery中的this?
最近自己正在学习angularJs,在学到ng-click时,由于想获取当前点击元素的自身,开始想到了用$index来获取当前元素的索引同样能实现我想要的效果,但是在有些特殊的情况下,使用$index ...
- CentOS下双网卡双IP不同IP段配置
环境: eth0:10.0.7.2 gw :10.0.7.254 netmask:255.255.255.0 eth1:168.6.101.2 gw :168.6.101.254 net ...
- Oracle优化网上常见的5个错误观点
最近系统的研究了一下ORACLE SQL语句性能调优,在此大言不惭的得出一个观点——网上很多性能调优的结论都是错误的或者不周全的.现在的DBA大牛些都太低调了,不出来斧正一下,小弟来借这个机会吐槽一下 ...
- 咏南WEB APP开发框架
咏南WEB APP开发框架 咏南WEB桌面框架演示:47.106.93.126:9999 咏南WEB手机框架本地:47.106.93.126:8077 咏南CS框架下载:https://pan.bai ...