亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

您的位置:首頁技術文章
文章詳情頁

mybatis 多表關聯mapper文件寫法操作

瀏覽:4日期:2023-10-21 09:13:02

兩張表SystemParam(系統參數表) Suit (主題)

SystemParam 與 Suit 是多對一

Suit 的higerSuit字段是Suit 的父及主題id 是多對一,需要自連接查詢,因為重名所以父表sql字段加別名

mapper方法

Systemparam selectJoinSuit(String strparamcode);

Po類

public class Systemparam { //ManyToOne '主題' private Suit suitobj; private String strparamcode; private String strenable; private String strparamname; //suit表主鍵 private String suit; private String strparamvalue;} public class Suit { //ManyToOne private Suit suit; //主鍵 private String strsuitcode; private String strsuitname; //父級id private String higersuit;}

resultMap的寫法

<resultMap type='net.transino.model.Systemparam' > <id column='strParamCode' property='strparamcode' jdbcType='VARCHAR' /> <result column='strEnable' property='strenable' jdbcType='VARCHAR' /> <result column='strParamName' property='strparamname' jdbcType='VARCHAR' /> <result column='suit' property='suit' jdbcType='VARCHAR' /></resultMap>

resultMap 使用extends 繼承上級map

<resultMap type='net.transino.model.Systemparam' extends='BaseResultMap' > <result column='strParamValue' property='strparamvalue' jdbcType='LONGVARCHAR' /></resultMap><resultMap type='net.transino.model.Systemparam' extends='ResultMapWithBLOBs' > <association property='suitobj' javaType='Suit'> <id column='strSuitCode' property='strsuitcode' jdbcType='VARCHAR' /> <result column='strSuitName' property='strsuitname' jdbcType='VARCHAR' /> <result column='higerSuit' property='higersuit' jdbcType='VARCHAR' /> <association property='suit' javaType='Suit'> <id column='pstrSuitCode' property='strsuitcode' jdbcType='VARCHAR' /> <result column='pstrSuitName' property='strsuitname' jdbcType='VARCHAR' /> <result column='phigerSuit' property='higersuit' jdbcType='VARCHAR' /> </association> </association></resultMap>

select寫法

<select resultMap='JoinsuitMap' parameterType='java.lang.String'> select systempara0_.*, suit1_.*, suit2_.strSuitCode pstrSuitCode, suit2_.strSuitName pstrSuitName, suit2_.higerSuit phigerSuit from SystemParam systempara0_ LEFT OUTER JOIN Suit suit1_ ON systempara0_.suit=suit1_.strSuitCode LEFT OUTER JOIN Suit suit2_ ON suit1_.higerSuit=suit2_.strSuitCode WHERE systempara0_.strParamCode=#{strparamcode,jdbcType=VARCHAR}</select>

補充知識:Mybatis中resultMap標簽實現多表查詢(多個對象)

1 n+1

1 在teacher中添加List student,

public class Teacher { private int id; private String name; private List<Student> list;

2 在studentMapper.xml中添加通過tid查詢

<select resultType='Student' parameterType='int'> select * from student where tid=#{0}</select>

3 在TeacherMapper.xml中添加查詢全部

<resultMap type='Teacher' id='mymap1'> <id column='id' property='id'/> <result column='name' property='name'/> <collection property='list' ofType='Student' select='com.bjsxt.mapper.StudentMapper.selByTid' column='id'></collection></resultMap> <select resultMap='mymap1'> select * from teacher </select>

其中collection是當屬性為集合類型時使用的標簽

2 多表聯合

<resultMap type='Teacher' id='stumap1'> <id column='tid' property='id'/> <result column='tname' property='name'/> <collection property='list' ofType='Student'> <id column='sid' property='id'/> <result column='sname' property='name'/> <result column='age' property='age'/> <result column='tid' property='tid'/> <association property='teacher' select='com.bjsxt.mapper.TeacherMapper.selById' column='tid'></association> </collection> </resultMap> <select resultMap='stumap1'> select t.id tid,t.name tname,s.id sid,s.name sname,age,tid from teacher t left join student s on t.id=s.tid </select>

以上這篇mybatis 多表關聯mapper文件寫法操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Mybatis 數據庫
相關文章:
主站蜘蛛池模板: 久久精品国产欧美日韩99热 | 亚洲国产亚洲片在线观看播放 | 久久手机视频 | 国产真实女人一级毛片 | 日韩毛片基地 | 九九九在线视频 | 中文字幕第9页 | 国产欧美日韩综合二区三区 | 三级黄色免费网站 | 激情性爽三级成人 | 在线精品视频在线观看高清 | 欧美在线视频免费观看 | 亚洲国产精品免费在线观看 | 亚洲欧美一区二区三区孕妇 | 日本大黄网站 | 欧美自拍视频在线 | 国产一级毛片午夜福 | 国产精品久久久久久搜索 | 91精品久久久久 | 欧美做爰性欧美 | 午夜看片a福利在线 | 全免费a级毛片免费看 | 亚洲 欧美 成人日韩 | 国内精品久久久久久影院8f | 日本成人三级 | 性做久久久久久免费观看 | 玖玖精品在线观看 | 久草免费在线色站 | 91精品免费久久久久久久久 | 亚洲第一男人天堂 | 成人亚洲在线观看 | 国产一区二区三区免费在线视频 | 精品国产一区二区三区国产馆 | 国产在线观看一区精品 | 国产一级强片在线观看 | 日韩欧美在线精品 | 4455永久在线毛片观看 | 国产成人丝袜视频在线视频 | 久久中文亚洲国产 | 精品日韩在线视频一区二区三区 | 亚洲在线一区二区三区 |