0 0

mybatis的resultMap能映射多个类吗5

一般resultMap配置的字段都是来自一张表,如果有多张表,还可以用吗,求解?

问题补充:resultMap集合里的数据来自多张表
2014年10月27日 10:15

1个答案 按时间排序 按投票排序

0 0

采纳的答案

不明白楼主什么意思

    <resultMap id="pagebean" type="PageBean">
        <id column="id" property="id"/>
        <result column="uri" property="uri"/>
        <result column="title" property="title"/>
        <result column="generate" property="generate" javaType="boolean"/>
        <result column="siteid" property="siteid"/>
        <association property="config" column="configid" javaType="ConfigBean">
            <id property="id" column="cfg_id"/>
            <result property="domain" column="cfg_domain"/>
            <result property="folder" column="folder"/>
            <result property="keywordfile" column="keywordfile"/>
            <result property="innerlinkcount" column="innerlinkcount"/>
            <result property="outerlinkcount" column="outerlinkcount"/>
            <result property="siteid" column="cfg_siteid"/>
            <result property="template" column="template"/>
        </association>
    </resultMap>

    <select id="listUngeneratedPages" resultMap="pagebean">
        select p.*,
          c.id cfg_id,
          c.keywordfile,
          c.siteid cfg_siteid,
          c.folder folder,
          c.template template,
          c.innerlinkcount innerlinkcount,
          c.outerlinkcount outerlinkcount,
          s.domain cfg_domain
        from biz_page p
        left join biz_generateconfig c on c.id=p.configid
        left join biz_site s on p.siteid=s.id
        where p.generate=0
    </select>

举个栗子,这就是3张表关联查询,PageBean里面还包含一个ConfigBean的一对一关联关系

2014年10月27日 14:13

相关推荐

    mybatis-demo4-resultMap手动映射.zip

    - **一对多关联映射**:类似地,如果一个实体类包含多个其他实体类实例,可以使用collection标签来处理。 - **自定义类型处理器**:对于特殊的数据类型,如日期、货币等,可以通过typeHandler来定义自定义的类型...

    mybatis3--4.resultMap高级映射

    一个ResultMap由多个result元素组成,每个result元素表示一个字段的映射。基本格式如下: ```xml &lt;resultMap id="exampleResultMap" type="com.example.YourClass"&gt; &lt;!-- 其他result元素... --&gt; &lt;/resultMap&gt; ``...

    Mybatis resultMap

    ResultMap是Mybatis中的核心概念之一,它在处理复杂的数据库查询结果映射时扮演着重要角色。ResultMap的设计旨在提高灵活性,解决对象与数据库表之间的映射问题,尤其是在面对一对多、多对一或自关联等复杂关系时。 ...

    Mybatis高级-resultMap之collection聚集

    在这个类中,`RuleVOList`是一个`List&lt;RuleVO&gt;`类型的属性,用于存储与`DetailVO`相关的多个`RuleVO`对象。 ##### RuleVO ```java public class RuleVO implements Serializable { private static final long ...

    MyBatis关联映射代码

    这种方式通常用于一对多关系,例如一个用户有多个订单。在XML映射文件中,可以使用`&lt;association&gt;`标签来定义关联关系,并使用`&lt;collection&gt;`标签来表示子表数据。 2. 嵌套结果:当主表和子表的数据在同一查询结果...

    MyBatis一对多映射

    一对多映射指的是一个父类实体对应多个子类实体的关系,例如一个学生可以有多个课程,一个部门可以有多名员工等。 一、一对多映射的基本概念 在数据库中,如果一个表的记录(主表)与另一个表的记录(从表)之间...

    MyBatis高级映射(多对多查询)

    1. **配置映射文件**:在MyBatis的映射文件中,你需要定义两个实体类(例如,Student和Course)的映射,以及它们之间的关联映射。关联映射通常通过`&lt;association&gt;`或`&lt;collection&gt;`标签来实现。 2. **关联查询**:...

    基于java的企业级应用开发:MyBatis的关联映射.ppt

    一对多关系则是一张表的记录可以对应另一张表的多个记录,例如一个部门可以有多名员工。多对多关系更为复杂,通常需要创建一个中间表来存储两个表的关联信息,例如学生和课程的关系。 在Java中,我们可以通过对象间...

    Mybatis高级映射查询

    例如,一个用户可能有多个订单,那么在查询用户时,可以将订单信息一同返回。 8. 嵌套查询与关联查询:通过 `&lt;select&gt;` 元素的 `resultMap` 属性,可以引用其他 SQL 映射来实现嵌套查询。同时,Mybatis 还支持在...

    Mybatis高级结果映射

    在这个例子中,ResultMap 由多个元素组成,包括 `constructor`、`result` 和 `association`。 1. `constructor`: 这个元素用于构造器注入,即将查询结果中的某些列值作为参数传递给对象的构造函数。例如,`...

    MyBatis注解配置映射器:一对多关系的实现

    例如,一个学生可以有多个课程,而一个课程可以被多个学生选修,这就是典型的"学生-课程"的一对多关系。 在MyBatis中,我们可以通过注解的方式来配置这种关系,主要涉及两个注解:`@Select` 和 `@ResultMap`。`@...

    mybatis 高级映射实例

    例如,一个用户可能有多个订单,我们可以使用`&lt;association&gt;`标签来实现这种关系。以下是一个示例,展示如何获取用户及其关联的订单: ```xml SELECT u.*, o.* FROM users u LEFT JOIN orders o ON u.id = o....

    MyBatis_关系映射之一对多-src.zip

    MyBatis 是一款深受开发者喜爱的持久层框架,它简化了Java应用与数据库之间的交互,提供了灵活的SQL映射和对象关系映射功能。在这个名为"MyBatis_关系映射之一对多-src.zip"的压缩包中,我们很显然会探讨MyBatis中的...

    MyBatis的关联映射

    这种方式会产生多个数据库查询,但能保持SQL语句的简洁性。例如,查询用户时,可以先查询用户,然后根据用户ID再查询其所有订单。 2. **嵌套结果**(Nested Results):MyBatis通过`&lt;resultMap&gt;`的`&lt;association&gt;`...

    MyBatis_关联映射之多对一_src.zip

    假设我们有"课程"(Course)和"学生"(Student)两个实体类,其中"课程"对应多个"学生"。 1. 在`course_mapper.xml`中,我们可以定义一个`select`语句,返回包含学生的课程对象: ```xml &lt;resultMap id=...

    mybatis自动生成映射.rar

    例如,当我们在实体类中定义了与数据库表字段对应的属性,并在 SQL 映射文件中设置了 `&lt;resultMap&gt;` 或者使用了 `@Results` 和 `@Result` 注解,MyBatis 就能够自动将查询结果对应到这些属性上。 在 MySQL 和 SQL ...

    Springboot中mybatis表关联映射关系(一对一)

    在 Springboot 中,MyBatis 提供了强大的表关联映射关系机制,可以实现一对一、多对一、多对多等各种关联关系。在本文中,我们将详细介绍 Springboot 中 MyBatis 表关联映射关系的实现机制,特别是针对一对一关联...

    MyBatis学习-映射文件标签篇(select、resultMap).rar_alikeett_blueaod_mybatis

    `resultMap`标签是MyBatis中一个非常强大的特性,它主要用于处理复杂的对象关系映射,比如一对一、一对多、多对多等。`resultMap`可以定义字段与对象属性之间的映射规则,避免了显式地写结果集转换代码。例如: ```...

    根据MyBatis的ResultMap生成增删改sql

    当ResultMap包含多个字段时,MyBatis会自动处理这些字段并将它们拼接到INSERT语句中。比如,假设我们有以下CwInfo实体类: ```java public class CwInfo { private String id; private String name; private ...

Global site tag (gtag.js) - Google Analytics