精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

后端技術:Mybatis中resultMap用法示例筆記

開發(fā) 后端
resultMap屬于mybatis返回操作結果的一個標簽,可以用來映射select查詢出來結果的集合,主要作用是將實體類中的字段與數據庫表中的字段進行關聯(lián)映射。

1、概念

resultMap屬于mybatis返回操作結果的一個標簽,可以用來映射select查詢出來結果的集合,主要作用是將實體類中的字段與數據庫表中的字段進行關聯(lián)映射。并且支持復雜的返回結果類型。

2、使用場景

2.1 屬性映射

當數據庫字段和項目中的實體屬性不一致時,可以使resultMap進行數據庫字段和實體類屬性的映射關系比如:

  1. column="id" jdbcType="integer" property="id" />     
  2.  column="user_name" jdbcType="VARCHAR" property="userName" /> 

說明:如果數據庫字段和實體類屬性一致的情況下,可以省略不寫。

2.2 實現(xiàn)Java復雜實體類用法

a.初始化腳本

  1. DROP TABLE IF EXISTS `t_user`; 
  2. CREATE TABLE `t_user` ( 
  3.   `id` int(11) NOT NULL AUTO_INCREMENT, 
  4.   `user_name` varchar(255) CHARACTER SET armscii8 DEFAULT NULL
  5.   `passwordvarchar(255) CHARACTER SET armscii8 DEFAULT NULL
  6.   `last_login_time` datetime DEFAULT NULL
  7.   `sex` tinyint(4) DEFAULT NULL
  8.   PRIMARY KEY (`id`) 
  9. ) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8; 
  10.  
  11.  
  12. -- ---------------------------- 
  13. -- Records of t_user 
  14. -- ---------------------------- 
  15. INSERT INTO `t_user` VALUES ('1''xiaoxin''123''2019-07-27 16:01:21''1'); 
  16. INSERT INTO `t_user` VALUES ('2''jack jo''123''2019-07-24 16:01:37''1'); 
  17. INSERT INTO `t_user` VALUES ('4''landengdeng''123''2019-07-24 16:01:37''1'); 
  18. INSERT INTO `t_user` VALUES ('5''max''123''2019-07-24 16:01:37''1'); 
  19. INSERT INTO `t_user` VALUES ('6''liua11''123456'null'1'); 
  20. INSERT INTO `t_user` VALUES ('7''xiaozhang''888888'null'1'); 
  21. DROP TABLE IF EXISTS `t_hobby`; 
  22. CREATE TABLE `t_hobby` ( 
  23.   `id` int(11) NOT NULL
  24.   `hobbyName` varchar(50) CHARACTER SET utf8 DEFAULT NULL
  25.   `userId` int(11) DEFAULT NULL
  26.   PRIMARY KEY (`id`) 
  27. ) ENGINE=InnoDB DEFAULT CHARSET=latin1; 
  28.  
  29.  
  30. -- ---------------------------- 
  31. -- Records of t_hobby 
  32. -- ---------------------------- 
  33. INSERT INTO `t_hobby` VALUES ('0''音樂''2'); 
  34. INSERT INTO `t_hobby` VALUES ('1''籃球''1'); 
  35. INSERT INTO `t_hobby` VALUES ('2''讀書''1'); 

b.定義實體類

定義實體 UserDO.java

  1. public class UserDO { 
  2. private Integer id; 
  3. private String userName; 
  4. private String password
  5. private Integer sex; 
  6. private Date lastLoginTime; 
  7.  
  8.  
  9. public Integer getId() { 
  10. return id; 
  11.     } 
  12.  
  13.  
  14. public void setId(Integer id) { 
  15. this.id = id; 
  16.     } 
  17.  
  18.  
  19. public String getUserName() { 
  20. return userName; 
  21.     } 
  22.  
  23.  
  24. public void setUserName(String userName) { 
  25. this.userName = userName; 
  26.     } 
  27.  
  28.  
  29. public String getPassword() { 
  30. return password
  31.     } 
  32.  
  33.  
  34. public void setPassword(String password) { 
  35. this.password = password
  36.     } 
  37.  
  38.  
  39. public Integer getSex() { 
  40. return sex; 
  41.     } 
  42.  
  43.  
  44. public void setSex(Integer sex) { 
  45. this.sex = sex; 
  46.     } 
  47.  
  48.  
  49. public Date getLastLoginTime() { 
  50. return lastLoginTime; 
  51.     } 
  52.  
  53.  
  54. public void setLastLoginTime(Date lastLoginTime) { 
  55. this.lastLoginTime = lastLoginTime; 
  56.     } 
  57.  
  58.  
  59. @Override 
  60.     public String toString() { 
  61. return "UserDO{" + 
  62. "id=" + id + 
  63. ", userName='" + userName + '\'' + 
  64. ", password='" + password + '\'' + 
  65. ", sex=" + sex + 
  66. ", lastLoginTime=" + lastLoginTime + 
  67. '}'
  68.     } 

定義實體類 HobbyDO.java

  1. public class HobbyDO { 
  2. private Integer id; 
  3. private String hobbyName; 
  4. private Integer userId; 
  5.  
  6.  
  7. public Integer getId() { 
  8. return id; 
  9.     } 
  10.  
  11.  
  12. public void setId(Integer id) { 
  13. this.id = id; 
  14.     } 
  15.  
  16.  
  17. public String getHobbyName() { 
  18. return hobbyName; 
  19.     } 
  20.  
  21.  
  22. public void setHobbyName(String hobbyName) { 
  23. this.hobbyName = hobbyName; 
  24.     } 
  25.  
  26.  
  27. public Integer getUserId() { 
  28. return userId; 
  29.     } 
  30.  
  31.  
  32. public void setUserId(Integer userId) { 
  33. this.userId = userId; 
  34.     } 
  35.  
  36.  
  37. @Override 
  38.     public String toString() { 
  39. return "HobbyDO{" + 
  40. "id=" + id + 
  41. ", hobbyName='" + hobbyName + '\'' + 
  42. ", userId=" + userId + 
  43. '}'
  44.     } 

c.定義model類

定義類 HobbyVO.java 用來演示一對一

  1. public class HobbyVo extends HobbyDO { 
  2. private UserDO user ; 
  3.  
  4.  
  5. public UserDO getUser() { 
  6. return user
  7.     } 
  8.  
  9.  
  10. public void setUser(UserDO user) { 
  11. this.user = user
  12.     } 
  13. 定義類 UserVO.java 用來演示1對多 
  14. public class UserVO extends UserDO { 
  15. private Listlist; 
  16.  
  17.  
  18. public ListgetList() { 
  19. return list; 
  20.     } 
  21.  
  22.  
  23. public void setList(Listlist) { 
  24. this.list = list; 
  25.     } 

d.定義mapper類文件

定義UserInfoMapper.java文件

  1. package my.springboot.mybatis.dao; 
  2.  
  3.  
  4. import java.util.List; 
  5. import java.util.Map; 
  6.  
  7.  
  8. import my.springboot.mybatis.entity.HobbyDO; 
  9. import my.springboot.mybatis.entity.UserDO; 
  10. import my.springboot.mybatis.model.UserVO; 
  11. import org.apache.ibatis.annotations.Mapper; 
  12.  
  13.  
  14. @Mapper 
  15. public interface UserInfoMapper { 
  16.     UserDO get(Integer id); 
  17.     List getUserVOMap(Integer id); 
  18.     List getHobbyByUserId(Integer userId); 

定義HobbyMapper.java文件

  1. package my.springboot.mybatis.dao; 
  2.  
  3.  
  4. import my.springboot.mybatis.entity.HobbyDO; 
  5. import my.springboot.mybatis.entity.UserDO; 
  6. import my.springboot.mybatis.model.HobbyVo; 
  7. import org.apache.ibatis.annotations.Mapper; 
  8.  
  9.  
  10. import java.util.List; 
  11. import java.util.Map; 
  12.  
  13.  
  14. @Mapper 
  15. public interface HobbyMapper { 
  16.     List getHobbyByUserId(Integer userId); 
  17.     List getHobbyVOMap(); 

e.定義service服務

定義IUserInfoService.java

  1. package my.springboot.mybatis.service; 
  2.  
  3.  
  4. import my.springboot.mybatis.entity.UserDO; 
  5. import my.springboot.mybatis.model.HobbyVo; 
  6. import my.springboot.mybatis.model.UserVO; 
  7.  
  8.  
  9. import java.util.List; 
  10.  
  11.  
  12. public interface IUserInfoService {  
  13.     List getUserVOMap(Integer userId); 
  14.     List getHobbyMap(); 

定義UserInfoService.java

  1. package my.springboot.mybatis.service.impl; 
  2. import my.springboot.mybatis.dao.HobbyMapper; 
  3. import my.springboot.mybatis.dao.UserInfoMapper; 
  4. import my.springboot.mybatis.entity.UserDO; 
  5. import my.springboot.mybatis.model.HobbyVo; 
  6. import my.springboot.mybatis.model.UserVO; 
  7. import my.springboot.mybatis.service.IUserInfoService; 
  8. import org.springframework.beans.factory.annotation.Autowired; 
  9. import org.springframework.stereotype.Service; 
  10. import java.util.List; 
  11. @Service 
  12. public class UserInfoService implements IUserInfoService { 
  13. @Autowired 
  14.     private UserInfoMapper mapper; 
  15. @Autowired 
  16.     private HobbyMapper hobbyMapper; 
  17. @Override 
  18.     public  List getUserVOMap(Integer id) 
  19.     { 
  20. return this.mapper.getUserVOMap(id); 
  21.     } 
  22.  
  23.  
  24. @Override 
  25.     public ListgetHobbyMap() { 
  26. return hobbyMapper.getHobbyVOMap(); 
  27.     } 
  28.  
  29.  

f.定義測試控制器

HomeController.java

  1. package my.springboot.mybatis.controller; 
  2.  
  3.  
  4.  
  5.  
  6. import my.springboot.mybatis.entity.UserDO; 
  7. import my.springboot.mybatis.model.HobbyVo; 
  8. import my.springboot.mybatis.model.UserVO; 
  9. import my.springboot.mybatis.service.IUserInfoService; 
  10. import org.springframework.beans.factory.annotation.Autowired; 
  11. import org.springframework.stereotype.Controller; 
  12. import org.springframework.web.bind.annotation.RequestMapping; 
  13. import org.springframework.web.bind.annotation.ResponseBody; 
  14. import javax.jws.soap.SOAPBinding; 
  15. import java.util.Date
  16. import java.util.List; 
  17. @Controller 
  18. public class HomeController { 
  19. @Autowired 
  20.     private IUserInfoService userInfoService; 
  21. @RequestMapping("index") //注解映射請求路徑 
  22.     @ResponseBody //可以將java對象轉為json格式的數據 
  23.     public String index() 
  24.     { 
  25.         List vo=userInfoService.getUserVOMap(1); 
  26.         List list=userInfoService.getHobbyMap(); 
  27.         return "Hello World !"
  28.     } 

g.定義xml文件

定義HobbyMapper.xml文件

  1. <?xml version="1.0" encoding="UTF-8"?> 
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"
  3. <mapper namespace="my.springboot.mybatis.dao.HobbyMapper"
  4. <select id="getHobbyByUserId" resultType="my.springboot.mybatis.entity.HobbyDO" parameterType="integer"
  5.        select  * from t_hobby where userId= #{id} 
  6. </select
  7. <resultMap id="hobbyVOMap" type="my.springboot.mybatis.model.HobbyVo"
  8. <id property="id" column="id"/> 
  9. <association property="user" column="userId" javaType="my.springboot.mybatis.entity.HobbyDO" 
  10.                      select="my.springboot.mybatis.dao.UserInfoMapper.get"
  11. </association> 
  12. </resultMap> 
  13. <select id="getHobbyVOMap" resultMap="hobbyVOMap" parameterType="integer"
  14.        select  * from t_hobby 
  15. </select
  16. </mapper> 

定義UserInfoMapper.xml

  1. <?xml version="1.0" encoding="UTF-8"?> 
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"
  3. <mapper namespace="my.springboot.mybatis.dao.UserInfoMapper"
  4. <select id="get" resultType="my.springboot.mybatis.entity.UserDO"
  5.    select `id`,`user_name`,`password`,`last_login_time`,`sex` from t_user where id = #{value} 
  6. </select
  7. <!--跨xml文件寫法 my.springboot.mybatis.dao.HobbyMapper.getHobbyByUserId--> 
  8.     <resultMap id="userVOMap" type="my.springboot.mybatis.model.UserVO"
  9. <id property="id" column="id"/> 
  10. <collection property="list" column="id" ofType="my.springboot.mybatis.entity.HobbyDO" select="my.springboot.mybatis.dao.HobbyMapper.getHobbyByUserId"
  11. </collection> 
  12. </resultMap> 
  13. <select id="getUserVOMap" resultMap="userVOMap" parameterType="integer"
  14.        select  * from t_user 
  15. </select
  16. <select id="getHobbyByUserId" resultType="my.springboot.mybatis.entity.HobbyDO" parameterType="integer"
  17.        select  * from t_hobby where userId= #{id} 
  18. </select
  19.  
  20. </mapper> 

訪問地址:http://localhost:8090/index項目結構:

3、總結

resultMap用途主要有一下兩點:

1、數據庫字段和Java類屬性映射

2、實現(xiàn)復雜的model類的查詢

model中包含實體類使用關鍵字:association

  1. <select id="getHobbyByUserId" resultType="my.springboot.mybatis.entity.HobbyDO" parameterType="integer"
  2.        select  * from t_hobby where userId= #{id} 
  3. </select
  4. <resultMap id="hobbyVOMap" type="my.springboot.mybatis.model.HobbyVo"
  5. <id property="id" column="id"/> 
  6. <association property="user" column="userId" javaType="my.springboot.mybatis.entity.HobbyDO" 
  7.                      select="my.springboot.mybatis.dao.UserInfoMapper.get"
  8. <!-- 說明:如果調用的方法不在當前xml里面,需要指明完整的mapper路徑 my.springboot.mybatis.dao.UserInfoMapper.get -->           </association> 
  9. </resultMap> 
  10. <select id="getHobbyVOMap" resultMap="hobbyVOMap" parameterType="integer"
  11.        select  * from t_hobby 
  12. </select

model中包含集合使用:collection 關鍵代碼

  1. <resultMap id="userVOMap" type="my.springboot.mybatis.model.UserVO"
  2. <id property="id" column="id"/> 
  3. <collection property="list" column="id" ofType="my.springboot.mybatis.entity.HobbyDO" select="my.springboot.mybatis.dao.HobbyMapper.getHobbyByUserId"
  4. </collection> 
  5. </resultMap> 
  6. <select id="getUserVOMap" resultMap="userVOMap" parameterType="integer"
  7.    select  * from t_user 
  8. </select
  9. <select id="getHobbyByUserId" resultType="my.springboot.mybatis.entity.HobbyDO" parameterType="integer"
  10.    select  * from t_hobby where userId= #{id} 
  11. </select

注意:實際的查詢過程當中,并不是必須要保證數據庫字段名稱和實體的屬性名稱保持一致,如果查詢語句查詢字段指定別名,也是可以正常做映射的,要會靈活使用。

 

責任編輯:姜華 來源: IT技術分享社區(qū)
相關推薦

2021-06-05 07:34:00

SpringBootMybatis用法

2010-09-17 09:35:51

SQL中if語句

2024-04-19 08:23:06

2023-04-06 09:24:35

MyBatis數據庫

2010-05-27 15:18:47

MySQL連接

2021-04-22 07:43:24

后端技術SpringBootdevtools

2013-11-15 16:07:26

Linux dfLinux命令

2009-08-27 15:53:30

C#中using wo

2023-12-20 07:52:49

Python高級用法生成器

2021-09-13 09:54:51

Linuxcrontab命令

2009-07-16 13:50:31

ibatisResultMap

2018-11-16 15:35:10

Spring事務Java

2010-04-26 11:37:25

Oracle merg

2010-09-15 16:19:17

IECSS hack

2021-05-26 06:22:34

SpringBootJPA后端開發(fā)

2021-07-11 07:05:28

RedisSpringBoot用法

2021-05-06 15:18:09

Shell腳本Linux

2010-11-26 09:46:26

MySQL字符串相加

2021-04-19 12:00:15

Linux命令chmod

2015-11-02 09:31:32

點贊
收藏

51CTO技術棧公眾號

欧美一卡二卡三卡| 欧美/亚洲一区| 午夜欧美大尺度福利影院在线看| 亚洲最大av在线| 欧美成人免费观看视频| 国产欧美啪啪| 色乱码一区二区三区88| 亚洲成人精品在线观看| 少妇毛片一区二区三区| 日本熟妇一区二区| 国产精品自在| 日韩欧美在线一区| 四虎影视永久免费在线观看一区二区三区| 日本中文字幕在线观看视频| 国产女人18毛片水真多| 成年人免费在线视频| 久久精品一区二区三区中文字幕| 亚洲欧美另类自拍| 国产性生交xxxxx免费| 成年人在线观看视频免费| 男人天堂综合| 韩国女主播成人在线| 色综合男人天堂| 扒开jk护士狂揉免费| 色999韩欧美国产综合俺来也| 亚洲韩国精品一区| 欧美极品一区二区| xxxx国产精品| 日本免费新一区视频| 欧美黑人性视频| 国产一区二区三区视频播放| 国产+成+人+亚洲欧洲在线 | 秘密基地免费观看完整版中文| 中文字幕在线中文字幕在线中三区| 国产精品婷婷午夜在线观看| 高清国产一区| 亚洲中文字幕在线观看| 亚洲精品极品| 日韩亚洲精品视频| 国产美女免费无遮挡| 一区二区三区视频免费视频观看网站| 亚洲综合视频网| 亚洲午夜精品一区二区三区| 午夜一区在线观看| 久久99精品久久久久久国产越南| 欧洲午夜精品久久久| 久久精品国产亚洲av高清色欲| 日韩dvd碟片| 亚洲人在线观看| 7788色淫网站小说| jizz国产精品| 日韩一级大片在线| 在线黄色免费看| av成人在线看| 欧洲亚洲精品在线| 国产真实乱子伦| 国产在线观看www| 亚洲午夜免费福利视频| 91嫩草国产丨精品入口麻豆| 色三级在线观看| 中文字幕精品一区二区精品绿巨人| 成人羞羞视频免费| 国产夫妻自拍av| 精彩视频一区二区三区| 国产欧美一区二区三区久久| 久久精品五月天| 久久精品女人天堂| 日韩美女福利视频| 国产99久久久| 久久狠狠婷婷| 国产精品黄色av| 97视频免费在线| 国产麻豆精品视频| 国产精品一区在线观看| 天天综合天天色| 国产日韩高清在线| 在线视频不卡一区二区| 丝袜美女在线观看| 五月婷婷综合激情| 国产情侣av自拍| 另类一区二区| 欧美精品一区在线观看| 强伦人妻一区二区三区| 三上亚洲一区二区| 久久久视频在线| 欧美人一级淫片a免费播放| 久久se精品一区二区| 9a蜜桃久久久久久免费| 欧美精品少妇| 综合电影一区二区三区| 丰满的少妇愉情hd高清果冻传媒| 中文在线免费视频| 555www色欧美视频| 国产精品九九视频| 欧美gayvideo| 91精品国产高清久久久久久久久| 在线观看国产精品视频| jizz一区二区| 一区二区国产日产| a在线视频v视频| 欧美日韩国产综合草草| 性农村xxxxx小树林| 日韩av专区| 77777亚洲午夜久久多人| 在线观看免费视频一区| 成人av在线看| 99re8这里只有精品| 中文字幕色婷婷在线视频| 欧美精品aⅴ在线视频| 色综合久久五月| 久久网站免费观看| 欧美在线亚洲一区| 亚洲精品国产精品乱码不卡| 国产亚洲1区2区3区| 国产真实老熟女无套内射| 欧美日韩视频免费看| 日韩精品久久久久久久玫瑰园| 国产67194| 免费在线一区观看| 久久亚洲高清| 成人高潮aa毛片免费| 欧美日韩午夜在线视频| 亚洲自拍偷拍一区二区| 黄色成人精品网站| 97超碰在线播放| 精品自拍一区| 精品视频123区在线观看| 手机av免费看| 一本色道88久久加勒比精品| 99久久精品无码一区二区毛片| eeuss影院www在线观看| 日韩欧美亚洲成人| jjzzjjzz欧美69巨大| 欧美激情视频一区二区三区免费| 国产精品视频午夜| 九九在线视频| 色综合视频一区二区三区高清| 亚洲天堂av网站| 糖心vlog免费在线观看| 国产成人亚洲一区二区三区| 亚洲国产又黄又爽女人高潮的| 熟女少妇a性色生活片毛片| 日韩在线卡一卡二| 久久www免费人成精品| 亚洲中午字幕| 国产精品亚洲片夜色在线| 色播色播色播色播色播在线| 深爱激情综合| 热re91久久精品国99热蜜臀| 天堂在线资源网| 亚洲午夜三级在线| 妖精视频一区二区| 夜夜嗨av一区二区三区网站四季av| 国产91一区二区三区| 高清电影在线免费观看| 亚洲成人av资源网| 久久久国产高清| 久久综合国产精品| www.欧美日本| 日韩在线观看| 亚洲人xxxx| 成人性生交大片免费看视频直播 | 久久久综合亚洲91久久98| av在线私库| 日韩精品在线电影| 91丝袜一区二区三区| 久久久久国产精品免费免费搜索| 国产xxxxx视频| 久久综合88| 91沈先生播放一区二区| 2021中文字幕在线| 亚洲美女视频网站| 中国女人一级一次看片| 综合av第一页| 日本少妇毛茸茸| 日本vs亚洲vs韩国一区三区| 黄瓜视频免费观看在线观看www| 久久的色偷偷| 91av在线视频观看| 第一视频专区在线| 欧美一级理论性理论a| 日本一级淫片色费放| 91一区二区在线| 色戒在线免费观看| 亚洲激情婷婷| 亚洲国产精品毛片| ccyy激情综合| 国产精品看片资源| 高h视频在线播放| 最近2019免费中文字幕视频三| 国产超碰人人模人人爽人人添| 欧美日韩国产一区在线| 91ts人妖另类精品系列| 不卡电影一区二区三区| 国产野外作爱视频播放| 亚洲网站在线| 亚洲午夜在线观看| 性欧美lx╳lx╳| 99久久久精品免费观看国产| 日本成人三级电影| 欧美高跟鞋交xxxxxhd| 韩国中文字幕2020精品| 欧美白人最猛性xxxxx69交| 国产精品日韩一区二区| caopo在线| 亚洲女人天堂视频| 精品人妻aV中文字幕乱码色欲 | 国产视频91在线| 亚洲国产成人一区二区三区| 俄罗斯黄色录像| 日本福利片高清在线观看| 亚洲福利国产精品| 黄色激情小视频| 91免费国产视频网站| 爱情岛论坛亚洲自拍| 日韩高清在线不卡| 中文字幕无码精品亚洲资源网久久| 热久久天天拍国产| 欧美激情一区二区三区在线视频 | 亚洲福利视频免费观看| 国产又粗又猛视频免费| 欧美日韩在线第一页| 久久综合亚洲色hezyo国产| 17c精品麻豆一区二区免费| 欧美18—19性高清hd4k| 99精品国产99久久久久久白柏| 亚洲欧美手机在线| 99在线精品视频在线观看| 99久久99久久精品| 91精品亚洲| 亚洲第一精品区| 99re66热这里只有精品8| 亚洲成人午夜在线| 国产麻豆一区二区三区精品视频| 国内不卡一区二区三区| 国产精品丝袜在线播放| 国产区二精品视| 国产精品男女| 国产日产精品一区二区三区四区| 亚洲视频国产| 国产精品久久精品国产 | 久久91精品久久久久久秒播| 国产理论在线播放| 日韩电影免费一区| 亚洲最大综合网| 麻豆精品国产传媒mv男同| 日本 片 成人 在线| 麻豆精品一区二区| 四川一级毛毛片| 国产成a人亚洲| 男人网站在线观看| 91美女片黄在线观看| 中文字幕免费看| 国产欧美精品一区二区色综合| 五月天综合视频| 国产精品麻豆久久久| 99热这里只有精品4| 亚洲私人影院在线观看| 国产免费无码一区二区视频| 亚洲激情中文1区| 动漫精品一区一码二码三码四码| 亚洲成人综合视频| 日韩中文字幕在线观看视频| 91黄色激情网站| 97人妻人人澡人人爽人人精品| 日韩一级高清毛片| 五月天丁香视频| 国产一区二区免费| 久久五月精品| 国内精品久久久久久影视8| 一区二区精品伦理...| 国产成人精品一区二区| 日韩电影网站| 国产精品美女www| 精品一区二区三区中文字幕在线 | 久久露脸国语精品国产91| 黑人巨大精品欧美一区二区| 国产又粗又猛又黄视频| 这里只有精品免费| 午夜福利一区二区三区| 亚洲欧美激情精品一区二区| 色影院视频在线| 97视频人免费观看| 欧美一级在线| 韩日午夜在线资源一区二区| 精品福利久久久| 成人国产在线看| 日韩精品亚洲一区| 1314成人网| 国产午夜一区二区三区| 日韩视频中文字幕在线观看| 天涯成人国产亚洲精品一区av| 中文在线最新版天堂| 亚洲福利在线视频| 米奇精品一区二区三区| 国语自产偷拍精品视频偷 | 美国美女黄色片| 一区二区三区在线免费播放| 亚洲不卡在线视频| 日韩视频一区二区三区在线播放| 日韩电影免费| 欧美大奶子在线| 电影一区二区三区| www 成人av com| 三级电影一区| 国产第一页视频| 高清在线观看日韩| 黄色精品视频在线观看| 欧美日韩国产一区二区| 亚洲国产精品久久久久爰性色| 一本一道久久a久久精品逆3p | 九色国产在线观看| 国语自产在线不卡| 国产一区二区三区黄网站| 日韩欧美视频一区二区| 亚洲精品欧洲| 国产人妻精品午夜福利免费| 国产精品久久久久影院老司| 免费看一级视频| 精品亚洲一区二区三区在线观看| 在线中文免费视频| 国产日韩欧美黄色| 不卡中文字幕| 亚洲不卡视频在线| 久久看人人爽人人| 色播视频在线播放| 精品盗摄一区二区三区| 先锋成人av| 91久久极品少妇xxxxⅹ软件| 久久社区一区| 日韩一级免费片| 日本一二三不卡| 国产裸体美女永久免费无遮挡| 日韩成人av一区| h片在线观看视频免费| 国产精品v欧美精品v日韩精品| 欧美福利电影在线观看| 欧洲在线免费视频| 中文字幕亚洲综合久久菠萝蜜| 艳妇乳肉豪妇荡乳av无码福利 | 日韩一区精品视频| 亚洲精品乱码久久久久久不卡| 亚洲国产精品久久人人爱| 亚洲精品18p| 欧美精品videos| 豆花视频一区二区| 国产精品12345| 91网站在线播放| 少妇太紧太爽又黄又硬又爽| 精品视频久久久久久久| 天天免费亚洲黑人免费| 日本成人看片网址| 免费观看成人av| 女同久久另类69精品国产| 9191精品国产综合久久久久久 | 亚洲激情在线播放| 成 人 免费 黄 色| 97国产在线视频| 奇米色欧美一区二区三区| 国产aaaaa毛片| 日韩美女视频19| 亚洲男人天堂久久| 57pao成人国产永久免费| 国产区精品区| 波多野结衣免费观看| 亚洲国产精品欧美一二99| 日本福利在线观看| 国产日韩欧美自拍| 午夜精品视频| 久久久久亚洲av无码专区桃色| 在线观看亚洲精品| 2020国产在线视频| 精品999在线观看| 蜜臀va亚洲va欧美va天堂| 精品99久久久久成人网站免费| 亚洲福利在线播放| 国产成人精选| 波多野结衣av一区二区全免费观看| 成a人片亚洲日本久久| 亚洲婷婷久久综合| 欧美日韩国产91| 国产一区二区三区站长工具| 婷婷中文字幕在线观看| 天天色综合天天| 国产激情小视频在线| 精品国产免费人成电影在线观... 精品国产免费久久久久久尖叫 | 麻豆久久久久久久久久| 中文字幕亚洲无线码a| 伊人久久影院| 超碰在线97免费| 国产精品免费大片| 久久夜色精品国产亚洲aⅴ| 欧美高清hd| 国产情侣av自拍| 亚洲一区二区三区国产| 成人动漫在线播放| 国产精品一区在线播放| 麻豆成人综合网| 日本韩国欧美中文字幕| 九九热精品视频|