MyBatis 关联映射


MyBatis 中对一对一,一对多的关联映射关系的配置方式是比较简单的,只需要在 XML 实体映射文件中进行相应的简单配置即可;

以下完整示例代码地址:https://gitee.com/assad/mybatis-test-association-mapping

以下为示例代码中数据库的结构:

# 用户表
table user(
    user_id primary key,
    user_name,
    user_eamil,
    role_id refrences role(role_id)
)
# 角色表
table role(
    role_id primary key,
    role_name,
    role_group
    )
# 用户评论表
table comments(
    comment_id primary key,
    comment_content,
    user_id references user(user_id)
    )

其中 user 和 role 为一对一的关联关系;user 和 comments 为一对多的关联关系;

一对一映射


user 和 role 为一对一的关联关系,在 POJO User 的数据域中含有一个 Role,如下:

site.assad.domain.User

public class User implements Serializable{
    private int id;
    private String name;
    private String email;
    private Role role;                     //一对一关系关联映射对象属性
    // getter,setter
}

site.assad.domain.Role

public class Role implements Serializable {
    private int id;
    private String name;
    private String group;
    // getter,setter
}