码迷,mamicode.com
首页 > 其他好文 > 详细

mybatis关联配置(一对多配置)

时间:2018-03-31 18:17:25      阅读:202      评论:0      收藏:0      [点我收藏+]

标签:cti   color   技术分享   AC   ace   arch   style   string   配置   

敲代码也有不少日子了,今天碰到个需求,就是定时器生成一张表,但是这个表的某些数据是从另外两张表中拿到的,定外两张表又是一对多的关系,想着咋在一个接口就能敲出来,大概结构如下

技术分享图片

 

然后需要a表的数据(比如张三)对应的是一个集合(吃饭和睡觉数据),这个时候,有人会说把b表的字段加a表里映射,但是如果b表字段比较多,也这样岂不是很麻烦,果断百度,发现mybatis还有一对多,多对一的映射配置,然后我就试了一下

实体类代码如下

a表实体类:

public class atable{
    private String id;

    private String name;

    private String password;

    private List<btable> bTableList;
    
    set,get此处省略不写了
}

 

b表实体类:

public class btable{
    private String id;

    private String aid;

    private String hobby;
    
    set,get此处省略不写了
}

 

mapper.xml层配置如下:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.infohold.city.map.dao.mybatis.CompanycheckplanmonthDao" >
  <resultMap id="BaseResultMap" type="com.infohold.city.map.model.CompanyCheckPlanMonth" >
    <id column="id" property="id" jdbcType="VARCHAR" />
    <result column="name" property="name" jdbcType="VARCHAR" />
    <result column="password" property="password" jdbcType="VARCHAR" />
    
     <!-- 一对多的关系 -->  
    <!-- property: 指的是集合属性的值, ofType:指的是集合中元素的类型 -->  
    <collection property="list" ofType="com.entity.btable">  
        <id column="cid" property="id" jdbcType="VARCHAR" />
        <result column="aid" property="aid" jdbcType="VARCHAR" />
        <result column="hobby" property="hobby" jdbcType="VARCHAR" />
    </collection>  
  </resultMap>

    <select id="getatableList" resultMap="BaseResultMap">
        select * from atable a, btable b  
            where a.id=b.aid
   </select>

 

然后就可以解决啦,不用在a的实体类里加b的属性了,小菜鸟还是应该勤奋点,要多学点知识~~

mybatis关联配置(一对多配置)

标签:cti   color   技术分享   AC   ace   arch   style   string   配置   

原文地址:https://www.cnblogs.com/supiaopiao/p/8683129.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!