collection和association的使用区别

一对一使用association

一对多使用ollection

 

 

班级实体类

1
2
3
4
5
6
public class Clazz implements Serializable {
 
    private Integer id;
    private String name;
 
}

  

学生实体类

1
2
3
4
5
6
7
8
public class Student implements Serializable {
 
    private Integer id;
    private String name;
    private Integer age;
    private Integer classId;
 
}

  

学生对班级,一对一关系

1
2
3
4
5
6
7
8
9
public class ClazzAndStudentVO implements Serializable {
 
    private Integer id;
    private String name;
    private Integer age;
    private Integer classId;
    private Clazz clazz;
 
}

  

学生对班级,一对一映射关系

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<mapper namespace="xx.xx.xx.xx.StudentAndClazzMapper">
        <resultMap id="StudentAndClazzVOMap"
        type="cn.tedu.mybatis.vo.StudentAndClazzVO">
        <!-- id节点:主键的配置 -->
        <!-- column:查询结果的列名 -->
        <!-- property:数据类型的属性名 -->
        <id column="id" property="id"/>
            <result column="name" property="name"/>
            <result column="age" property="age"/>
            <result column="class_id" property="class_id"/>
        <association property="clazz" column="department_sn" javaType="Clazz" >
            <id property="id" column="cid" />
            <result property="name" column="cname" javaType="String"/>
        </association>
    </resultMap> 

  

班级对学生一对多关系

1
2
3
4
5
6
public class StudentAndClazzVO implements Serializable {
 
    private Integer clazzId;
    private String clazzName;
    private List<Student> students;
}

  

班级对学生一对多,映射关系

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<mapper namespace="xx.xx.xx.xx.StudentAndClazzMapper">
    <resultMap id="StudentAndClazzVOMap"
        type="cn.tedu.mybatis.vo.StudentAndClazzVO">
        <!-- id节点:主键的配置 -->
        <!-- column:查询结果的列名 -->
        <!-- property:数据类型的属性名 -->
        <id column="clazz_id" property="clazzId"/>
        <!-- 其它结果的配置 -->
        <result column="clazz_name" property="clazzName"/>
        <!-- 配置List集合 -->
        <!-- ofType:集合中放的哪种类型的数据 -->
        <collection property="students"
            ofType="xx.xx.xx.Student">
 
            <id column="id" property="id"/>
            <result column="name" property="name"/>
            <result column="age" property="age"/>
            <result column="class_id" property="class_id"/>
        </collection>
    </resultMap> 

  

posted @   Amy清风  阅读(553)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示