MyBatis中@Many的具體使用
@Result+@Many(一對多映射)
如果 User 關(guān)聯(lián)多個(gè) Order,可以用 @Many 進(jìn)行查詢:
表結(jié)構(gòu)
| user_id | order_id | order_name |
|---|---|---|
| 1 | 1001 | Phone |
| 1 | 1002 | Laptop |
| 2 | 1003 | Keyboard |
實(shí)體類
public class Order {
private Integer id;
private String orderName;
}
public class User {
private Integer id;
private String userName;
private List<Order> orders; // 一對多映射:一個(gè)用戶對應(yīng)多個(gè)訂單
}
查詢User時(shí),自動(dòng)查詢Order
@Select("SELECT id, username FROM t_user")
@Results({
@Result(property = "id", column = "id"),
@Result(property = "userName", column = "username"),
@Result(property = "orders", column = "id",
many = @Many(select = "org.example.mapper.OrderMapper.selectByUserId"))
})
List<User> selectUsers();
- @Many(select = "org.example.mapper.OrderMapper.selectByUserId"):
- orders 通過 OrderMapper.selectByUserId 查找訂單列表
- 相當(dāng)于 select * from t_order where user_id = #{id}
@One和@Many是類似的。
Mybatis many=@Many的傳值問題
到此這篇關(guān)于MyBatis中@Many的具體使用的文章就介紹到這了,更多相關(guān)MyBatis @Many內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
利用Spring Cloud Config結(jié)合Bus實(shí)現(xiàn)分布式配置中心的步驟
這篇文章主要介紹了利用Spring Cloud Config結(jié)合Bus實(shí)現(xiàn)分布式配置中心的相關(guān)資料,文中通過示例代碼將實(shí)現(xiàn)的步驟一步步介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友下面來一起看看吧2018-05-05
com.mysql.jdbc.Driver 和 com.mysql.cj.jdbc.Driver的區(qū)
這篇文章主要介紹了com.mysql.jdbc.Driver 和 com.mysql.cj.jdbc.Driver的區(qū)別以及設(shè)定serverTimezone的方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-09-09
SpringBoot整合SpringSecurity實(shí)現(xiàn)權(quán)限控制之實(shí)現(xiàn)多標(biāo)簽頁
這篇文章主要介紹了SpringBoot整合SpringSecurity實(shí)現(xiàn)權(quán)限控制之實(shí)現(xiàn)多標(biāo)簽頁,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-11-11
Mybatis實(shí)現(xiàn)增刪改查(CRUD)實(shí)例代碼
MyBatis 是支持普通 SQL 查詢,存儲(chǔ)過程和高級映射的優(yōu)秀持久層框架。通過本文給大家介紹Mybatis實(shí)現(xiàn)增刪改查(CRUD)實(shí)例代碼 ,需要的朋友參考下2016-05-05

