一对一
首先大家要明白“一对一”什么意思,我刚开始就是没搞明白“一对一”然后就是各种大神给我讲,我都一脸懵逼。
“一对一”:指的是表关系,举个亲切的列子来讲吧。把一个家庭看做一个数据库,每个成员是一个表,在独生子女家庭这个数据库里面一个母亲只有一个孩子,一个孩子只有一个母亲(亲生的)这就是一对一的关系。一对多的关系更好理解了,一个母亲有不止一个孩子,就是一对多。反过来孩子们有一个母亲就是多对一。
而不是,在操作表的时候一个操作需要一张表,或者多张表(我当时就是这样理解的)
我想碰到一对一多表查询让人困惑的就是resultMap标签里面的东西怎么写了
resultMap标签
其实很简单的,就是用association标签
下面贴一个我写的(这是一个三表查询,通过houseid查到butypeid然后再查到typeid,查到typname之最终结果)
这是三个表的表关系
这是resultMap标签里面的代码
<resultMap id="showHouseTypeInfoMap" type="House">
<id column="houseid" property="houseid"/>
<association property="buildType" javaType="BuildType">
<id column="butypeid" property="butypeid"/>
<result column="typeid" property="typeid"/>
<association property="type" javaType="Type">
<id column="typeid" property="typeid"/>
<result column="typename" property="typename"/>
</association>
</association>
</resultMap>
就是一级一级的往下写,直到最后找到typename
他们的嵌套关系是:(通过houseid查到butypeid然后再查到typeid,查到typname之最终结果)
这就是我今天搞明白的东西,现在一看还真是不一般的简单,真不知道自己当初在迷糊啥,哈哈哈哈哈
有帮助了点赞0,没看明白记得问哈