日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Mybatis一對一延遲加載實現過程解析

瀏覽:28日期:2023-10-22 08:18:32

需求:用戶和賬戶一對一關系,查詢賬戶時實現用戶的延遲加載

思路:根據id查詢,需要延遲加載的一方

1、用戶實體類

package com.yl.bean;import java.io.Serializable;import java.sql.Date;import java.util.List;/** * 用戶實體類 */public class User implements Serializable { private Integer id;//id private String username;//用戶名 private Date birthday;//生日 private String sex;//性別 private String address;//地址 private Account account;//用戶所擁有的賬戶 public User() { } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public Date getBirthday() { return birthday; } public void setBirthday(Date birthday) { this.birthday = birthday; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } public Account getAccount() { return account; } public void setAccount(Account account) { this.account = account; } @Override public String toString() { return 'User{' +'id=' + id +', username=’' + username + ’’’ +', birthday=' + birthday +', sex=’' + sex + ’’’ +', address=’' + address + ’’’ +’}’; }}

2、賬戶實體類

package com.yl.bean;import java.io.Serializable;/** * 賬戶實體類 */public class Account implements Serializable { private Integer id;//賬戶id private Integer uid;//用戶id private Double money;//余額 private User user;//賬戶所屬用戶 public Account() { } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public Integer getUid() { return uid; } public void setUid(Integer uid) { this.uid = uid; } public Double getMoney() { return money; } public void setMoney(Double money) { this.money = money; } public User getUser() { return user; } public void setUser(User user) { this.user = user; } @Override public String toString() { return 'Account{' +'id=' + id +', uid=' + uid +', money=' + money +’}’; }}

3、用戶持久層接口

package com.yl.dao;import com.yl.bean.User;import java.util.List;/** * 用戶持久層接口 */public interface IUserDao { /** * 查詢所有用戶 */ List<User> queryAll(); /** * 根據id查詢用戶 */ User queryById(int id);}

4、賬戶持久層接口

package com.yl.dao;import com.yl.bean.Account;import com.yl.bean.User;import java.util.List;/** * 賬戶持久層接口 */public interface IAccountDao { /** * 查詢所有賬戶 */ List<Account> queryAll();}

5、全局配置文件

<?xml version='1.0' encoding='UTF-8'?><!DOCTYPE configuration PUBLIC '-//mybatis.org//DTD Config 3.0//EN' 'http://mybatis.org/dtd/mybatis-3-config.dtd'><configuration> <settings> <!--開啟延遲加載--> <setting name='lazyLoadingEnabled' value='true'/> <setting name='aggressiveLazyLoading' value='false'/> </settings> <!--配置別名--> <typeAliases> <package name='com.yl.bean'/> </typeAliases> <!--配置mybatis環境--> <environments default='mysql'> <!--配置mysql環境--> <environment id='mysql'> <!--事務類型--> <transactionManager type='JDBC'></transactionManager> <!--數據源--> <dataSource type='POOLED'><property name='driver' value='com.mysql.cj.jdbc.Driver'/><property name='url' value='jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf8&amp;serverTimezone=GMT%2B8'/><property name='username' value='root'/><property name='password' value='123456'/> </dataSource> </environment> </environments> <!--指定映射配置文件位置--> <mappers> <mapper resource='IUserDao.xml'></mapper> <mapper resource='IAccountDao.xml'></mapper> </mappers></configuration>

6、用戶映射配置文件

<?xml version='1.0' encoding='UTF-8'?><!DOCTYPE mapper PUBLIC '-//mybatis.org//DTD Mapper 3.0//EN' 'http://mybatis.org/dtd/mybatis-3-mapper.dtd'><mapper namespace='com.yl.dao.IUserDao'> <!--配置用戶實體類和數據庫的對應信息--> <resultMap type='com.yl.bean.User'> <id property='id' column='id'></id> <result property='username' column='username'></result> <result property='birthday' column='birthday'></result> <result property='sex' column='sex'></result> <result property='address' column='address'></result> <!--一對一映射關系--> <collection property='account' ofType='com.yl.bean.Account'> <id property='id' column='id'></id> <result property='uid' column='uid'></result> <result property='money' column='money'></result> </collection> </resultMap> <!--查詢所有用戶--> <select resultMap='userMap'> SELECT * FROM USER u LEFT OUTER JOIN account a ON u.`id`=a.`UID` </select> <!--根據id查詢用戶--> <select resultType='user' parameterType='int'> select * from user where id=#{id} </select></mapper>

7、賬戶映射配置文件

<?xml version='1.0' encoding='UTF-8'?><!DOCTYPE mapper PUBLIC '-//mybatis.org//DTD Mapper 3.0//EN' 'http://mybatis.org/dtd/mybatis-3-mapper.dtd'><mapper namespace='com.yl.dao.IAccountDao'> <!--配置Account屬性對應數據庫信息--> <resultMap type='account'> <id property='id' column='id'></id> <result property='uid' column='uid'></result> <result property='money' column='money'></result> <!--通過id查詢用戶--> <association property='user' column='uid' javaType='user' select='com.yl.dao.IUserDao.queryById'></association> </resultMap> <!--查詢所有賬戶--> <select resultMap='accountUserMap'> SELECT * FROM account </select></mapper>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Mybatis 數據庫
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
高清在线一区| 免费在线观看日韩欧美| 日韩 欧美一区二区三区| 亚洲综合丁香| 婷婷亚洲五月| 日韩高清成人| 国产亚洲一区二区手机在线观看| 国产一区二区三区黄网站| 国产精品久久亚洲不卡| 国产美女久久| 久久精品国产网站| 精品久久亚洲| 麻豆网站免费在线观看| 日韩中文欧美| 韩日一区二区| 91精品在线免费视频| 国产成人精品福利| 日本午夜大片a在线观看| 午夜精品久久久久久久久久蜜桃| 91精品综合| 黄页网站一区| 欧美啪啪一区| 久久夜夜操妹子| 亚洲激情中文| 免费人成精品欧美精品| 亚洲tv在线| 国产精品极品| 精品欧美一区二区三区在线观看| 久久久久蜜桃| 在线亚洲免费| 日本久久二区| 国产成人精品一区二区三区免费| 中文一区一区三区高中清不卡免费| 欧美日韩国产v| 亚洲精品91| 免费日韩精品中文字幕视频在线| 中文字幕日本一区二区| 久久精品99久久久| 国产精品二区不卡| 欧美日韩在线播放视频| 日本一区二区三区视频在线看| 国产麻豆一区| 久久电影tv| 最新日韩av| 久久国产精品免费一区二区三区| 精品成av人一区二区三区| 久久九九国产| 午夜性色一区二区三区免费视频| 精品国产91| 亚洲精品午夜av福利久久蜜桃| 午夜精品影院| 欧美交a欧美精品喷水| 国产日产一区| 在线精品视频在线观看高清| 精品黄色一级片| 麻豆国产91在线播放| 国产精品蜜月aⅴ在线| 久久精品国产999大香线蕉| 亚州精品视频| 影视先锋久久| 国产欧美日韩在线一区二区| 欧洲av不卡| 日本久久一区| 久久久五月天| 国产精品天天看天天狠| 日韩久久视频| 涩涩涩久久久成人精品| 精精国产xxxx视频在线播放| 日本a级不卡| 亚洲二区三区不卡| 麻豆国产欧美日韩综合精品二区| 欧美日韩国产在线一区| 精品久久久中文字幕| 免费成人av在线播放| 久草免费在线视频| 日本中文字幕不卡| 国产一区一一区高清不卡| 亚洲激精日韩激精欧美精品| 精品亚洲成人| 日韩综合精品| 亚欧成人精品| 久久久精品日韩| 亚洲精品日韩久久| 欧美69视频| 国产精品.xx视频.xxtv| 一区三区视频| 国产精品激情| 蜜桃久久久久久| 成人国产精品久久| 久久国内精品视频| 国产96在线亚洲| 日韩成人在线看| 亚洲午夜精品久久久久久app| 久久97视频| 亚洲人妖在线| 亚洲欧美日本日韩| 国产日韩视频在线| 中文视频一区| 精品国产一区二区三区2021| 日本色综合中文字幕| 亚洲三级在线| 蜜桃精品视频| 精品国模一区二区三区| 亚洲欧美视频| 国产一区二区三区国产精品| 亚洲人成高清| 日韩不卡在线| 精品国产亚洲一区二区三区大结局| 五月激激激综合网色播| 不卡一区2区| 久久精品九色| 日韩影片在线观看| 日韩不卡一区| 日韩精品一区二区三区中文字幕| 日韩在线网址| 在线一区免费观看| 黑丝一区二区| 亚洲综合色婷婷在线观看| 在线午夜精品| 美女性感视频久久| 欧美日本一区| 欧美另类专区| 欧美一区影院| 日韩高清电影免费| 高清一区二区| 欧美精品三级在线| 99久久www免费| 免费在线亚洲欧美| 亚州欧美在线| 日韩视频网站在线观看| 欧美交a欧美精品喷水| 精品少妇一区| 在线免费观看亚洲| 亚洲精品影院在线观看| 男人的天堂久久精品| 国产精品地址| 国产精品调教| 日本韩国欧美超级黄在线观看| 中文字幕人成乱码在线观看| 欧美 日韩 国产精品免费观看| 日韩精品亚洲一区二区三区免费| 久久精品国产99久久| 国产综合亚洲精品一区二| 亚洲精品第一| 蜜桃久久精品一区二区| 私拍精品福利视频在线一区| 日韩精品亚洲专区| 亚洲精品乱码| 国产亚洲欧美日韩在线观看一区二区| 久久99伊人| 国产中文一区| 精品国产乱码久久久| 久久成人亚洲| 蘑菇福利视频一区播放| 亚洲成人精选| 国产精久久久| 国产精品密蕾丝视频下载| 成人精品亚洲| 日本精品一区二区三区在线观看视频| 在线观看一区| 欧美成人基地 | 国产综合色产| 偷拍欧美精品| 欧美黑人巨大videos精品| 欧美另类综合| 国产精品久久久久久久久久齐齐 | 日韩有吗在线观看| 亚洲不卡系列| 欧洲在线一区| 国产精品任我爽爆在线播放| 精品一区二区三区中文字幕| 久久精品动漫| 国产成人免费| 国产精品久久久久毛片大屁完整版| 国产精品久久久久蜜臀| 国语精品一区| 99亚洲视频| 少妇高潮一区二区三区99| 国产精品白浆| 美腿丝袜在线亚洲一区| 激情综合自拍| 中文不卡在线| 爽爽淫人综合网网站| 日本欧美久久久久免费播放网| 国产亚洲欧美日韩在线观看一区二区| 中文字幕在线高清| 国产手机视频一区二区| 国产精品网站在线看| 91亚洲国产| 石原莉奈一区二区三区在线观看| 日本一区二区三区中文字幕| 午夜亚洲福利在线老司机| 国产激情久久| 亚洲精品1区2区| 极品av在线| 国产精品天堂蜜av在线播放| 亚洲久久视频| 免费观看久久av| 欧美成人精品午夜一区二区| 亚洲欧美日本国产|