mybatis一对多再多对多查询

需求是这样的,一张试卷对应多个班级,每个班级对应多个学生mybatis一对多再多对多查询,现在需要根据试卷id查出这个试卷对应的班级及班级下的学生;数据库直接查询可以查出某一试卷下有两个班级且两个班级有很多学生,但是service调用mybaits查询出来的对象却不对,求看下要怎么写,谢谢!
这是我的映射关系和sql:
mybatis一对多再多对多查询mybatis一对多再多对多查询
pojo对象:
mybatis一对多再多对多查询mybatis一对多再多对多查询mybatis一对多再多对多查询
dao和service:
mybatis一对多再多对多查询mybatis一对多再多对多查询
service查询结果:
mybatis一对多再多对多查询
数据库直接查询结果:
mybatis一对多再多对多查询

问题点数:60分

0 0

引用 ・ 举报 ・ 管理

mybatis一对多再多对多查询

****推荐

****今日推荐

mybatis一对多再多对多查询

qq_20533371

mybatis一对多再多对多查询

回复于 2017-04-09 13:22:15 #1 得分:0

mybatis一对多再多对多查询大家来看看呀

0 0

引用 ・ 举报 ・ 管理

mybatis一对多再多对多查询

qq_20533371

mybatis一对多再多对多查询

回复于 2017-04-10 09:09:02 #2 得分:0

需要的结构是这样的
{
  "exam"                     : {
    "id"                       : 392,
    "exam_id"                  : "153acbe5-4246-4a5c-864d-4ecb62aa1e21",
    "exam_name"                : "高中高二化学常规测验0407",
    "examPlacementTestList"    : [
      {
        "id"                       : 258,
        "pmId"                     : "810ffc8f-99e0-4fa7-a414-d1f436474de8",
        "examId"                   : "153acbe5-4246-4a5c-864d-4ecb62aa1e21",
        "classId"                  : "039f08c540114385adef6f9d8d94692b",
        "className"                : "高一(2)班",
        "examPlacementTestRelList" : [
          {
            "id"                       : 2781,
            "pm_id"                    : "810ffc8f-99e0-4fa7-a414-d1f436474de8",
            "person_id"                : "3f0ebff85d7849b3bc7c98dfff395a60",
            "name"                     : "程三",
            "student_code"             : "10000003"
          },
          {
            "id"                       : 2782,
            "pm_id"                    : "810ffc8f-99e0-4fa7-a414-d1f436474de8",
            "person_id"                : "6f899bdabafb4a3f84faf931ef75fb71",
            "name"                     : "方强",
            "student_code"             : "10000004"
          }
        ]
      },
      {
        "id"                       : 259,
        "pmId"                     : "7c2fea18-e673-46d9-a598-73dc18040437",
        "examId"                   : "153acbe5-4246-4a5c-864d-4ecb62aa1e21",
        "classId"                  : "b432e16428b84505950f1734465d4aa1",
        "className"                : "高一(1)班",
        "examPlacementTestRelList" : [
          {
            "id"                       : 2790,
            "pm_id"                    : "7c2fea18-e673-46d9-a598-73dc18040437",
            "person_id"                : "ffb952206bbe4c0eb0b1acad261b52b0",
            "name"                     : "陈正",
            "student_code"             : "00000001"
          },
          {
            "id"                       : 2791,
            "pm_id"                    : "7c2fea18-e673-46d9-a598-73dc18040437",
            "person_id"                : "8ca5c02efed7480abfe6b886b45ac73c",
            "name"                     : "顾晓双",
            "student_code"             : "00000002"
          }
        ]
      }
    ]
  }
}

0 0

引用 ・ 举报 ・ 管理

mybatis一对多再多对多查询

Epopeee

mybatis一对多再多对多查询

回复于 2018-05-17 15:04:44 #3 得分:0

应该是映射没关联好,三个表连接查的时候,id列不知道哪个往哪里装了,你把SQL改一下,三张表每张表查的时候,各自的id列起个别名,然后映射配置的column一一对应,应该就可以了