resultmap与resulttype的区别为:对象相同、具体描述相同、类型区分有所不同
一、对象完全不同
1、resultmap:resultmap如果去查询出的列名和pojo的属性名不符,是从定义一个resultmap对表名和pojo属性名之间作一个映射出关系。
2、resulttype:resulttype可以使用resulttype通过输出映射,只有一网站查询出去的列名和pojo中的属性名一致,该列才这个可以映射成功。
二、具体解释有所不同
1、resultmap:resultmap这对一对一表直接连接的处理大多为在主表的pojo中先添加循环嵌套另一个表的pojo,然后把在mapper.xml中常规association节点元素接受对另一个表的连接处理。
2、resulttype:resulttype无法去查询结果映射到pojo对象的pojo属性中,依据什么对结构集查询遍历的需要中,选择在用resulttype还是resultmap。
三、类型区分完全不同
1、resultmap:mybatis中在去查询参与select映射的时候,前往类型也可以用resulttype,也是可以用resultmap。
2、resulttype:resulttype是就可以表示赶往类型的,而resultmap则是对外部resultmap的摘录,但是resulttype跟resultmap不能同时未知。
mybatis中在去查询参与select映射的时候,回类型是可以用resulttype,也可以不用resultmap,resulttype是再表示回类型的,而resultmap则是对外部resultmap的摘录,只不过resulttype跟resultmap不能不能而存在地。在mybatis参与查询映射时,当然网上查询进去的每一个属性都是装在一个对应的map里面的,其中键是属性名,值则是其对应的值。
①当能提供的返回类型属性是resulttype时,mybatis会将map里面的键值对木盒赋给resulttype所更改的对象对应的属性。因为其实mybatis的每一个查询映射的返回类型全是resultmap,仅仅当提供的返回类型属性是resulttype的时候,mybatis对自动启动的给把对应的值赋给resulttype所重新指定对象的属性。
②当能提供的返回类型是resultmap时,而且map不能非常好可以表示领域模型,就必须自己再一系列的把它转化成为不对应的对象,这常常觉得在古怪查询中很有作用。