日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

谈一谈Spring-Mybatis在多数据源配置上的坑

發布時間:2025/3/18 javascript 76 豆豆
生活随笔 收集整理的這篇文章主要介紹了 谈一谈Spring-Mybatis在多数据源配置上的坑 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
  • 蘇格團隊
  • 作者:JayceKon
  • 交流QQ群:855833773
  • 歡迎加入我們的團隊,微信聯系方式:foreverpx_cjl

概述

先聊一聊業務背景,隨著系統服務的不斷開發,我們的系統會充斥著各種個樣的業務.這種時候,我們應該要開始考慮一下如何將系統的粒度細化.舉個常見的例子: 電商系統可以拆分為 商品模塊,訂單模塊,地址模塊等等.這些模塊都可以獨立抽取出來,形成一個單獨的服務.這就會涉及到各個模塊之間的通信問題,一些簡單的服務,我們可以通過 rpc 接口 直接進行通信,但是有些服務卻不適用這種模式.本文主要講一下在多數據源路上遇到的一些坑.

多數據源

項目結構

源碼地址: github.com/jaycekon/Sp…

配置文件: DataSourceConfig

@Bean(name = "masterDataSource")@Qualifier("masterDataSource")@ConfigurationProperties(prefix = "spring.datasource")public DataSource masterDataSource() {return DataSourceBuilder.create().build();}@Bean(name = "slaveDataSource")@Qualifier("slaveDataSource")@ConfigurationProperties(prefix = "spring.datasource.db2")public DataSource slaveDataSource() {return DataSourceBuilder.create().build();}@Bean@Primarypublic DynamicDataSource dataSource(@Qualifier("masterDataSource") DataSource master,@Qualifier("slaveDataSource") DataSource slave) {Map<Object, Object> targetDataSources = new HashMap<>();targetDataSources.put(DatabaseType.db1, master);targetDataSources.put(DatabaseType.db2, slave);DynamicDataSource dataSource = new DynamicDataSource();dataSource.setTargetDataSources(targetDataSources);// 該方法是AbstractRoutingDataSource的方法dataSource.setDefaultTargetDataSource(master);// 默認的datasource設置為myTestDbDataSourcereturn dataSource;}@Beanpublic SqlSessionFactory sqlSessionFactory(@Qualifier("masterDataSource") DataSource myTestDbDataSource,@Qualifier("slaveDataSource") DataSource myTestDb2DataSource) throws Exception {SqlSessionFactoryBean fb = new SqlSessionFactoryBean();fb.setDataSource(this.dataSource(myTestDbDataSource, myTestDb2DataSource));fb.setTypeAliasesPackage(env.getProperty("mybatis.type-aliases-package"));fb.setMapperLocations(new PathMatchingResourcePatternResolver().getResources(env.getProperty("mybatis.mapper-locations")));return fb.getObject();} 復制代碼

項目創建流程可以參: 《Spring-Mybatis 讀寫分離》

數據庫

test_1:

CREATE TABLE `school` (`id` int(11) NOT NULL AUTO_INCREMENT,`school_name` varchar(255) DEFAULT NULL,`province` varchar(255) DEFAULT NULL,PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8; 復制代碼

test_2:

CREATE TABLE `user` (`id` int(11) NOT NULL AUTO_INCREMENT,`username` varchar(255) DEFAULT NULL,`password` varchar(255) DEFAULT NULL,PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8; 復制代碼

1、數據庫鏈接異常

此數據庫鏈接異常,指的是在 切換數據源 時,數據庫鏈接異常

啟動我們的服務:

說明我們的服務配置是沒有什么問題的,那么所謂的數據庫鏈接異常又是什么回事呢?

Test:

@Autowiredprivate SchoolService schoolService;@Autowiredprivate UserService userService;@Testpublic void addUser() {userService.inserUser("root2","root2");}@Testpublic void addSchool() {schoolService.addSchool("ceshi1", "ceshi1");} 復制代碼

通過注解設置數據源:

@Service @DataSource("db2") public class UserService@Service @DataSource("db1") public class SchoolService 復制代碼

我們創建了一個測試類,來檢測兩個數據源處理情況

從結果來看:

1、schoolService 成功了 (db:test_1)

2、UserService 失敗了( db:test_2)

errorMessage:

org.springframework.jdbc.BadSqlGrammarException: ### Error updating database. Cause: java.sql.SQLSyntaxErrorException: Table 'test_1.user' doesn't exist ### The error may involve com.jaycekon.mybatis.multi.mapper.UserMapper.insert-Inline ### The error occurred while setting parameters ### SQL: INSERT INTO `user`(`username`, `password`) VALUES ( ?, ?); ### Cause: java.sql.SQLSyntaxErrorException: Table 'test_1.user' doesn't exist ; bad SQL grammar []; nested exception is java.sql.SQLSyntaxErrorException: Table 'test_1.user' doesn't exist 復制代碼

上述異常,即我們可能會遇到的第一個坑: UserService 中的數據源鏈接異常

異常分析

1、數據源鏈接的是 test_1 說明沒有成功切換數據源

2、觀察切面方法,監聽的是 dataSource

@Before("@annotation(com.jaycekon.mybatis.multi.config.DataSource)") 復制代碼

3、@DataSource

@Retention(RetentionPolicy.CLASS) @Target({ElementType.TYPE}) public @interface DataSource 復制代碼

通過上述注解可以發現,我們注解對象為 TYPE(類),而在 AspectJ 中的注解監聽,只支持方法注解監聽,并不能監聽類的注解.因此,在上述我們通過注解整個類的方式,并不能做到數據源動態切換:

@Service @DataSource("db2") public class UserService@Service @DataSource("db1") public class SchoolService 復制代碼

解決辦法

1、修改 DataSource 為方法注解,對每個需要切換數據源的方法進行監聽.該方法 比較.

2、通過@Pointcut("execution(* com.jaycekon.demo.mapper.*.*(..))") 通過Pointcut 的形式,可以監聽到某個包下面的所有類,所有方法.這個方法還行,但是每次如果創建了新的類,有可能需要修改配置.

3、目前采用的方式為,將不同數據源的mapper,type-aliases,config 分開 配置方式可參考: 傳送門

修改后目錄(配置文件只需保留兩項即可):

2、Mapper 映射異常

在我們修改新的配置文件后,可以參考下面代碼(db2 類似):

@Configuration @MapperScan(value = "com.jaycekon.mybatis.multi.mapper.db1") @EnableTransactionManagement public class DataSourceConfig {private static final String MAPPER_LOCATION = "mybatis.mapper-locations.db1";@Autowiredprivate Environment env;@Bean(name = "masterDataSource")@Qualifier("masterDataSource")@ConfigurationProperties(prefix = "spring.datasource")public DataSource masterDataSource() {return DataSourceBuilder.create().build();}@Bean(name = "db1SqlSessionFactory")@Primarypublic SqlSessionFactory sqlSessionFactory(@Qualifier("masterDataSource") DataSource myTestDbDataSource) throws Exception {SqlSessionFactoryBean fb = new SqlSessionFactoryBean();fb.setDataSource(myTestDbDataSource);fb.setTypeAliasesPackage(env.getProperty("mybatis.type-aliases-package"));fb.setMapperLocations(new PathMatchingResourcePatternResolver().getResources(env.getProperty(MAPPER_LOCATION)));return fb.getObject();}@Beanpublic DataSourceTransactionManager transactionManager(@Qualifier("masterDataSource") DataSource myTestDbDataSource) {return new DataSourceTransactionManager(myTestDbDataSource);} } 復制代碼

其實這里的配置文件隱藏了一個坑,在我們啟動編譯時,并不會出現什么問題,但是當我們訪問 (db2) 的時候,問題就來了:

org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.jaycekon.mybatis.multi.mapper.db2.UserMapper.insert 復制代碼

我們可以看到,db1(school) 的單元測試沒有問題,但是 db2(user) 卻出了問題.

異常分析

1、Mapper 掃描沒有找到對應的 XML 文件

2、多數據源存在多個 SqlSessionFactory ,需要將 Mapper文件綁定到對應的 SqlSessionFactory

3、解決辦法,在掃描 Mapper 時,將其綁定到對應的 SqlSessionFactory :

@MapperScan(value = "com.jaycekon.mybatis.multi.mapper.db2", sqlSessionFactoryRef = "db2SqlSessionFactory") 復制代碼

在 @MapperScan 中可以看到對應的解釋:

* Specifies which {@code SqlSessionFactory} to use in the case that there is* more than one in the spring context. Usually this is only needed when you* have more than one datasource. 復制代碼

啟動測試類--pass ,啟動程序-- pass

如果你覺得這個坑到這里就結束了,你就太小看我了~

2.1 TypeAliases 映射

正常來說,我們單元測試 & 服務都沒有問題,講道理是能夠正常進行接下來的開發了.但是,我們如果使用的是 Spring-Boot 進行開發,那我們在發布前就還需要做一個操作 打包 Jar包 ,隨后用命令行啟動服務:

java -jar target/spring-boot-mybatis-multi.jar

And Then,然后就會出現下述問題:

Failed to parse mapping resource: 'class path resource [mybatis-mappers/db2/UserMapper.xml]'; nested exception is org.apache.ibatis.builder.BuilderException: Error parsing Mapper XML. Cause: org.apache.ibatis.builder.BuilderException: Error resolving class. Cause: org.apache.ibatis.type.TypeException: Could not resolve type alias 'User'. Cause: java.lang.ClassNotFoundException: Cannot find class: User復制代碼

在配置 SqlSessionFactory 我們已經設置了 TypeAliasesPackage 的掃描路徑:

@Bean(name = "db1SqlSessionFactory")@Primarypublic SqlSessionFactory sqlSessionFactory(@Qualifier("masterDataSource") DataSource myTestDbDataSource) throws Exception {...fb.setTypeAliasesPackage(env.getProperty("mybatis.type-aliases-package"));...} 復制代碼

但是他并沒有起任何作用,這是為什么呢?

異常分析

1、別名掃描沒有起作用

2、到Github 查找相關內容,會發現有相同的經歷: 傳送門

解決辦法

1、不使用別名(不是個好辦法)

2、在mybatis/spring-boot-starter 這個項目中,提出了一個官方的 Demo

我們截取中間比較關鍵的一部分代碼:

SqlSessionFactoryBean factory = new SqlSessionFactoryBean();factory.setDataSource(dataSource);factory.setVfs(SpringBootVFS.class); 復制代碼

我們采用方法2 嘗試一下,看看能不能解決問題:

關于 VFS 的一些解釋:

虛擬文件系統(VFS),用來讀取服務器里的資源 復制代碼

個人理解為,新創建的 SqlSessionFactory 沒有能夠加載配置文件,導致除 @Primary 外的所有 SqlSessionFactory 都沒辦法加載相關配置文件.

3、Config 異常

一路配置下來,單元測試跑通了,服務啟動也成功了,接下來就是一頓騷操作,各種功能開發~ 在開發完成后,進入測試階段.一看數據返回,坑爹啊~~

怎么返回了個空數據?

異常分析

1、數據有返回,服務沒有問題

2、schoolName 對應 數據庫 school_name,中間轉換需要使用駝峰命名轉換

駝峰命名轉換 mybatis.configuration.map-underscore-to-camel-case 出問題了.

解決辦法

1、添加配置 mybatis.configuration.map-underscore-to-camel-case=true

2、創建 MybatisConfig 配置類(db2 類似):

@Bean@ConfigurationProperties(prefix = "mybatis.configuration")@Scope("prototype")public org.apache.ibatis.session.Configuration globalConfiguration() {return new org.apache.ibatis.session.Configuration();}@Bean(name = "db1SqlSessionFactory")@Primarypublic SqlSessionFactory sqlSessionFactory(@Qualifier("masterDataSource") DataSource myTestDbDataSource,org.apache.ibatis.session.Configuration config) throws Exception {...fb.setConfiguration(config);...} 復制代碼

3、@Scope("prototype") 這里配置類使用的是多實例作用域,主要是為了解決單例模式會影響到數據源的鏈接.

數據庫連接超時

當你屁顛屁顛的把項目發布到服務器,接口調試都沒有問題.過了一晚突然發現,服務掛了,what happen?

{"msg": "\n### Error updating database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after connection closed.\n### SQL: ******\n###Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after connection closed.\n; SQL [];No operations allowed after connection closed.; nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after connection closed.","code": 500 } 復制代碼

MySQL5.0以后針對超長時間DB連接做了一個處理,如果一個DB連接在無任何操作情況下過了8個小時后(Mysql 服務器默認的“wait_timeout”是8小時),Mysql會自動把這個連接關閉。這就是問題的所在,在連接池中的connections如果空閑超過8小時,mysql將其斷開,而連接池自己并不知道該connection已經失效,如果這時有 Client請求connection,連接池將該失效的Connection提供給Client,將會造成上面的異常。 所以配置datasource時需要配置相應的連接池參數,定時去檢查連接的有效性,定時清理無效的連接。引用

解決辦法-完善相關配置:

spring.datasource.jdbcUrl=jdbc:mysql://localhost:3306/test_1 spring.datasource.username=root spring.datasource.password=123456 spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.default-auto-commit = false spring.datasource.default-read-only = true spring.datasource.max-idle = 10 spring.datasource.max-wait = 10000 spring.datasource.min-idle = 5 spring.datasource.initial-size = 5 spring.datasource.validation-query = SELECT 1 spring.datasource.test-on-borrow = false spring.datasource.test-while-idle = true spring.datasource.time-between-eviction-runs-millis = 18800spring.datasource.db2.jdbcUrl=jdbc:mysql://localhost:3306/test_2 spring.datasource.db2.username=root spring.datasource.db2.password=123456 spring.datasource.db2.driver-class-name=com.mysql.jdbc.Driver spring.datasource.db2.default-auto-commit = false spring.datasource.db2.default-read-only = true spring.datasource.db2.max-idle = 10 spring.datasource.db2.max-wait = 10000 spring.datasource.db2.min-idle = 5 spring.datasource.db2.initial-size = 5 spring.datasource.db2.validation-query = SELECT 1 spring.datasource.db2.test-on-borrow = false spring.datasource.db2.test-while-idle = true spring.datasource.db2.time-between-eviction-runs-millis = 18800復制代碼

4、事務異常

由于我們在多數據源中,采用了多 sqlSessionFactory 方式,因此在事務管理這塊,會出現事務管理異常相關問題,有興趣的童鞋可以參考:www.atomikos.com/Main/WebHom… ,推薦一個整合的 Demo

總結

Mybatis 多數據源配置主要分兩種,一種動態配置數據源 & 一種配置多 sqlsessionFactory,本文的一些坑,主要基于 多 sqlSessionFactory. 上述的所有問題,都是在開發過程中所遇到,可能各位或多或少有遇到過,希望能給各位相關幫助.

如對個人見解有所異議,歡迎指正.

Demo地址: github.com/jaycekon/Sp…

總結

以上是生活随笔為你收集整理的谈一谈Spring-Mybatis在多数据源配置上的坑的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

91九色网站 | 亚洲精品黄色在线观看 | 91插插视频 | 日韩精品在线免费观看 | 色综合久久久久综合体 | 日韩电影在线视频 | 久草在线91| 天天操天天摸天天射 | 在线观看日韩视频 | 久草网视频在线观看 | 亚洲婷婷伊人 | 欧美日韩网站 | 国产98色在线 | 日韩 | 国产精品免费小视频 | 日韩激情视频在线观看 | 天天操天天曰 | 天天玩天天干天天操 | 久久免费电影 | av线上免费观看 | 二区三区视频 | 91精品国产成人观看 | 日本三级不卡 | 久久网页 | 国产成人精品国内自产拍免费看 | 成人全视频免费观看在线看 | 黄色软件大全网站 | 97超碰资源总站 | 亚洲欧洲精品久久 | 色六月婷婷| 国产vs久久| 国产高清中文字幕 | 日韩高清久久 | 天天干天天操天天干 | 国产免费人成xvideos视频 | 日本中文字幕在线电影 | 国产精品国产亚洲精品看不卡 | 午夜123 | 欧美日韩视频一区二区三区 | 亚洲在线视频播放 | 免费一级黄色 | 91免费版在线 | 91av手机在线观看 | 精品国产理论片 | 中文字幕 二区 | 国产69久久精品成人看 | 久久久久黄 | 色在线网站| 少妇超碰在线 | 久久精品区 | 国产第一页精品 | 处女av在线 | 成人黄视频 | 91毛片在线 | 亚洲精品国产精品久久99热 | 在线观看视频国产一区 | 国产精品久久久久免费 | 亚洲午夜久久久久 | 夜夜夜夜爽 | 狠狠干婷婷色 | 91精品爽啪蜜夜国产在线播放 | 亚洲成免费| 日本精品一区二区三区在线播放视频 | 欧美激情另类 | 日韩v欧美v日本v亚洲v国产v | 欧美一区日韩精品 | 激情婷婷亚洲 | 国产成人av网址 | 亚州av网站 | 色av男人的天堂免费在线 | 中文av影院 | 丁香六月欧美 | 免费观看午夜视频 | 婷婷五天天在线视频 | 四虎最新入口 | 精品综合久久 | 国产乱码精品一区二区蜜臀 | 伊人婷婷色 | av韩国在线 | 在线观看精品 | 四虎成人精品永久免费av九九 | 91女人18片女毛片60分钟 | 精品在线免费观看 | 精品成人免费 | 视频国产| 一区二区三区免费 | 亚洲成av人片在线观看无 | 伊人天堂久久 | 亚洲国产精品久久久 | 国产美女免费视频 | 久久精品一区二区三区四区 | 五月天国产 | 国产黄免费 | 麻豆视频成人 | 国产精品完整版 | 日韩久久视频 | 香蕉视频国产在线观看 | 国产女人免费看a级丨片 | 欧美一级片 | 97国产在线观看 | 99国产一区二区三精品乱码 | 久久精品视频观看 | 天天躁日日躁狠狠 | 狠狠久久婷婷 | 在线观看亚洲 | 久久亚洲综合国产精品99麻豆的功能介绍 | 久久精品国产亚洲 | 九九九九九九精品 | 久久久久区 | 日韩一区二区三 | 日韩一级电影在线 | 国产美女久久 | 国产我不卡 | 美女国产精品 | 色综合久久88| 97视频免费看 | www.色五月.com | 日韩中文字幕免费视频 | 欧美日韩高清一区二区三区 | 三级免费黄色 | www.干| 国产精品99蜜臀久久不卡二区 | 视频一区二区视频 | 91正在播放| 国产专区在线播放 | 五月婷婷操 | 欧美日韩精品在线免费观看 | 国产 亚洲 欧美 在线 | 久久视频这里只有精品 | 日韩欧美在线第一页 | 在线观看久 | 激情开心网站 | 天天玩天天干天天操 | 国产不卡一 | 久久福利小视频 | 国产中文视 | 免费观看一级视频 | 久久精品国产免费看久久精品 | 久久久久女人精品毛片 | 91精品在线观看入口 | 天天做日日做天天爽视频免费 | 欧美成人区 | 毛片二区| 狠狠色狠狠色终合网 | 日本久久不卡视频 | 国产精品一区二区免费视频 | 久久久久久综合 | 久久久国产毛片 | 2019中文在线观看 | 久草在线免费看视频 | 久草视频一区 | 黄色资源在线 | 一区二区毛片 | 夜夜躁狠狠躁日日躁视频黑人 | 亚洲在线色 | 最新国产精品亚洲 | 在线观看成人毛片 | 亚洲精品久久久久www | 一区二区视频免费在线观看 | 亚洲精品高清一区二区三区四区 | 亚洲精品99久久久久中文字幕 | 欧美一二三视频 | 青草视频在线免费 | 99精品在这里 | 国产精品对白一区二区三区 | 日本韩国中文字幕 | 黄色av高清| 99精品免费在线观看 | av资源在线观看 | 在线有码中文 | 天天爱天天爽 | 亚洲欧美日韩精品一区二区 | 91最新国产| 欧美性精品 | 国产69精品久久久久99 | 成人免费电影 | 国产手机在线观看 | 天天躁日日躁狠狠躁av中文 | 久久久久久久久久久黄色 | 免费成人在线视频网站 | 97色婷婷人人爽人人 | 天天干夜夜爽 | 五月婷婷操 | 毛片视频电影 | 中文字幕精品视频 | 99视频精品| 1000部18岁以下禁看视频 | 91女子私密保健养生少妇 | 综合天堂av久久久久久久 | 国产精华国产精品 | 国产精品成人一区二区三区 | 91麻豆精品国产91久久久无需广告 | 久久婷婷丁香 | 国产成人一区二区三区久久精品 | 精品国内自产拍在线观看视频 | 久久这里有 | 国产日韩欧美在线免费观看 | 精品国产免费久久 | 婷婷色在线播放 | 99精品影视 | www日韩精品 | 亚洲精品www. | 国产一区二区在线视频观看 | 久草在线91 | 久久久在线视频 | 亚洲精品在线免费 | 国内精品久久久久久久影视麻豆 | 精品一区二区三区四区在线 | 亚洲成人精品 | 日韩一区二区免费在线观看 | 黄色三级免费网址 | 亚洲精品动漫在线 | 亚洲九九爱 | av中文字幕日韩 | 色午夜 | 五月婷婷在线综合 | 亚洲免费国产视频 | 在线观看免费福利 | 久色免费视频 | 精品国产一二三四区 | 一区二区视频免费在线观看 | 五月婷丁香网 | 色综合色综合色综合 | 99视频在线观看一区三区 | 天天操天天操天天操天天操天天操 | 国产高清在线免费 | 久99久中文字幕在线 | 国产黄色一级片在线 | 999亚洲国产996395| 国产成人福利在线观看 | 色婷婷狠狠18| 国精产品999国精产品视频 | 永久免费看av| 一区 在线 影院 | 在线观看一级片 | 97av视频| 久久精品视频国产 | 夜夜操天天摸 | 久久人人爽人人 | 国产喷水在线 | 久久久久久久久久久黄色 | 91探花系列在线播放 | 日韩在线免费电影 | www中文在线| 国产a级免费 | 久久久久伦理电影 | 欧美另类高清 videos | 在线免费观看av网站 | 黄色毛片一级 | 亚洲高清网站 | 国产精品久久久久久久毛片 | 九九亚洲视频 | 激情伊人五月天久久综合 | 一区二区三区在线看 | 久久国产精品第一页 | 国产精品一区二区无线 | 久久久久亚洲精品男人的天堂 | 日本精品一区二区在线观看 | 人人讲| 男女日麻批 | 婷婷午夜| 久久国产精品精品国产色婷婷 | 日本少妇视频 | 精选久久 | 丁香婷婷综合激情 | 成人午夜电影网 | 91麻豆视频 | 国产精品乱码久久 | 国产精品一区二区三区久久 | 欧美在线观看小视频 | 99热这里是精品 | 国产精品入口传媒 | 国产精品字幕 | 国产系列在线观看 | 久久精品一区二区国产 | 欧美激情一区不卡 | 国产免费一区二区三区最新6 | 一级黄色大片在线观看 | 99中文在线| 亚洲激情小视频 | 一区二区 不卡 | 精品久久久久久久久久 | 天天激情综合 | 在线观看亚洲电影 | 精品久久久久亚洲 | 久久尤物电影视频在线观看 | 91麻豆国产福利在线观看 | 黄色小网站在线 | 亚洲黄在线观看 | 日日夜夜精品免费 | 一级黄色片在线播放 | 五月婷婷色综合 | 99精品在线免费视频 | 在线播放视频一区 | 久久久久久毛片精品免费不卡 | 91成人免费在线视频 | 91资源在线视频 | 国产在线观看网站 | 国产精品久久一区二区无卡 | 在线观看视频在线 | av免费电影在线观看 | 国产成人久久77777精品 | 99久久精品免费看国产麻豆 | 日韩免费高清 | 国产麻豆精品一区 | 亚洲综合色视频在线观看 | 久久艹国产视频 | 欧美精品在线视频观看 | 日韩电影中文 | 亚洲国产999| 国产最新视频在线 | 成年人免费看的视频 | 国产精品99免视看9 国产精品毛片一区视频 | 久久精品影视 | 波多野结衣在线观看视频 | 视频 天天草 | 天天插狠狠插 | 天天干天天草 | 亚洲精品色婷婷 | 国产在线免费 | 国产成人在线一区 | 国内精品视频久久 | 涩涩在线| 亚洲国产中文在线观看 | 狠狠色狠狠色合久久伊人 | 天天插狠狠干 | 一区二区三区高清 | 国产精品手机播放 | 中文字幕av有码 | 成人一级片免费看 | 中文字幕国语官网在线视频 | 亚洲人成免费 | 久久免费视频在线观看 | 国产免费专区 | 久久男人影院 | 中文字幕一区二区三区久久蜜桃 | 国产精品久久久久久久久久ktv | 超碰公开在线观看 | 伊人久久精品久久亚洲一区 | 在线免费视频你懂的 | 激情五月婷婷综合网 | 成人观看 | 亚洲精品女人 | 久久99久久99精品免观看粉嫩 | 在线播放亚洲激情 | 中文字幕日韩精品有码视频 | 日韩精品免费一区二区在线观看 | 日本免费久久高清视频 | 精品免费 | 91免费试看 | 综合国产在线观看 | 久久久国产精品一区二区中文 | 成人av亚洲 | 2019中文最近的2019中文在线 | 午夜精品一二三区 | 在线观看中文字幕亚洲 | 日韩精品中文字幕在线播放 | 91九色精品女同系列 | 亚洲女人天堂成人av在线 | 激情喷水 | 久久久久综合网 | 97在线免费观看 | 91精品视频导航 | 在线成人一区二区 | 久草在线视频看看 | 国产精品视频免费在线观看 | 91av视频 | www.久久久.cum | 在线观看视频你懂得 | 亚洲区二区 | 99精品视频观看 | 黄色精品网站 | 日本性生活一级片 | 久久99精品国产一区二区三区 | 成人毛片在线观看 | 亚洲精品自拍视频在线观看 | 91漂亮少妇露脸在线播放 | 欧美日韩视频免费 | 久久大片| 岛国精品一区二区 | 亚洲国产午夜视频 | 国产午夜影院 | 久久精品亚洲综合专区 | 美女av电影 | 久久成人综合视频 | 3d黄动漫免费看 | 中文字幕在线免费97 | 午夜av免费观看 | 91精品影视| 国产精品专区一 | 欧美性色xo影院 | 午夜av大片| 国产精品a久久久久 | 在线小视频国产 | 免费高清在线观看电视网站 | 毛片精品免费在线观看 | 国产精品一区二区三区观看 | 欧美精品久久久久久久久久久 | 五月婷婷电影网 | 看v片 | 日本二区三区在线 | 丁香婷婷网 | 中文字幕资源网在线观看 | 国产亚洲精品无 | 国产自在线| 国产精品99久久99久久久二8 | 精品网站999www | 免费观看视频的网站 | 97在线视频免费观看 | 狠狠躁夜夜a产精品视频 | 亚洲一区二区三区四区在线视频 | 成人av片免费观看app下载 | 欧美一区二区三区在线看 | 久久97久久97精品免视看 | 国产露脸91国语对白 | 99精彩视频在线观看免费 | 国产精品视频观看 | 伊人婷婷网 | 天天干夜夜 | 国产a视频免费观看 | 99综合电影在线视频 | 免费视频91蜜桃 | 亚洲欧美婷婷六月色综合 | 亚州性色| 在线观看91精品国产网站 | 久久久电影网站 | 久久婷婷国产色一区二区三区 | 69中文字幕 | a黄色一级片 | 久久久午夜剧场 | 中文av影院 | 在线播放视频一区 | 在线 你懂 | 久久久麻豆精品一区二区 | 亚洲 欧美 另类人妖 | 夜夜天天干 | 欧美一区二区精品在线 | 色欧美88888久久久久久影院 | 99c视频高清免费观看 | 国产精品久久久久久久久久久久午夜 | 日日日爽爽爽 | 久久国产精品一区二区三区 | 日韩免费中文字幕 | 热久久视久久精品18亚洲精品 | 中文在线www | 亚洲午夜久久久影院 | 久久99精品国产麻豆宅宅 | 91精品在线免费 | 亚洲综合五月 | 日韩欧美在线中文字幕 | 日本最大色倩网站www | 五月婷婷色 | 日韩黄色免费 | 中文字幕在线看视频国产 | 岛国精品一区二区 | 麻豆手机在线 | 日本三级久久 | 日韩中文免费视频 | 国产在线精品区 | 久久99精品久久只有精品 | 久久综合婷婷 | 欧美日韩国产一区二 | 国产精品久久久久一区 | 欧美日韩高清一区 | 在线视频99 | 在线电影 你懂得 | 免费黄a大片 | www亚洲精品 | 在线 国产 亚洲 欧美 | www.av在线播放 | 日韩在线免费 | 黄色网免费 | 天天做天天爱天天爽综合网 | 黄色在线看网站 | 成人一级| 久久久久女教师免费一区 | 免费婷婷 | 天堂av中文字幕 | 免费在线观看成人小视频 | 18做爰免费视频网站 | 久久久高清一区二区三区 | 国产人成免费视频 | 成人羞羞视频在线观看免费 | 青青久草在线 | 精品久久久久久久久中文字幕 | 国产精品一区二区果冻传媒 | 97精品国产97久久久久久粉红 | 日韩在线视频一区二区三区 | 日韩黄色网络 | 999毛片| 色香网| 探花在线观看 | 五月天天av | 免费看的黄色 | 久草电影免费在线观看 | 国产成人一区二区啪在线观看 | 国产视频在线播放 | 81精品国产乱码久久久久久 | 伊人五月天.com | 日韩精品字幕 | 久久一区二区三区国产精品 | 视频国产一区二区三区 | 九九九毛片| 欧美日韩国产精品一区二区三区 | 500部大龄熟乱视频 欧美日本三级 | 国产色a在线观看 | 黄色成人av | 色综合天天综合网国产成人网 | 欧美91片| 亚洲综合在线发布 | 狠狠色噜噜狠狠狠合久 | 波多野结衣一区二区三区中文字幕 | 国产女人18毛片水真多18精品 | 亚洲国产精品va在线看黑人动漫 | 91一区二区三区久久久久国产乱 | 永久免费精品视频网站 | 久久综合免费视频 | 欧美日本啪啪无遮挡网站 | wwwwww国产| 在线亚洲欧美视频 | 在线播放一区二区三区 | 天天草天天草 | 999国内精品永久免费视频 | 午夜精品久久一牛影视 | 亚洲性视频 | 超碰人人超| 少妇性xxx| 久久久精品久久 | 青青久草在线视频 | 97福利在线 | 人人射人人澡 | a在线视频v视频 | 国产精品18久久久久久久久久久久 | 亚洲人成精品久久久久 | 国产精品99久久久 | 天天天操操操 | www.综合网.com | 天天操天天操天天操天天操天天操天天操 | 国产精品一区二区久久精品爱涩 | 婷婷在线免费视频 | av免费播放 | 国产精品成人自拍 | 欧美色插 | 日本韩国精品在线 | 成人在线小视频 | 日韩欧美一区二区在线播放 | 91免费国产在线观看 | 国产视频999 | 国产精品视频久久久 | 日韩com | 一区二区激情 | 欧美成人高清 | 久久久在线免费观看 | 亚洲黄污 | 人人干干人人 | 91久久奴性调教 | av一区二区三区在线 | 在线色资源 | 中文字幕中文中文字幕 | 婷婷久久亚洲 | 九九综合久久 | 一区二区三区韩国免费中文网站 | 五月天久久综合 | av中文字幕日韩 | 亚洲视频播放 | 久草爱视频 | 又黄又刺激视频 | 亚洲午夜精品久久久久久久久久久久 | 国产一级在线 | 亚洲精品日韩av | 超碰97免费 | 天天操天天操天天操天天操天天操 | 丁香九月婷婷 | 日韩免费视频一区二区 | 亚洲欧美国内爽妇网 | 亚洲最新av网址 | 欧美日韩调教 | 国产一区二区高清 | 精品一二 | 色的网站在线观看 | 国产91全国探花系列在线播放 | 亚洲国产成人在线播放 | 香蕉久草 | 日韩色综合网 | 日韩在线免费高清视频 | 久久视频这里有久久精品视频11 | 深夜免费小视频 | 国产精品久久99综合免费观看尤物 | 青青草久草在线 | 一区二区三区日韩在线 | 在线免费观看视频一区 | 久草视频在线免费播放 | 国产午夜精品一区二区三区嫩草 | 欧美一进一出抽搐大尺度视频 | 日韩精品久久久久久久电影99爱 | 中国老女人日b | 久草视频99| 亚洲国产午夜视频 | 免费看国产曰批40分钟 | 成+人+色综合 | 碰天天操天天 | 黄p在线播放 | 欧美精品xx| av电影不卡在线 | 中文字幕在线日 | 国内视频一区二区 | 久久久免费精品 | 日韩av电影网站在线观看 | 韩国一区二区三区视频 | 久草视频免费在线观看 | 免费观看版 | 久九视频 | 免费av在线| 欧美少妇xxx | 日本中文字幕在线一区 | 国产毛片在线 | 精品黄色在线 | 久草在线视频在线观看 | 国产精品理论片在线观看 | 久久精品91久久久久久再现 | 国产高清视频免费最新在线 | 国产精品99久久久久久久久 | 99精品欧美一区二区三区黑人哦 | 婷婷网五月天 | 日韩1级片| 美女很黄免费网站 | av天天草 | 岛国大片免费视频 | 欧洲成人av| 欧美精选一区二区三区 | 五月开心六月婷婷 | 久久草精品| 亚洲高清91 | 97超碰色偷偷 | 九九九国产| 欧美一区二区三区在线观看 | 美女黄视频免费 | 久久99精品一区二区三区三区 | 国产亚洲视频系列 | 成人啊 v | 日韩欧美高清在线观看 | 天天干夜夜想 | 国产精品男女啪啪 | 亚洲精品资源在线 | 一二三区视频在线 | 中文字幕日韩国产 | 中文字幕区 | 日日草天天草 | 少妇性xxx| 色狠狠操 | 三级av在线播放 | 亚洲在线观看av | 91毛片在线观看 | 久久99国产一区二区三区 | 国产涩涩在线观看 | 久久爱www. | 国产日韩欧美在线观看视频 | 在线观看日本韩国电影 | 久久精品网站视频 | 香蕉久草在线 | 国产精品嫩草在线 | 久香蕉| 四虎天堂 | 日韩欧美在线第一页 | 国产无遮挡又黄又爽在线观看 | 欧美乱大交 | 免费观看第二部31集 | 亚洲精品国产自产拍在线观看 | 日韩欧美在线中文字幕 | 国产亚洲精品美女 | www色综合 | 999久久久 | 91超碰在线播放 | 国产精品va在线观看入 | 免费观看黄 | 亚洲综合丁香 | 日韩欧美视频一区二区三区 | 国产偷国产偷亚洲清高 | 久久影院一区 | 中文字幕在| 久草视频视频在线播放 | 美国av片在线观看 | 亚洲精品在线一区二区三区 | 免费网站在线观看人 | 麻豆传媒在线视频 | 啪啪动态视频 | 91污视频在线观看 | 国产vs久久 | 日韩激情视频 | 91九色网址 | 亚洲欧美日韩一区二区三区在线观看 | 亚洲香蕉在线观看 | 久久免费高清视频 | 亚洲欧美视频 | 视频在线观看入口黄最新永久免费国产 | 黄网av在线 | 国内精品视频在线 | 夜夜爽夜夜操 | 国产精品久久久毛片 | 欧美视频日韩视频 | 久久深夜福利免费观看 | 成人国产亚洲 | 国产伦理久久精品久久久久_ | 久久高清毛片 | 欧美日韩网站 | 久久综合狠狠综合久久狠狠色综合 | 久久久久久久久影视 | 西西4444www大胆无视频 | 91成年人视频 | 亚洲情影院 | 91精品一区二区三区久久久久久 | 亚洲一级特黄 | 久久久久久久免费观看 | 在线日韩一区 | 免费视频国产 | 国产在线精 | 亚洲精品视频在线观看免费视频 | 日韩欧美一区二区三区黑寡妇 | 国产成人久久精品一区二区三区 | 欧美一级黄色网 | 亚洲综合视频在线 | 亚洲精品久久久蜜桃 | 久久天天综合网 | 黄色三级网站在线观看 | 在线观看完整版 | 日本最新高清不卡中文字幕 | 免费aa大片| 国产精品久久网站 | 色偷偷88888欧美精品久久 | 中文字幕中文字幕在线一区 | 黄av免费在线观看 | 伊人天天综合 | 99r在线视频 | 婷婷去俺也去六月色 | 91在线免费观看国产 | 中文字幕国产视频 | 成人av动漫在线 | 日韩中字在线 | 国产探花 | 香蕉影院在线 | 亚洲国产中文字幕在线观看 | 免费日韩三级 | 免费看网站在线 | 欧美久久久久久久久久久久久 | 麻豆精品传媒视频 | 九九日韩| 国产亚洲精品久久久久久移动网络 | 国产一区在线视频播放 | 成人在线观看资源 | 国产精品a久久久久 | 亚洲激情在线观看 | 麻豆视频在线观看 | 国产精品xxxx18a99 | 久久精品99久久久久久 | 亚洲高清91 | 欧美做受高潮电影o | 日韩有色 | 日韩高清黄色 | 久二影院 | 91av免费观看| 九色91av | 久久久久国产精品午夜一区 | 夜夜躁日日躁 | 亚洲人片在线观看 | 久久久免费在线观看 | 精品福利视频在线观看 | 国产激情免费 | 成人午夜剧场在线观看 | www.色在线| 中文视频在线播放 | 99自拍视频在线观看 | 黄色三级在线 | 天天操天天干天天玩 | 国产欧美三级 | 欧美成人xxxx | 欧美色图另类 | 国产精品久久久久久久久久久久冷 | 亚洲精品久久久久中文字幕二区 | 亚洲免费在线观看视频 | 美女黄频免费 | 欧美另类网站 | 国产又黄又爽无遮挡 | 日韩欧美在线国产 | 久久精品理论 | 亚洲五月婷 | 91精品国产乱码久久 | 久久精品国产亚洲精品2020 | 麻豆视频www | 日本中文乱码卡一卡二新区 | 日韩一区正在播放 | 69精品视频 | 国产精品成人久久久久 | 国产专区在线看 | 国产成人精品久久二区二区 | 伊人久久一区 | 超碰97中文 | 免费成人在线观看视频 | 91精品老司机久久一区啪 | 99免费精品视频 | 久久久免费观看 | 国产九色视频在线观看 | 国产在线不卡精品 | 91av短视频 | 亚洲综合视频在线 | 国产精品欧美久久久久无广告 | 国产无吗一区二区三区在线欢 | 国产.精品.日韩.另类.中文.在线.播放 | 成人97视频 | 97小视频 | 久久视频免费在线观看 | 亚洲美女免费精品视频在线观看 | 在线观看av的网站 | 国产亚州精品视频 | 国产成人av电影 | 久久久久久久久国产 | 91中文字幕在线 | 成在线播放 | 天天色天天上天天操 | 亚洲理论片在线观看 | 伊人色**天天综合婷婷 | 91黄色在线看 | 日韩欧美高清在线 | 日韩av资源在线观看 | 天天干,天天草 | 999久久久久 | 国产第一页在线观看 | 亚洲爽爽网 | 色婷婷亚洲综合 | 天天综合狠狠精品 | 国产va在线| av黄色在线| 日韩一区二区三区高清免费看看 | 午夜黄网 | 最新av在线免费观看 | 国产精品999久久久 久产久精国产品 | 91福利视频在线 | 91天天视频 | 九九视频在线播放 | 日本在线免费看 | 99久久99久久精品免费 | 亚洲第一av在线 | 久久一线 | 日本老少交| 天天色综合三 | 亚洲国产精品资源 | 91精品国产自产在线观看 | www.天天干.com| 国产免费午夜 | 中文字幕在线免费看 | 亚洲人视频在线 | 91九色性视频 | 超碰97av在线| av大片免费看 | 成人四虎影院 | 在线免费观看黄网站 | 超碰人人在线观看 | 中文字幕国产一区二区 | 五月天色婷婷丁香 | 91精品国产自产老师啪 | 伊人婷婷 | 中文字幕在线看视频 | 国际精品久久久久 | 久久综合色播五月 | 精品国产一区二区三区久久久久久 | 国产视频在 | 韩日色视频 | 亚洲成人免费在线 | 日韩高清片 | 成年人视频免费在线播放 | 免费在线观看亚洲视频 | 欧美大片在线看免费观看 | 精品国产乱码一区二 | 久久精品久久综合 | 人人干狠狠干 | 999视频在线播放 | 成人精品视频 | 亚洲成人资源 | 深爱激情丁香 | 色吊丝在线永久观看最新版本 | 69绿帽绿奴3pvideos | 99爱国产精品 | 五月天久久婷婷 | 中文字幕一区二区三区四区在线视频 | 99资源网 | 日韩欧美高清在线 | 99se视频在线观看 | 天天干,天天射,天天操,天天摸 | 日韩av一区二区在线 | 五月天最新网址 | 色丁香色婷婷 | 国产拍揄自揄精品视频麻豆 | 成人在线观看资源 | 日韩91av | 在线免费黄色av | 久久久久久久久免费视频 | 成人毛片在线观看视频 | 亚洲一区美女视频在线观看免费 | 国产精品18久久久久久久 | 久久天天躁狠狠躁夜夜不卡公司 | 国产永久免费高清在线观看视频 | 国产99区 | 丁香花在线观看免费完整版视频 | 国产黄大片在线观看 | 国产一区视频在线观看免费 | 99久久久国产精品免费99 | 五月婷婷欧美视频 | 日韩欧美不卡 | 一区二区不卡高清 | 精品国产一区二区三区日日嗨 | 国产精品入口麻豆www | 美女免费视频网站 | 国产精品久久电影网 | 五月天色中色 | 五月婷婷狠狠 | 日本公乱妇视频 | 国产人成在线观看 | 国产成人综合精品 | 999在线精品 | 日日精品 | 97福利在线观看 | 天天操天天干天天爽 | 涩涩网站在线播放 | 三级在线视频观看 | 亚洲韩国一区二区三区 | 蜜臀av网址 | 五月婷婷综合在线 | 日韩激情三级 | 四虎成人精品永久免费av九九 | 五月开心婷婷 | 国产精品一级在线 | 黄色tv视频| 在线观看精品国产 | 国产69精品久久99不卡的观看体验 | 久久9999久久免费精品国产 | 一区二区三区 中文字幕 | 亚洲综合成人婷婷小说 | av电影一区二区三区 | 久久免费中文视频 | 久久久国产一区二区三区四区小说 | 天天伊人狠狠 | 久久精品电影网 | 国产一级视频免费看 | 黄色av电影 | 欧美日韩高清在线观看 | 日韩激情在线视频 | 最近中文字幕 | 国产成人在线精品 | 成年人视频在线免费播放 | 欧美人人爱| 久久久精品在线观看 | 国产精品18久久久久久久久久久久 | 久久精品中文字幕一区二区三区 | 鲁一鲁影院 | 视频一区在线免费观看 | 国产一二区视频 | 国产精品一区二区电影 | 成年人国产精品 | 激情网站五月天 | 天天干夜夜夜 | www.xxxx变态.com | 久久久视屏 | 字幕网在线观看 | 久久久久久久久久久久久国产精品 | 黄色大片日本 | 亚洲精品在线观看视频 | 亚洲成人麻豆 | 免费成人av在线看 | 少妇bbw搡bbbb搡bbb | 欧美国产日韩激情 | 丁香六月在线 | 99九九热只有国产精品 | 天天操夜夜操国产精品 | 91精品视屏| 国产剧情久久 | 欧美日韩免费一区 | 波多野结衣一区二区三区中文字幕 | 成人一级在线观看 | 一区二区欧美日韩 | 国产精品99久久久久的智能播放 | 国产精品美女久久久久久久 | 国产精品成人免费一区久久羞羞 | 国产一及片| 超碰国产人人 | v片在线看 | 亚洲精品视频久久 | 亚洲精品在线一区二区 | 久久a免费视频 | 手机在线看片日韩 | 超碰国产在线播放 | 91av社区 | 丝袜美腿亚洲综合 | 在线观看精品黄av片免费 | 国产精品久久久久久久久久久杏吧 | 久久久久久久久久免费 | www.久久视频 | 狠狠干我 | 亚洲精品乱码久久久久久蜜桃91 | 天天射天天爱天天干 | 在线亚洲播放 |