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

歡迎光臨散文網(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 簡單使用的評論 (共 條)

分享到微博請遵守國家法律
陇西县| 衡阳县| 贵港市| 宁晋县| 永昌县| 麦盖提县| 大埔区| 南通市| 青田县| 漳州市| 石台县| 林西县| 西充县| 公安县| 灌云县| 满城县| 丹寨县| 炎陵县| 泰和县| 南和县| 东海县| 鄢陵县| 廊坊市| 星子县| 鲜城| 清丰县| 沙坪坝区| 南汇区| 华池县| 淮北市| 佛坪县| 深圳市| 玛纳斯县| 民县| 西和县| 农安县| 龙川县| 洛扎县| 清徐县| 新昌县| 开原市|