91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MyBatis中一對一,一對多,多對一的用法

發布時間:2021-07-20 22:11:45 來源:億速云 閱讀:163 作者:chen 欄目:大數據

這篇文章主要介紹“MyBatis中一對一,一對多,多對一的用法”,在日常操作中,相信很多人在MyBatis中一對一,一對多,多對一的用法問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”MyBatis中一對一,一對多,多對一的用法”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

MyBatis簡介

MyBatis 本是apache的一個開源項目iBatis, 2010年這個項目由apache software foundation 遷移到了google code,并且改名為MyBatis 。2013年11月遷移到Github。
iBATIS一詞來源于“internet”和“abatis”的組合,是一個基于Java的持久層框架。  iBATIS  提供的持久層框架包括SQL Maps和Data Access Objects(DAOs)
當前,最新版本是MyBatis 3.5.4 ,其發布時間是2020年2月4日。

了解了MyBatis那么我們就來看看在Java中如何使用MyBatis做一對一,一對多,多對一查詢吧。

java實體類對象

public class Teacher {  private Integer id;  private String name;  private List<Student> students;

 //......此處省略get,set方法}

public class Student{  private Integer id;  private String name;  private Teacher  teacher ;    //......此處省略get,set方法}

Java Dao層代碼

/***一對一:查某個學生信息并且查出他的老師*/Student queryStudentInfoById(@Param("id") Integer id);/***一對多: 查某個老師并且查出老師所有的學生*/Teacher queryTeacherInfoById(@Param("id") Integer id);/***多對一:查詢所有同學并且查出同學對應的老師*/List<Student> queryStudentInfo();

一對一:查某個學生信息并且查出他的老師

<resultMap id="resultMap" type="com.test.Student">    <result column="id" jdbcType="INTEGER" property="id" />    <result column="name" jdbcType="VARCHAR" property="name" />    <association property="teacher" javaType="ArrayList" ofType="com.test.Student" select="getTeacherInfoByTeacherId" column="teacher_id"/>  </resultMap>

<select id="queryStudentInfoById" resultType="com.test.Student">    SELECT id,name,teacher_id FROM student WHERE id = #{id}  </select>

<select id="getTeacherInfoByTeacherId" resultType="com.test.Teacher">    select  id,name  from teacher where id = #{teacher_id} </select>

一對多: 查某個老師并且查出老師所有的學生

<resultMap id="resultMap" type="com.test.Teacher">    <result column="id" jdbcType="INTEGER" property="id" />    <result column="name" jdbcType="VARCHAR" property="name" />    <collection property="students" javaType="ArrayList" ofType="com.test.Student" select="getStudentInfoByTeacherId" column="id"/>  </resultMap>

<select id="queryTeacherInfoById" resultType="com.test.Teacher">    SELECT id,name FROM teacher where id = #{id}  </select>

<select id="getStudentInfoByTeacherId" resultType="com.test.Student">    select  id,name  from student where teacher_id = #{id} </select>

多對一:查詢所有同學并且查出同學對應的老師

<resultMap id="resultMap" type="com.test.Student">    <result column="id" jdbcType="INTEGER" property="id" />    <result column="name" jdbcType="VARCHAR" property="name" />    <association property="teacher" javaType="ArrayList" ofType="com.test.Student" select="getTeacherInfoByTeacherId" column="teacher_id"/>  </resultMap>

<select id="queryStudentInfo" resultType="com.test.Student">    SELECT id,name FROM student  </select>

<select id="getTeacherInfoByTeacherId" resultType="com.test.Teacher">    select  id,name  from teacher where id = #{teacher_id} </select>

到此,關于“MyBatis中一對一,一對多,多對一的用法”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

海淀区| 和田市| 奎屯市| 苍溪县| 沁水县| 同心县| 丹阳市| 磐安县| 西平县| 包头市| 诸暨市| 屯留县| 沙河市| 松潘县| 吉首市| 定南县| 金堂县| 太谷县| 安塞县| 大名县| 白银市| 阳山县| 东宁县| 阿瓦提县| 克山县| 安龙县| 昭通市| 定结县| 米脂县| 子洲县| 萨嘎县| 西平县| 海兴县| 华亭县| 襄樊市| 内黄县| 巴林左旗| 山阳县| 辽阳县| 石泉县| 天台县|