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

iBATIS的多對多映射配置淺析

開發(fā) 后端
iBATIS的多對多映射配置有什么需要注意的么?那么本文就通過實(shí)例的形式向你詳細(xì)介紹。

iBATIS的多對多映射配置方法和多對一映射配置方法差不多,不同的是,多對多映射,數(shù)據(jù)庫設(shè)計(jì)上需要一個(gè)記錄兩個(gè)類關(guān)系的中間表,本文以學(xué)生-老師為例,在iBATIS的sqlmap中配置多對多關(guān)系。

iBATIS的多對多映射配置1,建表。數(shù)據(jù)庫中三個(gè)表,分別為:

  1.  CREATE TABLE [student] (  
  2.  [id] [int] IDENTITY (1, 1) NOT NULL ,  
  3.  [name] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,  
  4.  [birthday] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,  
  5.  CONSTRAINT [PK_student] PRIMARY KEY  CLUSTERED   
  6.  (  
  7.   [id]  
  8.  )  ON [PRIMARY]   
  9. ON [PRIMARY]  
  10. GO  
  11. --------------------------------------------------  
  12. CREATE TABLE [teacher] (  
  13.  [id] [int] IDENTITY (1, 1) NOT NULL ,  
  14.  [name] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,  
  15.  [subject] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,  
  16.  CONSTRAINT [PK_teacher] PRIMARY KEY  CLUSTERED   
  17.  (  
  18.   [id]  
  19.  )  ON [PRIMARY]   
  20. ON [PRIMARY]  
  21. GO  
  22. ---------------------------------------------------  
  23. CREATE TABLE [student_teacher] (  
  24.  [studentid] [intNOT NULL ,  
  25.  [teacherid] [intNOT NULL ,  
  26.  CONSTRAINT [PK_student_teacher] PRIMARY KEY  CLUSTERED   
  27.  (  
  28.   [studentid],  
  29.   [teacherid]  
  30.  )  ON [PRIMARY]   
  31. ON [PRIMARY]  
  32. GO 

iBATIS的多對多映射配置2,準(zhǔn)備數(shù)據(jù)

  1. insert into student(name,birthday) values('張三','1982-01-01')  
  2. insert into student(name,birthday) values('李四','1983-02-02')  
  3. insert into student(name,birthday) values('王五','1984-03-03')  
  4.  
  5. insert into student(name,birthday) values('趙六','1985-04-04')  
  6. insert into teacher(name,subject) values('Jerry','語文')  
  7. insert into teacher(name,subject) values('Tom','數(shù)學(xué)')  
  8.  
  9. insert into teacher(name,subject) values('Steven','英語')  
  10. insert into student_teacher(studentid,teacherid) values(1,1)  
  11. insert into student_teacher(studentid,teacherid) values(1,2)  
  12. insert into student_teacher(studentid,teacherid) values(2,1)  
  13. insert into student_teacher(studentid,teacherid) values(3,2) 

iBATIS的多對多映射配置3,properties文件內(nèi)容如下:

  1. driver=com.microsoft.jdbc.sqlserver.SQLServerDriver  
  2.  url=jdbc:microsoft:sqlserver://localhost:1433;SelectMethod=cursor;DatabaseName=ibatistest  
  3.  username=sa  
  4.  password=000 

iBATIS的多對多映射配置4,總配置文件SqlMapConfig.xml內(nèi)容如下:

  1. ﹤?xml version="1.0" encoding="UTF-8" ?﹥  
  2. ﹤!DOCTYPE sqlMapConfig PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"  
  3.     "http://ibatis.apache.org/dtd/sql-map-config-2.dtd"﹥  
  4.  
  5. ﹤sqlMapConfig﹥  
  6.  
  7.  ﹤properties resource="com/lsm/cfg/jdbc.properties" /﹥  
  8.  ﹤transactionManager type="JDBC"﹥  
  9.   ﹤dataSource type="SIMPLE"﹥  
  10.    ﹤property value="${driver}" name="JDBC.Driver" /﹥  
  11.    ﹤property value="${url}" name="JDBC.ConnectionURL" /﹥  
  12.    ﹤property value="${username}" name="JDBC.Username" /﹥  
  13.    ﹤property value="${password}" name="JDBC.Password" /﹥  
  14.   ﹤/dataSource﹥  
  15.  ﹤/transactionManager﹥  
  16.  ﹤sqlMap resource="com/lsm/domain/Student.xml" /﹥  
  17.  ﹤sqlMap resource="com/lsm/domain/Teacher.xml" /﹥  
  18.  
  19. ﹤/sqlMapConfig﹥ 

iBATIS的多對多映射配置5,domain對象兩個(gè),Student 和 Teacher,如下:

Teacher.java

  1. package com.lsm.domain;  
  2. import java.util.List;  
  3. public class Teacher  
  4. {  
  5.  private int id;  
  6.  private String name;  
  7.  private String subject;  
  8.  private List students; //注意這里有個(gè)List類型的students,表示一個(gè)老師對應(yīng)多個(gè)學(xué)生  
  9.    
  10.  public List getStudents()  
  11.  {  
  12.   return students;  
  13.  }  
  14.  public void setStudents(List students)  
  15.  {  
  16.   this.students = students;  
  17.  }  
  18.  //省略掉其他的getter and setter  
  19. }  
  20.  
  21. //Student.java  
  22. package com.lsm.domain;  
  23.  
  24. import java.util.List;  
  25.  
  26. public class Student  
  27. {  
  28.  private int id;  
  29.  private String name;  
  30.  private String birthday;  
  31.  private List teachers; //這里有一個(gè)list類型的teachers,表示一個(gè)學(xué)生有多個(gè)老師  
  32.    
  33.  public List getTeachers()  
  34.  {  
  35.   return teachers;  
  36.  }  
  37.  public void setTeachers(List teachers)  
  38.  {  
  39.   this.teachers = teachers;  
  40.  }  
  41.  //省略掉其他的getter and setter  

iBATIS的多對多映射配置6,sqlmap配置文件

Teacher.xml

  1. ﹤?xml version="1.0" encoding="UTF-8" ?﹥  
  2. !DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"     
  3.    "http://ibatis.apache.org/dtd/sql-map-2.dtd"﹥  
  4.      
  5.    ﹤sqlMap namespace="teacher"﹥  
  6.        ﹤typeAlias alias="Teacher" type="com.lsm.domain.Teacher" /﹥  
  7.  ﹤typeAlias alias="Student" type="com.lsm.domain.Student" /﹥  
  8.    
  9.  ﹤resultMap class="Teacher" id="teacherBasicResultMap"﹥  
  10.   ﹤result property="id" column="id"/﹥  
  11.   ﹤result property="name" column="name"/﹥  
  12.   ﹤result property="subject" column="subject"/﹥  
  13.  ﹤/resultMap﹥  
  14.  ﹤!-- 下面這個(gè)resultMap中有個(gè)students屬性,這個(gè)結(jié)果映射繼承自上面的結(jié)果映射  
  15.   由于有了繼承,結(jié)果映射可以任意擴(kuò)展--﹥  
  16.  ﹤resultMap class="Teacher" id="teacherWithTeacherResultMap" extends="teacherBasicResultMap"﹥  
  17.   ﹤result property="students" column="id" select="getStudentsByTeacherId"/﹥  
  18.  ﹤/resultMap﹥  
  19.  ﹤!-- 這個(gè)查詢中使用到了上面定義的結(jié)果映射,從而決定了查詢出來的Teacher中關(guān)聯(lián)出相關(guān)的students,在student.xml中配置相似,不再注釋。--﹥  
  20.  ﹤select id="getTeachers" resultMap="teacherWithTeacherResultMap"﹥  
  21.   ﹤!--[CDATA[  
  22.    select * from teacher  
  23.   ]]﹥  
  24.  ﹤/select﹥  
  25.    
  26.  ﹤select id="getStudentsByTeacherId" resultClass="Student"﹥  
  27.   ﹤![CDATA[   
  28.    select s.* from student s,student_teacher st where s.id=st.studentid and st.teacherid=#value#   ]]--﹥  
  29.  ﹤/select﹥  
  30.          
  31.    ﹤/sqlMap﹥  
  32.  
  33. tudent.xml  
  34.  
  35. ﹤?xml version="1.0" encoding="UTF-8" ?﹥  
  36. !DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"     
  37.    "http://ibatis.apache.org/dtd/sql-map-2.dtd"﹥  
  38.      
  39.    ﹤sqlMap namespace="student"﹥  
  40.        ﹤typeAlias alias="Student" type="com.lsm.domain.Student" /﹥  
  41.  ﹤typeAlias alias="Teacher" type="com.lsm.domain.Teacher" /﹥  
  42.    
  43.  ﹤resultMap class="Student" id="studentBasicResultMap"﹥  
  44.   ﹤result property="id" column="id"/﹥  
  45.   ﹤result property="name" column="name"/﹥  
  46.   ﹤result property="birthday" column="birthday"/﹥  
  47.  ﹤/resultMap﹥  
  48.    
  49.  ﹤resultMap class="Student" id="studentWithTeacherResultMap" extends="studentBasicResultMap"﹥  
  50.   ﹤result property="teachers" column="id" select="getTeachersByStudentId"/﹥  
  51.  ﹤/resultMap﹥  
  52.    
  53.  ﹤select id="getStudents" resultMap="studentWithTeacherResultMap"﹥  
  54.   ﹤!--[CDATA[  
  55.    select * from student  
  56.   ]]﹥  
  57.  ﹤/select﹥  
  58.    
  59.  ﹤select id="getTeachersByStudentId" resultClass="Teacher"﹥  
  60.   ﹤![CDATA[   
  61.    select t.* from teacher t,student_teacher st where t.id=st.teacherid and st.studentid=#value#   ]]--﹥  
  62.  ﹤/select﹥  
  63.          
  64.    ﹤/sqlMap﹥ 

iBATIS的多對多映射配置7,測試

  1.  package com.lsm.test;  
  2.  
  3. import java.io.Reader;  
  4. import java.sql.SQLException;  
  5. import java.util.List;  
  6. import com.ibatis.common.resources.Resources;  
  7. import com.ibatis.sqlmap.client.SqlMapClient;  
  8. import com.ibatis.sqlmap.client.SqlMapClientBuilder;  
  9. import com.lsm.domain.Student;  
  10. import com.lsm.domain.Teacher;  
  11.  
  12. public class Many2Many  
  13. {  
  14.  
  15.  private static SqlMapClient sqlMapClient = null;  
  16.  static 
  17.  {  
  18.   try 
  19.   {  
  20.    Reader reader = Resources.getResourceAsReader("com/lsm/cfg/SqlMapConfig.xml");  
  21.    sqlMapClient = SqlMapClientBuilder.buildSqlMapClient(reader);  
  22.   }  
  23.   catch(Exception e)  
  24.   {  
  25.    e.printStackTrace();  
  26.   }  
  27.  }  
  28.  /**  
  29.   * @param args  
  30.   */ 
  31.  public static void main(String[] args)  
  32.  {  
  33.   Many2Many m2m = new Many2Many();  
  34.   List studentlist = null;  
  35.   studentlist = m2m.getStudentInfo();  
  36.   for(int i=0;i﹤studentlist.size();i++)  
  37.   {  
  38.    Student s = new Student();  
  39.    s = (Student) studentlist.get(i);  
  40.    System.out.println("name:"+s.getName() + "\t" + "birthday:"+s.getBirthday());  
  41.    List tlist = s.getTeachers();  
  42.    if(tlist!=null)  
  43.    {  
  44.     System.out.println("his teachers as follows:");  
  45.     {  
  46.      for(int ti=0;ti﹤tlist.size();ti++)  
  47.      {  
  48.       Teacher t = new Teacher();  
  49.       t = (Teacher) tlist.get(ti);  
  50.       System.out.println("teacher name:" + t.getName());  
  51.      }  
  52.     }  
  53.    }  
  54.   }  
  55.     
  56.   List teacherlist = null;  
  57.   teacherlist = m2m.getTeacherInfo();  
  58.   for(int i=0;i﹤teacherlist.size();i++)  
  59.   {  
  60.    Teacher t = new Teacher();  
  61.    t = (Teacher) teacherlist.get(i);  
  62.    System.out.println("name:"+t.getName() + "\t" + "subject:" + t.getSubject());  
  63.    List slist = t.getStudents();  
  64.    if(slist!=null)  
  65.    {  
  66.     System.out.println("his students as follows:");  
  67.     for(int si=0;si﹤slist.size();si++)  
  68.     {  
  69.      Student s = new Student();  
  70.      s = (Student) slist.get(si);  
  71.      System.out.println("student name:"+s.getName());  
  72.     }  
  73.    }  
  74.   }  
  75.  }  
  76.    
  77.  // 獲取學(xué)生信息  
  78.  public List getStudentInfo()  
  79.  {  
  80.   List studentList = null;  
  81.   try 
  82.   {  
  83.    System.out.println("學(xué)生信息如下:");  
  84.    studentList = sqlMapClient.queryForList("getStudents");  
  85.   }  
  86.   catch (SQLException e)  
  87.   {  
  88.    e.printStackTrace();  
  89.   }  
  90.   return studentList;  
  91.  }  
  92.    
  93.  // 獲取老師信息  
  94. //  獲取學(xué)生信息  
  95.  public List getTeacherInfo()  
  96.  {  
  97.   List studentList = null;  
  98.   try 
  99.   {  
  100.    System.out.println("老師信息如下:");  
  101.    studentList = sqlMapClient.queryForList("getTeachers");  
  102.   }  
  103.   catch (SQLException e)  
  104.   {  
  105.    e.printStackTrace();  
  106.   }  
  107.   return studentList;  
  108.  }  
  109.  
  110. }  
  111.  

8,輸出

  1. 學(xué)生信息如下:  
  2. name:張三 birthday:1982-01-01  
  3. his teachers as follows:  
  4. teacher name:Jerry  
  5. teacher name:Tom  
  6. name:李四 birthday:1983-02-02  
  7. his teachers as follows:  
  8. teacher name:Jerry  
  9. name:王五 birthday:1984-03-03  
  10. his teachers as follows:  
  11. teacher name:Tom  
  12. name:趙六 birthday:1985-04-04  
  13. his teachers as follows:  
  14. 老師信息如下:  
  15. name:Jerry subject:語文  
  16. his students as follows:  
  17. student name:張三  
  18. student name:李四  
  19. name:Tom subject:數(shù)學(xué)  
  20. his students as follows:  
  21. student name:張三  
  22. student name:王五  
  23. name:Steven subject:英語  
  24. his students as follows: 

查詢學(xué)生時(shí)帶出老師信息,查詢老師時(shí)帶出學(xué)生信息,說明多對多映射成功。

iBATIS的多對多映射配置的情況就向你介紹到這里,希望對你有所幫助。

【編輯推薦】

  1. iBATIS教程之如何獲得output參數(shù)值
  2. iBATIS.NET處理多參數(shù)的SQL語句的配置
  3. iBATIS.NET與VS 2005進(jìn)行單元測試淺析
  4. iBATIS.NET執(zhí)行存儲(chǔ)過程實(shí)例詳解
  5. iBATIS一對多映射解析
責(zé)任編輯:仲衡 來源: CSDN博客
相關(guān)推薦

2009-07-21 17:31:39

iBATIS一對多映射

2009-07-15 17:58:07

iBATIS 動(dòng)態(tài)映射

2009-07-21 11:12:00

iBATIS配置

2009-06-18 14:22:06

Hibernate多對Hibernate

2009-06-11 09:35:47

GlassFish配置多機(jī)集群

2009-07-22 09:44:05

iBATIS Para

2009-07-22 15:01:01

iBATIS SQLM

2009-06-24 15:53:08

Entity Bean多對多映射

2009-07-21 11:17:46

iBATISDAO的配置

2009-07-21 16:17:28

iBATIS.NET

2009-07-17 16:49:18

iBATIS XML配

2009-07-22 16:27:24

iBATIS配置類iBATIS操作類

2009-06-04 16:14:22

Hibernate一對Hibernate一對Hibernate多對

2009-07-20 13:47:08

iBATIS.NET字

2023-05-28 23:26:16

多模態(tài)機(jī)器學(xué)習(xí)大腦

2009-07-17 10:59:59

iBATIS接口

2022-01-12 11:55:43

Kubernetes多集群Linux

2009-07-17 10:32:45

iBATIS MapB

2009-07-15 17:19:31

iBATIS Ecli

2009-07-20 18:00:16

iBATIS DAO事
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

日韩国产成人无码av毛片| 国产精品久久久av久久久| 黄色激情在线观看| www.com.cn成人| 中文字幕巨乱亚洲| 91精品国产99久久久久久红楼| 精品无码一区二区三区电影桃花| 亚洲制服一区| 91精品国产色综合久久| 国产妇女馒头高清泬20p多| 国产区av在线| 国产成人在线视频免费播放| 91福利视频网| 97在线观看视频免费| 成人性生交大片免费看96| 在线精品亚洲一区二区不卡| 久久人妻无码一区二区| 美女做暖暖视频免费在线观看全部网址91 | 韩国成人动漫在线观看| 中文字幕a级片| 伊人久久亚洲热| 中文字幕久热精品在线视频| 国产黑丝一区二区| 免费观看亚洲天堂| 色婷婷激情一区二区三区| 日本福利视频网站| 日韩伦理在线电影| 久久久久99精品国产片| 国产日韩精品久久| 国产三级自拍视频| 男女男精品视频| 91精品国产91久久久久| 欧美成人一二三区| 国产韩日影视精品| 亚洲午夜av电影| 中文字幕在线永久| 日韩成人视屏| 91精品欧美福利在线观看| 亚洲色图38p| 亚洲黄色免费av| 亚洲高清不卡在线| 狠狠干视频网站| 免费a在线看| 中文在线一区二区| 日本一区高清不卡| 精品久久久久一区二区三区| 91在线视频在线| 国产精品国产亚洲精品看不卡15| 国产高清免费av| 九九视频精品免费| 国产情人节一区| 日韩xxx视频| 日韩国产在线观看| 国产精品草莓在线免费观看| 国产又黄又猛又粗又爽| 亚洲一区日韩| 欧美做受高潮电影o| 国产一区二区99| 在线精品亚洲| 午夜免费日韩视频| 日韩 欧美 综合| 国产一区二区你懂的| 8090成年在线看片午夜| 国产免费av一区| 久久一二三四| 国产精品美女网站| 国产精品欧美激情在线| 国产在线观看一区二区| 99九九视频| 免费看日韩av| 91视频com| 日韩精品电影网站| 免费在线观看av网站| 亚洲欧美日韩在线| 日韩视频免费播放| 国产综合色区在线观看| 欧美精品久久99久久在免费线 | 奇米影视第四色777| 一道本一区二区| 国产精品高潮粉嫩av| 怡春院在线视频| 国产传媒久久文化传媒| 国产日韩精品推荐| 国产精品四虎| 亚洲色图制服丝袜| 日本一级黄视频| 自拍视频在线看| 欧美日韩国产高清一区二区三区| 一级片黄色免费| 国产精品久av福利在线观看| 亚洲美女久久久| 疯狂撞击丝袜人妻| 99riav国产精品| 国产视频999| 免费观看毛片网站| 中文字幕av不卡| 免费看毛片的网址| 欧美伊人亚洲伊人色综合动图| 日韩欧美不卡在线观看视频| 公侵犯人妻一区二区三区| 久久伦理在线| 欧美亚洲国产成人精品| 91 中文字幕| 99久久国产综合精品女不卡| 亚洲欧洲日本国产| 日本黄色免费在线| 欧美一区国产二区| 播金莲一级淫片aaaaaaa| 一个色综合网| 国产成人亚洲精品| 黄色一级a毛片| 国产精品福利一区| 日本精品免费在线观看| 欧美专区一区| 日韩在线观看网站| 国产亚洲欧美在线精品| 高清久久久久久| 一区二区在线高清视频| 亚洲最大网站| 精品欧美黑人一区二区三区| 三级黄色片在线观看| 国产欧美午夜| 都市激情久久久久久久久久久| 在线观看h片| 色综合天天视频在线观看 | 99国产精品久久久久久久久久 | 欧美精三区欧美精三区| 不卡一区二区在线观看| 国产一区视频在线观看免费| 极品美女销魂一区二区三区| 欧美一区三区四区| 亚洲区自拍偷拍| 亚洲久久一区二区| 97欧洲一区二区精品免费| 午夜在线小视频| 日本福利一区二区| 蜜臀av一区二区三区有限公司| 欧美日韩伊人| 91天堂在线视频| 欧美18hd| 欧美少妇bbb| 亚洲色图 激情小说| 久久精品主播| 明星裸体视频一区二区| 日韩欧美精品一区二区三区| 亚洲黄色有码视频| 日韩精品人妻中文字幕| 福利一区福利二区| 久久久久久久9| 一区二区三区高清在线观看| 欧美成人免费小视频| 国产老妇伦国产熟女老妇视频| 中文一区在线播放| 簧片在线免费看| 日韩国产欧美一区二区| 国产国产精品人在线视| 触手亚洲一区二区三区| 欧亚洲嫩模精品一区三区| 亚洲精品成人av久久| 卡一卡二国产精品| 一本色道久久综合亚洲二区三区| 四虎国产精品成人免费影视| 日韩在线观看精品| 国产精品久久婷婷| 亚洲精品v日韩精品| 岛国精品一区二区三区| 国产精品大片免费观看| 狠狠色狠狠色综合人人| 亚洲男人av| 在线亚洲国产精品网| 在线观看毛片av| 日韩一区在线免费观看| 中文在线字幕观看| 国产精品美女久久久| 日韩精品一区二区三区外面 | 尤物网站在线观看| 鲁大师影院一区二区三区| 欧美一进一出视频| 啪啪av大全导航福利综合导航| 欧美成人免费va影院高清| 欧美一区二区三区激情| 色老汉av一区二区三区| 999福利视频| 粉嫩av一区二区三区粉嫩| 免费成人在线视频网站| 精品国产乱码久久久久久蜜坠欲下 | 久久爱.com| 欧美极品少妇全裸体| 可以在线观看的av网站| 7777精品伊人久久久大香线蕉最新版| 青青草在线观看视频| 99riav久久精品riav| 97超碰成人在线| 99精品视频免费| 亚洲人久久久| 免费观看成人www动漫视频| 国产精品久久久久久久久粉嫩av| 在线观看h网| 亚洲欧美色婷婷| 国产美女永久免费| 91精品福利在线| 久草视频免费在线播放| 亚洲开心激情网| 自拍偷拍21p| 欧美午夜不卡| 日本高清久久一区二区三区| 99tv成人影院| 欧美重口另类videos人妖| 欧美性猛交xxx乱大交3蜜桃| 亚洲韩国青草视频| 亚洲图片欧美在线| 色综合天天综合网天天看片| 岛国毛片在线观看| 国产日韩欧美高清在线| 丰满少妇xbxb毛片日本| 麻豆国产91在线播放| 大陆极品少妇内射aaaaa| 久久资源中文字幕| 免费在线观看一区二区| 中文字幕久久精品一区二区| 国产精品高清免费在线观看| 不卡av免费观看| www.欧美免费| 国产黄在线看| 精品中文视频在线| 六月婷婷综合网| 91精品国产手机| 中文字幕日本人妻久久久免费| 天天色图综合网| 久久r这里只有精品| 中文字幕永久在线不卡| 亚洲精品国产91| 91麻豆免费视频| 精品人妻一区二区免费| 国产酒店精品激情| 999久久久精品视频| 男人操女人的视频在线观看欧美| 欧美 国产 日本| aa国产精品| 人妻少妇精品无码专区二区| 欧美日韩亚洲一区三区| 热久久最新网址| 亚洲二区三区不卡| 麻豆中文字幕在线观看| 日韩精品二区| 亚洲国产一区二区精品视频| 精品久久久亚洲| 欧美少妇一区| 精品久久电影| 日韩一区二区电影在线观看| 精品国产乱码久久久久久果冻传媒| 欧美日本国产精品| 久久不见久久见国语| 欧美在线视频一区二区三区| 狠狠做深爱婷婷综合一区| 日韩亚洲视频在线| 色爱综合网欧美| 丰满女人性猛交| 在线中文一区| 成人在线视频一区二区三区| 欧美日韩1080p| 成年人网站国产| 9久re热视频在线精品| 精品人妻一区二区三区四区在线 | 亚洲国产精品免费视频| 51午夜精品| 97青娱国产盛宴精品视频| 国产伦精品一区二区三区| 久久精品国产亚洲blacked| 久久精品第九区免费观看| 伊人成综合网伊人222| 日韩久久久久久久| 91成人免费| 久久99久久久久久| 免费在线成人| 天天干天天操天天玩| 国产精品一级片| 中国免费黄色片| 久久精品视频免费| 多男操一女视频| 亚洲国产精品尤物yw在线观看| www.av麻豆| 欧美日韩专区在线| 性做久久久久久久久久| 日韩成人激情在线| jzzjzzjzz亚洲成熟少妇| 九九九热精品免费视频观看网站| www在线观看黄色| 国产精品美女久久久久久免费| 精品成人18| 久久亚洲高清| 99久久99久久精品国产片桃花| 天堂8在线天堂资源bt| 可以看av的网站久久看| 91丨porny丨九色| 91一区二区三区在线观看| 青青操在线播放| 亚洲6080在线| 亚洲天堂999| 亚洲国模精品私拍| 欧美性天天影视| 日本高清+成人网在线观看| 嫩呦国产一区二区三区av| 久久久7777| 韩国亚洲精品| 网站一区二区三区| av中文字幕不卡| 亚洲精品久久久久久国| 日韩欧美999| 不卡视频免费在线观看| 中文字幕v亚洲ⅴv天堂| 国产精品25p| 成人免费网站在线看| 精品99在线| 国产午夜福利在线播放| 国产乱一区二区| 日本欧美一区二区三区不卡视频| 亚洲福利视频一区| 国产日韩在线观看一区| 国产午夜精品一区理论片飘花 | 午夜精品久久久久久久久| 97在线视频人妻无码| 亚洲天堂av女优| 成人黄色动漫| 成人免费看片网站| 自拍视频亚洲| 玖玖爱视频在线| 亚洲国产精品成人综合| 99久久精品国产亚洲| 亚洲国产日韩欧美在线99| 婷婷免费在线视频| 国产精品美女主播在线观看纯欲| 亚洲视频分类| 欧美成人一区二区在线观看| 成人免费毛片高清视频| 久久网免费视频| 欧美一级欧美三级在线观看| 日本精品在线| 国产精品永久免费在线| 欧美三级情趣内衣| 亚洲精品高清无码视频| 国产亚洲女人久久久久毛片| 欧产日产国产69| 精品一区二区电影| 自拍视频在线看| 麻豆精品蜜桃一区二区三区| 国产精品久久久免费| 亚洲AV无码国产精品| 欧美丝袜一区二区三区| 亚洲色偷精品一区二区三区| 国内精品一区二区三区| 精品按摩偷拍| 日韩精品视频久久| 久久免费视频色| 中文字幕 国产| 三级精品视频久久久久| 999精品嫩草久久久久久99| 黄色网址在线免费看| 国产大陆a不卡| 精品无码久久久久久久| 亚洲成色777777女色窝| 丝袜老师在线| 日韩精品最新在线观看| 久久精品国产久精国产爱| 国产成人无码aa精品一区| 精品国产一区二区三区久久影院| 牛牛在线精品视频| 久久精品magnetxturnbtih| 视频一区视频二区中文字幕| 婷婷国产成人精品视频| 日韩午夜激情视频| 成年人黄色大片在线| 欧美综合77777色婷婷| 日本欧美韩国一区三区| 男女做暖暖视频| 亚洲激情视频网站| 免费污视频在线一区| 手机福利在线视频| 成人av电影免费在线播放| 日日噜噜噜噜人人爽亚洲精品| 中文字幕欧美日韩| 2020最新国产精品| 免费黄色特级片| 亚洲欧美乱综合| 亚洲AV成人无码一二三区在线| 国产精品久久久久77777| 欧美精品导航| 久久丫精品国产亚洲av不卡| 欧美视频一区二| 色噜噜狠狠狠综合欧洲色8| 久久久久久久久一区二区| 免费观看日韩av| 久久精品免费在线| 在线播放精品一区二区三区| 日韩欧美另类中文字幕| 成年网站在线免费观看| 亚洲黄色片在线观看| 免费人成在线观看网站| 亚洲在线观看视频| 久久精品伊人|