mybatis resultMap小细节

不念不忘少年蓝@ 2022-01-13 00:29 408阅读 0赞

mybatis 的resultMap的主要作用是把数据库查找数来的ResultSets构建成java object。实现这个目的有两种方式。

java object:
在这里插入图片描述
ResultSets:
在这里插入图片描述

第一种方式:采用无参构造函数的方式(蓝框)
对应的resultMap长这个样子:
在这里插入图片描述
这种方式相当于resultMap用过User的无参构造函数先构造出来一个 user object,之后再通过“Set”的方式给user的每个属性赋值,当没找到user的无参构造函数时,会报错: executor.ExecutorException: No constructor found.

第二种方式:采用有参构造函数(红框)

对应的resultMap长这个样子:
在这里插入图片描述
这种方式先相当于resultMap使用constructor直接“初始化了” 一个 user object,这里注意顺序,resultMap中标参数的顺序必须和User的有参构造函数的形参顺序相同。

发表评论

表情:
评论列表 (有 0 条评论,408人围观)

还没有评论,来说两句吧...

相关阅读

    相关 MyBatis resultMap

    <resultMap> 元素表示结果映射集,是 MyBatis 中最重要也是最强大的元素,主要用来定义映射规则、级联的更新以及定义类型转化器等。 <resultMap> 元

    相关 mybatis - resultMap

    resultMap有比较强大的自动映射,下面是摘自mybatis中文官网的的片段: 当自动映射查询结果时,MyBatis会获取sql返回的列名并在java类中查找相同名字的属