日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

MyBatis-学习笔记09【09.Mybatis的多表操作】

發布時間:2024/9/30 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MyBatis-学习笔记09【09.Mybatis的多表操作】 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
  • Java后端 學習路線 筆記匯總表【黑馬程序員】
  • MyBatis-學習筆記01【01.Mybatis課程介紹及環境搭建】【day01】
  • MyBatis-學習筆記02【02.Mybatis入門案例】
  • MyBatis-學習筆記03【03.自定義Mybatis框架】
  • MyBatis-學習筆記04【04.自定義Mybatis框架基于注解開發】【day02】
  • MyBatis-學習筆記05【05.使用Mybatis完成CRUD】
  • MyBatis-學習筆記06【06.使用Mybatis完成DAO層的開發】
  • MyBatis-學習筆記07【07.Mybatis的連接池及事務】【day03】
  • MyBatis-學習筆記08【08.動態SQL】
  • MyBatis-學習筆記09【09.Mybatis的多表操作】
  • MyBatis-學習筆記10【10.JNDI擴展知識】
  • MyBatis-學習筆記11【11.Mybatis的緩存】【day04】
  • MyBatis-學習筆記12【12.Mybatis注解開發】
  • 目錄

    1 mybatis表之間關系分析

    2 完成account表的建立及實現單表查詢

    2.1、創建Account數據表

    2.2、配置User實體類

    2.3、配置Account實體類

    3 完成account的一對一操作-通過寫account的子類方式查詢

    4 完成account一對一操作-建立實體類關系的方式

    5 完成user的一對多查詢操作

    6 分析mybatis多對多的步驟并搭建環境

    7 mybatis多對多準備角色表的實體類和映射配置

    7.1、建立多對多數據表

    7.2、實體類和映射配置

    8 mybatis多對多操作-查詢角色獲取角色下所屬用戶信息

    9 mybatis多對多操作-查詢用戶獲取用戶所包含的角色信息


    1 mybatis表之間關系分析

    1、連接池
    2、mybatis中的連接池
    3、mybatis中的事務
    4、mybatis中的多表查詢
    ????表之間的關系有幾種:一對多、多對一、一對一、多對多
    ????舉例:
    ????????用戶和訂單就是一對多
    ????????訂單和用戶就是多對一:一個用戶可以下多個訂單、多個訂單屬于同一個用戶
    ????????人和身份證號就是一對一:一個人只能有一個身份證號、一個身份證號只能屬于一個人
    ????????老師和學生之間就是多對多:一個學生可以被多個老師教過、一個老師可以交多個學生
    ????特例:如果拿出每一個訂單,他都只能屬于一個用戶。所以Mybatis就把多對一看成了一對一。

    2 完成account表的建立及實現單表查詢

    1、連接池
    2、mybatis中的連接池
    3、mybatis中的事務
    4、mybatis中的多表查詢
    ?? ?表之間的關系有幾種:一對多、多對一、一對一、多對多
    ?? ?舉例:
    ?? ??? ?用戶和訂單就是一對多
    ?? ??? ?訂單和用戶就是多對一:一個用戶可以下多個訂單、多個訂單屬于同一個用戶
    ?? ??? ?人和身份證號就是一對一:一個人只能有一個身份證號、一個身份證號只能屬于一個人
    ?? ??? ?老師和學生之間就是多對多:一個學生可以被多個老師教過、一個老師可以交多個學生
    ?? ?特例:如果拿出每一個訂單,他都只能屬于一個用戶。所以Mybatis就把多對一看成了一對一。
    ?? ?mybatis中的多表查詢:
    ?? ??? ?示例:用戶和賬戶
    ?? ??? ??? ?一個用戶可以有多個賬戶、一個賬戶只能屬于一個用戶(多個賬戶也可以屬于同一個用戶)
    ?? ??? ?步驟:
    ?? ??? ??? ?1、建立兩張表:用戶表、賬戶表
    ?? ??? ??? ??? ?讓用戶表和賬戶表之間具備一對多的關系:需要使用外鍵在賬戶表中添加
    ?? ??? ??? ?2、建立兩個實體類:用戶實體類和賬戶實體類
    ?? ??? ??? ??? ?讓用戶和賬戶的實體類能體現出來一對多的關系
    ?? ??? ??? ?3、建立兩個配置文件:用戶的配置文件、賬戶的配置文件
    ?? ??? ??? ?4、實現配置:
    ?? ??? ??? ??? ?當我們查詢用戶時,可以同時得到用戶下所包含的賬戶信息
    ?? ??? ??? ??? ?當我們查詢賬戶時,可以同時得到賬戶的所屬用戶信息

    2.1、創建Account數據表

    ?

    DROP TABLE IF EXISTS `account`;CREATE TABLE `account` (`ID` int(11) NOT NULL COMMENT '編號',`UID` int(11) default NULL COMMENT '用戶編號',`MONEY` double default NULL COMMENT '金額',PRIMARY KEY (`ID`),KEY `FK_Reference_8` (`UID`),CONSTRAINT `FK_Reference_8` FOREIGN KEY (`UID`) REFERENCES `user` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;insert into `account`(`ID`,`UID`,`MONEY`) values (1,46,1000),(2,45,1000),(3,46,2000);

    2.2、配置User實體類

    ?

    2.3、配置Account實體類

    3 完成account的一對一操作-通過寫account的子類方式查詢

    ?

    4 完成account一對一操作-建立實體類關系的方式

    ?

    ?

    5 完成user的一對多查詢操作

    ?

    6 分析mybatis多對多的步驟并搭建環境

    1、連接池
    2、mybatis中的連接池
    3、mybatis中的事務
    4、mybatis中的多表查詢
    ?? ??? ?示例:用戶和角色
    ?? ??? ??? ?一個用戶可以有多個角色
    ?? ??? ??? ?一個角色可以賦予多個用戶
    ?? ??? ?步驟:
    ?? ??? ??? ?1、建立兩張表:用戶表、角色表
    ?? ??? ??? ??? ?讓用戶表和角色表具有多對多的關系。需要使用中間表,中間表中包含各自的主鍵,在中間表中是外鍵。
    ?? ??? ??? ?2、建立兩個實體類:用戶實體類和角色實體類
    ?? ??? ??? ??? ?讓用戶和角色的實體類能體現出來多對多的關系
    ?? ??? ??? ??? ?各自包含對方一個集合引用
    ?? ??? ??? ?3、建立兩個配置文件
    ?? ??? ??? ??? ?用戶的配置文件
    ?? ??? ??? ??? ?角色的配置文件
    ?? ??? ??? ?4、實現配置:
    ?? ??? ??? ??? ?當我們查詢用戶時,可以同時得到用戶所包含的角色信息
    ?? ??? ??? ??? ?當我們查詢角色時,可以同時得到角色的所賦予的用戶信息

    7 mybatis多對多準備角色表的實體類和映射配置

    7.1、建立多對多數據表

    DROP TABLE IF EXISTS `role`;CREATE TABLE `role` (`ID` int(11) NOT NULL COMMENT '編號',`ROLE_NAME` varchar(30) default NULL COMMENT '角色名稱',`ROLE_DESC` varchar(60) default NULL COMMENT '角色描述',PRIMARY KEY (`ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;insert into `role`(`ID`,`ROLE_NAME`,`ROLE_DESC`) values (1,'院長','管理整個學院'),(2,'總裁','管理整個公司'),(3,'校長','管理整個學校');DROP TABLE IF EXISTS `user_role`;CREATE TABLE `user_role` (`UID` int(11) NOT NULL COMMENT '用戶編號',`RID` int(11) NOT NULL COMMENT '角色編號',PRIMARY KEY (`UID`,`RID`),KEY `FK_Reference_10` (`RID`),CONSTRAINT `FK_Reference_10` FOREIGN KEY (`RID`) REFERENCES `role` (`ID`),CONSTRAINT `FK_Reference_9` FOREIGN KEY (`UID`) REFERENCES `user` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;insert into `user_role`(`UID`,`RID`) values (41,1),(45,1),(41,2);

    7.2、實體類和映射配置

    ?

    8 mybatis多對多操作-查詢角色獲取角色下所屬用戶信息

    ?

    9 mybatis多對多操作-查詢用戶獲取用戶所包含的角色信息

    ?

    總結

    以上是生活随笔為你收集整理的MyBatis-学习笔记09【09.Mybatis的多表操作】的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。