MyBatis中一对一多表查询及一对一/一对多/多对一的意思

  • 一对一

首先大家要明白“一对一”什么意思,我刚开始就是没搞明白“一对一”然后就是各种大神给我讲,我都一脸懵逼。

“一对一”:指的是表关系,举个亲切的列子来讲吧。把一个家庭看做一个数据库,每个成员是一个表,在独生子女家庭这个数据库里面一个母亲只有一个孩子,一个孩子只有一个母亲(亲生的)这就是一对一的关系。一对多的关系更好理解了,一个母亲有不止一个孩子,就是一对多。反过来孩子们有一个母亲就是多对一。

而不是,在操作表的时候一个操作需要一张表,或者多张表(我当时就是这样理解的)

我想碰到一对一多表查询让人困惑的就是resultMap标签里面的东西怎么写了

  • resultMap标签

其实很简单的,就是用association标签

下面贴一个我写的(这是一个三表查询,通过houseid查到butypeid然后再查到typeid,查到typname之最终结果)

这是三个表的表关系

MyBatis中一对一多表查询及一对一/一对多/多对一的意思_第1张图片

这是resultMap标签里面的代码  

 
        
        
            
            
            
                
                
            

        
    

就是一级一级的往下写,直到最后找到typename

他们的嵌套关系是:(通过houseid查到butypeid然后再查到typeid,查到typname之最终结果)

MyBatis中一对一多表查询及一对一/一对多/多对一的意思_第2张图片


这就是我今天搞明白的东西,现在一看还真是不一般的简单,真不知道自己当初在迷糊啥,哈哈哈哈哈

有帮助了点赞0,没看明白记得问哈





你可能感兴趣的:(spring)