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

細(xì)數(shù) SpringBoot 中的連接池

開發(fā) 前端
Druid連接池在性能、監(jiān)控、診斷、安全、擴(kuò)展性這些方面遠(yuǎn)遠(yuǎn)超出競品

[[313801]]

 這是Java極客技術(shù)的第312篇原創(chuàng)文章

hello~各位讀者新年好,我是鴨血粉絲(大家會(huì)親切的喊我「阿粉」),是一位喜歡吃鴨血粉絲的程序員!

回想起前幾天在部署springboot項(xiàng)目到正線時(shí),線上環(huán)境要求jdk7,可項(xiàng)目是基于jdk8開發(fā)的,springboot也是用的springboot2以上的版本,可以說縫縫補(bǔ)補(bǔ)一整天才搞好能滿足線上環(huán)境的代碼,搞完后當(dāng)然需要小小的了解一下背后的秘密。

好了,話不多說,我們直接進(jìn)入正題。

其實(shí)切換還不算太麻煩,坑就坑在SpringBoot2切換到SpringBoot1后,默認(rèn)使用的連接池發(fā)生了變化,之前做的壓力測試又重新搞了一遍

 

怨天尤人貌似消極了哈,阿粉我可是一個(gè)正能量滿滿的人,所以總結(jié)下自己就是:雖然會(huì)用,但是沒了解技術(shù)背后的真相而鬧出的烏龍。

 

接下里我們就一起來檢驗(yàn)下SpringBoot2和SpringBoot1使用的默認(rèn)數(shù)據(jù)源吧!

一、SpringBoot2的HikariCP首先在pom文件中需要引入的依賴包:

  1. <parent> 
  2.         <groupId>org.springframework.boot</groupId> 
  3.         <artifactId>spring-boot-starter-parent</artifactId> 
  4.         <version>2.0.4.RELEASE</version> 
  5.     </parent> 
  6.  
  7.     <properties> 
  8.         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
  9.         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> 
  10.         <java.version>1.8</java.version> 
  11.         <mybatis.spring.boot.version>1.3.1</mybatis.spring.boot.version> 
  12.     </properties> 
  13.  
  14.     <dependencies> 
  15.         <dependency> 
  16.             <groupId>org.springframework.boot</groupId> 
  17.             <artifactId>spring-boot-starter</artifactId> 
  18.         </dependency> 
  19.         <dependency> 
  20.             <groupId>org.springframework.boot</groupId> 
  21.             <artifactId>spring-boot-starter-web</artifactId> 
  22.         </dependency> 
  23.         <dependency> 
  24.             <groupId>mysql</groupId> 
  25.             <artifactId>mysql-connector-java</artifactId> 
  26.         </dependency> 
  27.         <dependency> 
  28.             <groupId>org.mybatis.spring.boot</groupId> 
  29.             <artifactId>mybatis-spring-boot-starter</artifactId> 
  30.             <version>${mybatis.spring.boot.version}</version> 
  31.         </dependency> 
  32.         <dependency> 
  33.             <groupId>org.projectlombok</groupId> 
  34.             <artifactId>lombok</artifactId> 
  35.         </dependency> 
  36.  
  37.     </dependencies> 

其次在配置文件中需要定義如下屬性(不定義時(shí)會(huì)自動(dòng)使用默認(rèn)值)

  1. # spring的相關(guān)配置 
  2. spring: 
  3.   application: 
  4.     name: HikariCP測試 
  5.   # 數(shù)據(jù)源的配置 
  6.   datasource: 
  7.     # 連接池的配置 
  8.     type: com.zaxxer.hikari.HikariDataSource 
  9.     hikari: 
  10.       minimum-idle: 5 
  11.       maximum-pool-size: 15 
  12.       connection-test-query: SELECT 1 
  13.       max-lifetime: 1800000 
  14.       connection-timeout: 30000 
  15.       pool-name: DatebookHikariCP 

配置好后,啟動(dòng)成功時(shí)你能看到類似這樣子的打印信息:

  1. 2020-01-16 16:23:12.911  INFO 9996 --- [ main ] o.s.j.e.a.AnnotationMBeanExporter        : Registering beans for JMX exposure on startup 
  2. 2020-01-16 16:23:12.913  INFO 9996 --- [ main ] o.s.j.e.a.AnnotationMBeanExporter        : Bean with name 'dataSource' has been autodetected for JMX exposure 
  3. 2020-01-16 16:23:12.924  INFO 9996 --- [ main ] o.s.j.e.a.AnnotationMBeanExporter        : Located MBean 'dataSource': registering with JMX server as MBean [com.zaxxer.hikari:name=dataSource,type=HikariDataSource] 
  4. 2020-01-16 16:23:12.994  INFO 9996 --- [ main ] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 18001 (http) with context path '' 
  5. 2020-01-16 16:23:13.002  INFO 9996 --- [ main ] c.j.mmzsblog.DatasourceTestApplication   : Started DatasourceTestApplication in 6.724 seconds (JVM running for 8.883) 

其中第3行[com.zaxxer.hikari:name=dataSource,type=HikariDataSource]這部分就點(diǎn)明了使用的連接池類型

二、SpringBoot1的tomcat-jdbc降低版本后,我沒有看到上面的信息打印,一時(shí)差點(diǎn)不知道使用了什么連接池,不過網(wǎng)上都說是tomcat-jdbc;但是相信眼見為實(shí)的我,肯定要在哪里打印一下才放心,于是乎,我進(jìn)行了如下操作:

搞了一個(gè)controller來簡單的打印一下連接池的信息

  1. @RestController 
  2. public class testController { 
  3.  
  4.     @Resource 
  5.     private DataSource dataSource; 
  6.  
  7.     @GetMapping("/query"
  8.     public void query(){ 
  9.         System.out.println("查詢到的數(shù)據(jù)源連接池信息是:"+dataSource); 
  10.         System.out.println("查詢到的數(shù)據(jù)源連接池類型是:"+dataSource.getClass()); 
  11.         System.out.println("查詢到的數(shù)據(jù)源連接池名字是:"+dataSource.getPoolProperties().getName()); 
  12.     } 

 

然后我就看到了如下的打印信息,果真是用的tomcat-jdbc

 

  1. 查詢到的數(shù)據(jù)源連接池信息是:org.apache.tomcat.jdbc.pool.DataSource@181d8899{ConnectionPool[defaultAutoCommit=null; defaultReadOnly=null; defaultTransactionIsolation=-1; defaultCatalog=null; driverClassName=com.mysql.jdbc.Driver; maxActive=100; maxIdle=100; minIdle=10; initialSize=10; maxWait=30000; testOnBorrow=true; testOnReturn=false; timeBetweenEvictionRunsMillis=5000; numTestsPerEvictionRun=0; minEvictableIdleTimeMillis=60000; testWhileIdle=false; testOnConnect=falsepassword=********; url=jdbc:mysql://localhost:3306/xxxxxx; username=xxxx; validationQuery=SELECT 1; validationQueryTimeout=-1; validatorClassName=null; validationInterval=3000; accessToUnderlyingConnectionAllowed=true; removeAbandoned=false; removeAbandonedTimeout=60; logAbandoned=false; connectionProperties=null; initSQL=null; jdbcInterceptors=null; jmxEnabled=true; fairQueue=true; useEquals=true; abandonWhenPercentageFull=0; maxAge=0; useLock=false; dataSource=null; dataSourceJNDI=null; suspectTimeout=0; alternateUsernameAllowed=false; commitOnReturn=false; rollbackOnReturn=false; useDisposableConnectionFacade=true; logValidationErrors=false; propagateInterruptState=false; ignoreExceptionOnPreLoad=false; useStatementFacade=true; } 
  2. 查詢到的數(shù)據(jù)源連接池類型是:class org.apache.tomcat.jdbc.pool.DataSource 
  3. 查詢到的數(shù)據(jù)源連接池名字是:Tomcat Connection Pool[1-1715657818] 

其實(shí),我們從pom文件也能看出其中的門道:

  1. <dependency> 
  2.        <groupId>org.springframework.boot</groupId> 
  3.        <artifactId>spring-boot-starter-jdbc</artifactId> 
  4.    </dependency> 

依賴文件中的這一個(gè)依賴其實(shí)就是表明了SpringBoot1使用的是tomcat-jdbc連接池。

哎,現(xiàn)在才知道SpringBoot2.0和SpringBoot1.0版本使用的默認(rèn)數(shù)據(jù)庫是不一樣的。

現(xiàn)在原因是找到了,可是如何解決呢?要不然把SpringBoot1版本的默認(rèn)連接池修改成和SpringBoot2版本的一樣。好,有了想法,那就開干。

 

 

 

[[313802]]

 

其實(shí),在SpringBoot1的版本也是可以使用HikariCP連接池的,操作就是:

首先引入默認(rèn)配置的數(shù)據(jù)源處排除掉tomcat-jdbc

  1. <!--配置默認(rèn)數(shù)據(jù)源 --> 
  2.         <dependency> 
  3.             <groupId>org.springframework.boot</groupId> 
  4.             <artifactId>spring-boot-starter-jdbc</artifactId> 
  5.             <exclusions> 
  6.                 <!-- 排除默認(rèn)的tomcat-jdbc數(shù)據(jù)源 --> 
  7.                 <exclusion> 
  8.                     <groupId>org.apache</groupId> 
  9.                     <artifactId>tomcat-jdbc</artifactId> 
  10.                 </exclusion> 
  11.             </exclusions> 
  12.         </dependency> 
  13.         <!-- 引用SpringBoot2默認(rèn)的HikariCP數(shù)據(jù)源 --> 
  14.         <dependency> 
  15.             <groupId>com.zaxxer</groupId> 
  16.             <artifactId>HikariCP</artifactId> 
  17.             <version>3.3.1</version> 
  18.         </dependency> 

再在.yml文件中配置HikariCP數(shù)據(jù)源的相關(guān)信息

  1. # spring的相關(guān)配置 
  2. spring: 
  3.   # 數(shù)據(jù)源的配置 
  4.   datasource: 
  5.     # 連接池的配置 
  6.     type: com.zaxxer.hikari.HikariDataSource 
  7.     hikari: 
  8.       minimum-idle: 5 
  9.       maximum-pool-size: 15 
  10.       connection-test-query: SELECT 1 
  11.       max-lifetime: 1800000 
  12.       connection-timeout: 30000 

 

為什么說我此處要將數(shù)據(jù)源切換成SpringBoot2.0使用的默認(rèn)數(shù)據(jù)源呢?因?yàn)槭褂肧pringBoot1.0的tomcat-jdbc數(shù)據(jù)源我怕壓力測試出來達(dá)不到要求,為了不給測試增加工作壓力(阿粉我就是這么好的一個(gè)人)

 

所以我進(jìn)行了上面的替換操作。

 

不過這樣做肯定也是有好處的。好處就在于HikariCP那迷人的優(yōu)勢:

1、字節(jié)碼級(jí)別優(yōu)化(很多方法通過JavaAssist生成)

2、大量小改進(jìn)

用FastStatementList代替ArrayList

無鎖集合ConcurrentBag

代理類的優(yōu)化(比如:,用invokestatic代替invokevirtual)

正如官網(wǎng)的這個(gè)對(duì)比圖顯示的一樣:它更快

 

 

 

 

其實(shí)話又說回來,要是我一開始就是用第三方數(shù)據(jù)庫,豈不是就不存在這些自己搞出來的幺蛾子了!

 

 

 

[[313803]]

 

比如阿里巴巴的Druid連接池不就是個(gè)優(yōu)秀的產(chǎn)品么!它到底有多優(yōu)秀呢?你先看它的使用:

三、其它連接池(如:Druid)3.1、SpringBoot1.0中引用Druid

和前文的SpringBoot1.0中引用HikariCP一樣,先排除默認(rèn)數(shù)據(jù)源tomcat-jdbc再引用想要使用的連接池

3.1.1、首先引入默認(rèn)配置的數(shù)據(jù)源處排除掉tomcat-jdbc

  1. <!--配置默認(rèn)數(shù)據(jù)源 --> 
  2.         <dependency> 
  3.             <groupId>org.springframework.boot</groupId> 
  4.             <artifactId>spring-boot-starter-jdbc</artifactId> 
  5.             <exclusions> 
  6.                 <!-- 排除默認(rèn)的tomcat-jdbc數(shù)據(jù)源 --> 
  7.                 <exclusion> 
  8.                     <groupId>org.apache</groupId> 
  9.                     <artifactId>tomcat-jdbc</artifactId> 
  10.                 </exclusion> 
  11.             </exclusions> 
  12.         </dependency> 
  13.         <!-- 引用阿里巴巴的druid數(shù)據(jù)源 --> 
  14.         <dependency> 
  15.             <groupId>com.alibaba</groupId> 
  16.             <artifactId>druid-spring-boot-starter</artifactId> 
  17.             <version>1.1.10</version> 
  18.         </dependency> 
  19.         <dependency> 
  20.             <groupId>com.alibaba</groupId> 
  21.             <artifactId>druid</artifactId> 
  22.             <version>1.0.31</version> 
  23.         </dependency> 

3.1.2、再在.yml文件中配置Druid數(shù)據(jù)源的相關(guān)信息

  1. spring: 
  2.   # 數(shù)據(jù)源的配置 
  3.   datasource: 
  4.     # 連接池的配置 
  5.     type: com.alibaba.druid.pool.DruidDataSource             
  6.     druid: 
  7.       initial-size: 5 
  8.       max-active: 10 
  9.       min-idle: 5 
  10.       max-wait: 30000 
  11.       pool-prepared-statements: true 
  12.       max-pool-prepared-statement-per-connection-size:  20 
  13.       validation-query: SELECT 1 FROM DUAL 
  14.       validation-query-timeout: 60000 
  15.       test-on-borrow: false 
  16.       test-on-returnfalse 
  17.       test-while-idle: true 
  18.       time-between-eviction-runs-millis:  60000 
  19.       min-evictable-idle-time-millis: 100000 

 

3.1.3、再寫個(gè)配置類加載數(shù)據(jù)源

  1. @Configuration 
  2. @ConditionalOnClass(DruidDataSource.class) 
  3. @ConditionalOnProperty(name = "spring.datasource.type", havingValue = "com.alibaba.druid.pool.DruidDataSource", matchIfMissing = true
  4. public class DataSourceConfig { 
  5.  
  6.     @Bean 
  7.     @ConfigurationProperties("spring.datasource.druid"
  8.     public DataSource dataSourceOne() { 
  9.         return DruidDataSourceBuilder.create().build(); 
  10.     } 

 

3.1.4、啟動(dòng)效果:

  1. 2020-01-17 16:59:32.804  INFO 8520 --- [ main ] o.s.j.e.a.AnnotationMBeanExporter        : Registering beans for JMX exposure on startup 
  2. 2020-01-17 16:59:32.806  INFO 8520 --- [ main ] o.s.j.e.a.AnnotationMBeanExporter        : Bean with name 'dataSourceOne' has been autodetected for JMX exposure 
  3. 2020-01-17 16:59:32.808  INFO 8520 --- [ main ] o.s.j.e.a.AnnotationMBeanExporter        : Bean with name 'statFilter' has been autodetected for JMX exposure 
  4. 2020-01-17 16:59:32.818  INFO 8520 --- [ main ] o.s.j.e.a.AnnotationMBeanExporter        : Located MBean 'dataSourceOne': registering with JMX server as MBean [com.alibaba.druid.spring.boot.autoconfigure:name=dataSourceOne,type=DruidDataSourceWrapper] 
  5. 2020-01-17 16:59:32.822  INFO 8520 --- [ main ] o.s.j.e.a.AnnotationMBeanExporter        : Located MBean 'statFilter': registering with JMX server as MBean [com.alibaba.druid.filter.stat:name=statFilter,type=StatFilter] 
  6. 2020-01-17 16:59:32.932  INFO 8520 --- [ main ] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 18001 (http) 
  7. 2020-01-17 16:59:32.943  INFO 8520 --- [ main ] c.j.mmzsblog.DatasourceTestApplication   :  

 

3.2、SpringBoot2.0中引用Druid

在SpringBoot2.0中引用Druid和在SpringBoot1.0中引入類似;

3.2.1、不需要排除默認(rèn)配置的數(shù)據(jù)源,直接引入置Druid數(shù)據(jù)源

  1. <!-- 引用阿里巴巴的druid數(shù)據(jù)源 --> 
  2.         <dependency> 
  3.             <groupId>com.alibaba</groupId> 
  4.             <artifactId>druid-spring-boot-starter</artifactId> 
  5.             <version>1.1.10</version> 
  6.         </dependency> 
  7.         <dependency> 
  8.             <groupId>com.alibaba</groupId> 
  9.             <artifactId>druid</artifactId> 
  10.             <version>1.0.31</version> 
  11.         </dependency> 

3.2.2、在.yml文件中配置的Druid數(shù)據(jù)源的相關(guān)信息同3.1.3一樣

3.2.3、再寫個(gè)配置類加載數(shù)據(jù)源同3.1.3一樣

3.2.4、啟動(dòng)后你同樣能看到打印出類似的信息

  1. Located MBean 'dataSourceOne': registering with JMX server as MBean [com.alibaba.druid.spring.boot.autoconfigure:name=dataSourceOne,type=DruidDataSourceWrapper] 

 

3.3、優(yōu)秀在哪?

看了上面的使用,超級(jí)簡單又木有?

首先我們看看druid官網(wǎng)給出的幾個(gè)傳統(tǒng)連接池之間的對(duì)比吧:

 

從上表可以看出,Druid連接池在性能、監(jiān)控、診斷、安全、擴(kuò)展性這些方面遠(yuǎn)遠(yuǎn)超出競品。

 

 

官網(wǎng)是這樣介紹它的:

❝Druid連接池是阿里巴巴開源的數(shù)據(jù)庫連接池項(xiàng)目。Druid連接池為監(jiān)控而生,內(nèi)置強(qiáng)大的監(jiān)控功能,監(jiān)控特性不影響性能。功能強(qiáng)大,能防SQL注入,內(nèi)置Loging能診斷Hack應(yīng)用行為。

所以,阿粉我倒騰了這么久,想明白了一件事,我以后還是用阿里爸爸的Druid連接池吧,接入簡單,還自帶監(jiān)控,并且它可是經(jīng)過阿里巴巴各大系統(tǒng)考驗(yàn)過的產(chǎn)品,值得信賴,省事省心啊。

責(zé)任編輯:武曉燕 來源: Java極客技術(shù)
相關(guān)推薦

2019-12-30 15:30:13

連接池請(qǐng)求PHP

2022-02-21 07:48:54

Mysql數(shù)據(jù)庫SpringBoot

2009-06-17 09:59:46

Hibernate 連

2010-06-25 10:36:27

Java連接池

2011-06-01 13:54:10

MySQL

2018-02-07 16:23:58

連接池內(nèi)存池AI

2009-09-22 16:04:50

Hibernate連接

2009-09-22 14:52:55

Hibernate p

2009-06-17 16:22:45

Hibernate連接

2022-11-11 09:41:04

連接池微服務(wù)數(shù)據(jù)庫

2011-05-13 09:34:51

TomcatMysql連接池

2010-05-17 16:38:08

MySQL 連接池

2011-07-04 09:39:25

java連接池

2015-04-27 09:50:45

Java Hibern連接池詳解

2009-07-15 11:00:48

proxool連接池

2024-12-04 15:55:19

2009-06-24 07:53:47

Hibernate數(shù)據(jù)

2009-12-25 15:38:12

ADO連接池

2022-07-19 13:51:47

數(shù)據(jù)庫Hikari連接池

2010-01-05 10:11:23

ADO.NET連接池
點(diǎn)贊
收藏

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

在线观看日韩av| 欧美视频国产精品| 国产精品播放| 在线观看免费av片| 婷婷综合网站| 国产午夜精品久久久| 性猛交ⅹ×××乱大交| 国产精品蜜臀| 欧美激情综合在线| 国产成人成网站在线播放青青| 7799精品视频天天看| 91精品国产91久久久久久密臀| 亚洲高清福利视频| 高潮一区二区三区| 涩涩涩在线视频| 综合久久久久久| 奇米888一区二区三区| av男人天堂网| 热久久一区二区| 97久久精品人人澡人人爽缅北| 老鸭窝一区二区| 国产精品久久久久久久久久久久久久久 | 国内偷自视频区视频综合| 人妻一区二区视频| 一区二区三区欧洲区| 欧美午夜精品免费| 欧美极品欧美精品欧美| 国产午夜精品久久久久免费视| 久久精品欧美日韩精品 | 亚洲第一论坛sis| 欧美成人a∨高清免费观看| 伊人国产在线视频| 成人做爰视频www网站小优视频| 一区二区三区四区不卡在线| 亚洲国产成人不卡| 久热av在线| 久久香蕉国产线看观看99| 99精彩视频在线观看免费| 亚洲熟妇无码久久精品| 日韩成人av影视| 国产91精品高潮白浆喷水| 精品小视频在线观看| 91成人网在线观看| 久久精品青青大伊人av| 日本成人免费在线观看 | 国产精品va视频| 欧美高清激情brazzers| 欧美 日韩 国产 激情| 性欧美hd调教| 欧美亚洲动漫制服丝袜| 久久国产乱子伦免费精品| 97人澡人人添人人爽欧美| 亚洲观看高清完整版在线观看| 亚洲五码在线观看视频| 成码无人av片在线观看网站| 中文字幕亚洲不卡| 中文字幕在线乱| 国产激情在线观看| 亚洲最色的网站| 人人妻人人澡人人爽欧美一区双| av在线播放观看| 一区二区三区美女视频| 日本阿v视频在线观看| 欧美v亚洲v| 亚洲3atv精品一区二区三区| 欧美图片激情小说| 99re6在线精品视频免费播放| 图片区小说区国产精品视频| 老太脱裤让老头玩ⅹxxxx| 国产在线88av| 日本道在线观看一区二区| 一道本视频在线观看| 精品久久久网| 日韩一区二区三区av| 精品国产乱码久久久久夜深人妻| 动漫视频在线一区| 亚洲欧美日韩中文在线| 国产一区第一页| 国产精品草草| 国产99久久久欧美黑人| 中文字幕在线2018| 国产高清成人在线| 精品日产一区2区三区黄免费| 免费成人av电影| 亚洲视频一区二区在线| 久久国产精品网| xx欧美视频| 在线综合视频播放| 日本少妇xxxx| 成人精品亚洲| 久久久久久999| 91视频在线视频| 国产精品中文字幕日韩精品| 精品综合久久久| 日本精品在线| 午夜精品视频一区| 中文字幕永久有效| 自拍亚洲一区| 欧美成人精品在线播放| 好吊色在线视频| 国产精品18久久久久久久网站| 久久一区二区三区av| 欧美激情午夜| 亚洲成人动漫精品| 亚洲人视频在线| 五月激激激综合网色播| 美女国内精品自产拍在线播放| 男女视频免费看| 国产精品综合视频| 亚洲精品成人三区| 久草在线中文最新视频| 欧美一区二区人人喊爽| 亚洲精品国产一区黑色丝袜 | 国产亚洲成av人在线观看导航 | 午夜亚洲视频| 波多野结衣成人在线| 91精品国产综合久久久久久豆腐| 亚洲一区免费在线观看| 色91精品久久久久久久久| 日韩精品亚洲aⅴ在线影院| 久久综合伊人77777| 久久午夜鲁丝片| 91首页免费视频| 久久综合久久网| 亚洲性视频在线| 久久久999精品视频| 最近中文字幕av| av不卡免费电影| 少妇一晚三次一区二区三区| 日本一区二区中文字幕| 亚洲午夜激情免费视频| 久久久午夜影院| 懂色av一区二区在线播放| 伊人天天久久大香线蕉av色| 亚洲mmav| 国产午夜精品美女视频明星a级| 日本污视频在线观看| 丁香网亚洲国际| 国产一区二区三区小说| 日本一区二区三区播放| 久久视频免费观看| 国产精品久久久久久久久毛片 | 亚洲自拍偷拍另类| 中文字幕av不卡| 黄色三级视频在线| 欧美精品羞羞答答| 国产精品高潮呻吟视频| av在线资源站| 精品污污网站免费看| 欧美日韩生活片| 久久97超碰国产精品超碰| 亚洲午夜精品久久久中文影院av| 日韩精品第一| 色777狠狠综合秋免鲁丝| 亚洲一级片免费看| 成人欧美一区二区三区黑人麻豆| 中文字幕成人免费视频| 香蕉视频国产精品| 91精品黄色| 国产美女精品写真福利视频| 亚洲欧美国产精品va在线观看| 免费观看成人毛片| 久久精品日韩一区二区三区| 免费一级特黄录像| 久久精品亚洲人成影院| 古典武侠综合av第一页| 理论不卡电影大全神| 亚洲精品日韩久久久| 成人一二三四区| 亚洲人成精品久久久久| 午夜福利三级理论电影| 久久xxxx精品视频| 亚洲欧美久久久久一区二区三区| 欧美成人黄色| 欧美激情精品久久久久| 青青草手机在线| 欧美喷潮久久久xxxxx| 黄页网站免费观看| 99re这里只有精品视频首页| www.超碰com| 综合一区在线| 久久精品国产精品青草色艺| 成人免费毛片嘿嘿连载视频…| 久久影视电视剧免费网站清宫辞电视| 免费av网站观看| 欧美在线免费播放| 成人免费视频国产免费观看| 91视频xxxx| 五月天婷婷影视| 国产日本精品| 欧美 国产 精品| 要久久电视剧全集免费| 成人免费激情视频| 欧美aa免费在线| 久久久精品免费| 毛片网站在线观看| 日韩一卡二卡三卡国产欧美| 日日夜夜狠狠操| 一区二区三区日韩欧美| 无码 人妻 在线 视频| 大尺度一区二区| 91小视频网站| 校园春色综合网| 日本高清视频免费在线观看| 成人羞羞在线观看网站| 国产精品一区二区三区在线观| 日韩精品免费观看视频| 亚洲91精品在线观看| 久草资源在线观看| 亚洲欧洲成视频免费观看| 亚洲精品一区二区三区四区| 欧美性大战久久久久久久| 日韩乱码人妻无码中文字幕| 国产精品不卡一区| 午夜时刻免费入口| 成人在线视频一区二区| а 天堂 在线| 人妖欧美一区二区| 91免费福利视频| 亚洲精品在线免费看| 五月婷婷六月丁香| 欧美一区二区三区视频在线观看| 国产亚洲欧美在线精品| 亚洲高清免费视频| √天堂中文官网8在线| 中文字幕va一区二区三区| 免费人成又黄又爽又色| 91麻豆文化传媒在线观看| 国产精九九网站漫画| 国产尤物一区二区在线| 亚洲一区日韩精品| 蜜臀av一区二区在线免费观看| 欧美亚洲另类色图| 亚洲一区二区三区高清| 青青草成人免费在线视频| 黄色成人在线网址| 精品一二三四五区| 国产精品观看| 妞干网视频在线观看| 好看不卡的中文字幕| 欧美做暖暖视频| 欧美日本免费| av无码久久久久久不卡网站| 亚洲欧美综合| 青草网在线观看| 一本色道久久综合亚洲精品不| 国产一区二区三区乱码| 99国产精品私拍| 成 年 人 黄 色 大 片大 全| 在线日韩欧美| 黄色免费观看视频网站| 久久九九电影| 一道本视频在线观看| 乱一区二区av| 污污视频网站在线| 国产成人午夜精品影院观看视频| 久久久精品人妻一区二区三区| 成人免费观看视频| 丰满少妇在线观看资源站| 粉嫩在线一区二区三区视频| 成年人小视频在线观看| 91网站最新网址| 娇妻被老王脔到高潮失禁视频| 国产精品美女久久久久久久久久久 | 日韩精品视频免费看| 欧美天天综合色影久久精品| 成年人视频免费| 51精品视频一区二区三区| 精品人妻少妇AV无码专区| 亚洲第一色在线| 玖玖综合伊人| 久久成人精品一区二区三区| 久久www人成免费看片中文| 欧美一级成年大片在线观看| 欧洲成人一区| 97碰碰视频| 一区三区在线欧| 中文字幕日韩一区二区三区| 好看的日韩av电影| 天天干在线影院| 国产91丝袜在线播放| 国产呦小j女精品视频| 国产精品麻豆视频| 天天综合网入口| 欧美精品自拍偷拍动漫精品| 你懂的网站在线| 伊人久久久久久久久久久| 黄色成人在线网| 国产精品香蕉国产| 狼人精品一区二区三区在线| 亚洲成色www久久网站| 欧美黄色aaaa| 国产熟人av一二三区| 国产精品888| 超薄肉色丝袜一二三| 亚洲第一福利一区| 一卡二卡三卡在线| 日韩国产精品亚洲а∨天堂免| 日本天堂在线观看| 日本精品一区二区三区在线播放视频| 国产精品一区二区精品视频观看| 免费试看一区| 亚洲激情网站| www.桃色.com| 中文字幕av免费专区久久| 日韩伦理在线视频| 欧美一三区三区四区免费在线看| 秋霞av在线| 久久久久这里只有精品| 亚洲一区二区三区久久久| 欧美日韩另类丝袜其他| 亚洲福利久久| 久久黄色一级视频| 亚洲欧美在线观看| 少妇又紧又色又爽又刺激视频| 亚洲黄一区二区| 色呦呦在线观看视频| 成人中文字幕在线观看 | 青青草综合在线| 青青青伊人色综合久久| 中文字幕成人动漫| 亚洲一二三四久久| 国产后入清纯学生妹| 深夜福利亚洲导航| 色成人免费网站| 欧美日韩在线精品一区二区三区| 国产精品hd| 国产成人av片| 亚洲综合色丁香婷婷六月图片| 一区二区三区亚洲视频| 国产一区二区三区久久精品| 中文字幕在线视频久| 国模精品娜娜一二三区| 在线国产精品一区| 国产黑丝一区二区| 亚洲成av人片在www色猫咪| 成人免费公开视频| 欧美肥臀大乳一区二区免费视频| 国产日韩一区二区三免费高清| 在线精品日韩| 国产综合色精品一区二区三区| 欧美美女性生活视频| 欧美精品久久久久久久久老牛影院| 国产福利小视频在线观看| 国产精品羞羞答答| 999视频精品| 久久久久亚洲av无码麻豆| 亚洲另类色综合网站| 99国产精品99| 欧美富婆性猛交| 精品少妇3p| 青青青在线播放| 国产蜜臀av在线一区二区三区| 九九热最新视频| 久久精品国产2020观看福利| 国产精品视频一区二区三区综合 | 国产日韩精品推荐| 国产日韩欧美一区| 免费看黄色的视频| 欧美日韩视频在线观看一区二区三区 | 国产一区二区三区在线| 欧美极品在线| 丰满人妻一区二区三区53号| 本田岬高潮一区二区三区| 999这里只有精品| 一区二区av在线| 精品国产一区二区三区2021| 可以看毛片的网址| 久久亚洲影视婷婷| 夜夜骚av一区二区三区| 欧美成人性生活| 欧美综合精品| 超碰超碰在线观看| 亚洲一区二区四区蜜桃| 青青青手机在线视频观看| 国产精品一区二区三区久久久| 久久久久久免费视频| 李丽珍裸体午夜理伦片| 91久久国产综合久久| a免费在线观看| 蜜桃传媒视频麻豆第一区免费观看| 强制捆绑调教一区二区| 九九视频免费看| 国产一区二区精品丝袜| 亚洲一区二区三区在线免费| 国产三区在线视频| 亚洲欧美一区二区久久| 天堂在线视频免费观看| 国产精品一二三视频| 伊人成人网在线看| 亚洲天堂av中文字幕| 亚洲成人久久网| 国产91精品在线| 国产成人在线免费看| ...xxx性欧美| 青青草视频免费在线观看| 亚洲影视中文字幕| 日韩综合小视频| 国产情侣在线视频| 久久手机精品视频|