最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Spring Data JDBC 簡單使用

2022-05-23 20:39 作者:-l0_0l-  | 我要投稿

Spring Data JDBC 簡單使用

目錄

因為想簡化數(shù)據(jù)庫查詢函數(shù)的寫法(相對 JbdcTemplate 而言),從而了解到 Spring Data JDBC (相對于 Spring Data JPA ,功能簡單很多)。

1. 簡單例子

代碼1? User.java


代碼2? UserRepository.java


2. 主鍵不設(shè)置 auto_increment

代碼3? UserCallback.java


3. @MappedCollection

兩張表要有相同內(nèi)容的主鍵

簡單的測試過程在筆記末尾


4. 使用 JdbcTemplate 自定義操作

1. 定義 interface

2. 實現(xiàn) interface ,Spring 搜索該 interface 的實現(xiàn)時,默認(rèn)后綴為 Impl

3. 繼承 interface ,相同函數(shù)「按繼承的聲明順序」決定優(yōu)先級


5. mappedCollection 測試

在文檔中看到 Spring Data JDBC 支持 one-to-one relationship ,one-to-many relationship ,以為可以直接獲取到外鍵關(guān)聯(lián)表的數(shù)據(jù),但經(jīng)過簡單測試后發(fā)現(xiàn),貌似和 自己理解的有偏差。

經(jīng)過測試后得到的結(jié)論:兩張表要有相同內(nèi)容的主鍵。

5.1. 數(shù)據(jù)庫表


5.2. 表對應(yīng)的 Java 對象

代碼4? User.java


代碼5? Role.java


5.3. 測試

CrudRepository.findById ,然后看執(zhí)行的 SQL

5.3.1. 設(shè)置 user.account@Id

1. @MappedCollection(idColumn = "id", keyColumn = "roleId")

2. @MappedCollection(idColumn = "id")

@MappedCollection(idColumn = "id", keyColumn = "roleId") 一樣

3. @MappedCollection(idColumn = "roleId")


5.3.2. 設(shè)置 user.username@Id ,并且 @MappedCollection(idColumn = "id")


5.3.3.Role role 改為 Set<Role> role

會執(zhí)行兩次 SQL

兩者傳入的參數(shù)相同

Spring Data JDBC 簡單使用的評論 (共 條)

分享到微博請遵守國家法律
竹溪县| 奉贤区| 吴川市| 荣昌县| 巴里| 保亭| 肇东市| 宝兴县| 嘉荫县| 荣成市| 赫章县| 沈阳市| 马龙县| 垦利县| 巧家县| 昭苏县| 成武县| 寿光市| 水富县| 巩留县| 重庆市| 晋江市| 辛集市| 岳阳市| 桦甸市| 阿坝| 大悟县| 健康| 犍为县| 剑河县| 宁南县| 封开县| 宜川县| 金阳县| 永宁县| 北安市| 林芝县| 张家口市| 清河县| 江川县| 渑池县|