mybatis关联配置(一对多配置)
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                mybatis关联配置(一对多配置)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.                        
                                敲代碼也有不少日子了,今天碰到個需求,就是定時器生成一張表,但是這個表的某些數據是從另外兩張表中拿到的,定外兩張表又是一對多的關系,想著咋在一個接口就能敲出來,大概結構如下
?
然后需要a表的數據(比如張三)對應的是一個集合(吃飯和睡覺數據),這個時候,有人會說把b表的字段加a表里映射,但是如果b表字段比較多,也這樣豈不是很麻煩,果斷百度,發現mybatis還有一對多,多對一的映射配置,然后我就試了一下
實體類代碼如下
a表實體類:
public class atable{private Integer id;private String name;private String password;private List<btable> bTableList;set,get此處省略不寫了 }?
b表實體類:
public class btable{private Integer 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="INTEGER" /><result column="name" property="name" jdbcType="VARCHAR" /><result column="password" property="password" jdbcType="VARCHAR" /><!-- 一對多的關系 --> <!-- property: 指的是集合屬性的值, ofType:指的是集合中元素的類型 --> <collection property="btable" ofType="com.entity.btable"> <id column="cid" property="id" jdbcType="INTEGER" /><result column="aid" property="aid" jdbcType="VARCHAR" /><result column="hobby" property="hobby" jdbcType="VARCHAR" /></collection> </resultMap><select id="getatableList" resultMap="BaseResultMap">select a.id,a.name,b.id as cid,b.aid,b.hobby from atable a, btable b where a.id=b.aid</select>?注意:
?
然后就可以解決啦,不用在a的實體類里加b的屬性了,小菜鳥還是應該勤奮點,要多學點知識~~
轉載于:https://www.cnblogs.com/supiaopiao/p/8683129.html
總結
以上是生活随笔為你收集整理的mybatis关联配置(一对多配置)的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: LibreOJ 数列分块入门
- 下一篇: 国六a能上牌吗?
