久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Springboot整合多數(shù)據(jù)源代碼示例詳解

瀏覽:2日期:2023-05-03 16:35:52

最近有個(gè)老項(xiàng)目想逐步將新業(yè)務(wù)的數(shù)據(jù)放到新的數(shù)據(jù)庫(kù),以前的業(yè)務(wù)還得連接以前的數(shù)據(jù)庫(kù),于是需要整合多數(shù)據(jù)源 。

多數(shù)據(jù)源實(shí)際上是繼承了AbstractRoutingDataSource類,這個(gè)類最終實(shí)現(xiàn)了DataSource接口,DataSource里只有一個(gè)getConnection方法,數(shù)據(jù)庫(kù)每次訪問(wèn)的時(shí)候都要先通過(guò)這個(gè)方法獲取連接,所有多數(shù)據(jù)源就是每次訪問(wèn)數(shù)據(jù)庫(kù)之前動(dòng)態(tài)的改變數(shù)據(jù)源。

在請(qǐng)求前改變數(shù)據(jù)源當(dāng)然需要用到SpringAOP,自定義注解操作

項(xiàng)目結(jié)構(gòu)

Springboot整合多數(shù)據(jù)源代碼示例詳解

下面上代碼:

首先是依賴:

<!--數(shù)據(jù)庫(kù)連接--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <!--sqlserver--> <dependency> <groupId>com.microsoft.sqlserver</groupId> <artifactId>mssql-jdbc</artifactId> <scope>runtime</scope> </dependency> <!--mybatis-plus--> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.1.2</version> </dependency> <!--數(shù)據(jù)庫(kù)連接池--> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.8</version> </dependency><!--AOP--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId> </dependency>

yml配置數(shù)據(jù)源

server: port: 8888spring: jackson: time-zone: GMT+8 date-format: yyyy-MM-dd HH:mm:ss datasource: druid: first: driver-class-name: com.mysql.cj.jdbc.Driver type: com.alibaba.druid.pool.DruidDataSource jdbc-url: jdbc:mysql://rm-uf6265pj340sc9447oo.mysql.rds.54565.com:3306/dm?serverTimezone=Asia/Shanghai&useSSL=false&allowPublicKeyRetrieval=true&characterEncoding=utf-8 username: username password: password second: type: com.alibaba.druid.pool.DruidDataSource driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver jdbc-url: jdbc:sqlserver://39.104.203.222:1433;DatabaseName=TestTLcom username: root password: 123456mybatis-plus: mapper-locations: classpath*:/mapper/*Mapper.xml type-aliases-package: com.zdyl.dynamicdatasourcedemo.entity global-config: #主鍵類型 0:'數(shù)據(jù)庫(kù)ID自增', 1:'用戶輸入ID',2:'全局唯一ID (數(shù)字類型唯一ID)', 3:'全局唯一ID UUID'; id-type: 3 #字段策略 0:'忽略判斷',1:'非 NULL 判斷'),2:'非空判斷' field-strategy: 2 #駝峰下劃線轉(zhuǎn)換 db-column-underline: true #刷新mapper 調(diào)試神器 refresh-mapper: true #數(shù)據(jù)庫(kù)大寫下劃線轉(zhuǎn)換 #capital-mode: true #序列接口實(shí)現(xiàn)類配置 #key-generator: com.baomidou.springboot.xxx #邏輯刪除配置 #logic-delete-value: 0 #logic-not-delete-value: 1 #自定義填充策略接口實(shí)現(xiàn) #meta-object-handler: com.baomidou.springboot.xxx #自定義SQL注入器 #sql-injector: com.baomidou.springboot.xxx configuration: map-underscore-to-camel-case: true cache-enabled: false

定義數(shù)據(jù)庫(kù)名稱

/** * 數(shù)據(jù)庫(kù)名稱 */public interface DataSourceNames { String FIRST = 'first'; String SECOND = 'second';}

動(dòng)態(tài)數(shù)據(jù)源

import org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource;import javax.sql.DataSource;import java.util.HashMap;import java.util.Map;/** * 動(dòng)態(tài)數(shù)據(jù)源 */public class DynamicDataSource extends AbstractRoutingDataSource { private static final ThreadLocal<String> contextHolder = new ThreadLocal<>(); public DynamicDataSource(DataSource defaultTargetDataSource, Map<String, DataSource> targetDataSources) { super.setDefaultTargetDataSource(defaultTargetDataSource); super.setTargetDataSources(new HashMap<>(targetDataSources)); super.afterPropertiesSet(); } @Override protected Object determineCurrentLookupKey() { return getDataSource(); } public static String getDataSource() { return contextHolder.get(); } public static void setDataSource(String dataSource) { contextHolder.set(dataSource); } public static void clearDataSource() { contextHolder.remove(); }}

配置多數(shù)據(jù)源

import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;import com.zdyl.dynamicdatasourcedemo.dynamicdatasource.DataSourceNames;import com.zdyl.dynamicdatasourcedemo.dynamicdatasource.DynamicDataSource;import org.mybatis.spring.annotation.MapperScan;import org.springframework.boot.context.properties.ConfigurationProperties;import org.springframework.boot.jdbc.DataSourceBuilder;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.context.annotation.Primary;import javax.sql.DataSource;import java.util.HashMap;import java.util.Map;/** * 多數(shù)據(jù)源配置 */@Configuration@MapperScan('com.zdyl.dynamicdatasourcedemo.**.mapper*')public class MybatisPluConfig { /** * 數(shù)據(jù)源配置 * @return */ @Bean @ConfigurationProperties(prefix='spring.datasource.druid.first') public DataSource firstDataSource() { return DataSourceBuilder.create().build(); } @Bean @ConfigurationProperties(prefix='spring.datasource.druid.second') public DataSource secondDataSource() { return DataSourceBuilder.create().build(); } @Bean @Primary public DynamicDataSource dataSource(DataSource firstDataSource, DataSource secondDataSource){ Map<String, DataSource> targetDataSources = new HashMap<>(); targetDataSources.put(DataSourceNames.FIRST, firstDataSource); targetDataSources.put(DataSourceNames.SECOND, secondDataSource); return new DynamicDataSource(firstDataSource, targetDataSources); } /** * mybatis-plus分頁(yè)插件<br> * 文檔:http://mp.baomidou.com<br> */ @Bean public PaginationInterceptor paginationInterceptor() { return new PaginationInterceptor(); }}

下面就是自定義注解

import java.lang.annotation.*;/** * 多數(shù)據(jù)源注解 * AOP攔截此注解更換數(shù)據(jù)源 */@Target(ElementType.METHOD)@Retention(RetentionPolicy.RUNTIME)@Documentedpublic @interface CurDataSource { String name() default '';}

AOP

import com.zdyl.dynamicdatasourcedemo.dynamicdatasource.DataSourceNames;import com.zdyl.dynamicdatasourcedemo.dynamicdatasource.DynamicDataSource;import com.zdyl.dynamicdatasourcedemo.dynamicdatasource.annotation.CurDataSource;import lombok.extern.slf4j.Slf4j;import org.aspectj.lang.ProceedingJoinPoint;import org.aspectj.lang.annotation.Around;import org.aspectj.lang.annotation.Aspect;import org.aspectj.lang.annotation.Pointcut;import org.aspectj.lang.reflect.MethodSignature;import org.springframework.core.Ordered;import org.springframework.stereotype.Component;import java.lang.reflect.Method;/** * 多數(shù)據(jù)源,切面處理類 * AOP攔截多數(shù)據(jù)源注解 @CurDataSource 注解更換數(shù)據(jù)源 */@Slf4j@Aspect@Componentpublic class DataSourceAspect implements Ordered { /** * 切點(diǎn) */ @Pointcut('@annotation(com.zdyl.dynamicdatasourcedemo.dynamicdatasource.annotation.CurDataSource)') public void dataSourcePointCut() { } @Around('dataSourcePointCut()') public Object around(ProceedingJoinPoint point) throws Throwable { MethodSignature signature = (MethodSignature) point.getSignature(); Method method = signature.getMethod(); CurDataSource curDataSource = method.getAnnotation(CurDataSource.class); if (curDataSource == null) { DynamicDataSource.setDataSource(DataSourceNames.FIRST); log.info('set datasource is ' + DataSourceNames.FIRST); } else { DynamicDataSource.setDataSource(curDataSource.name()); log.info('set datasource is ' + curDataSource.name()); } try { return point.proceed(); } finally { DynamicDataSource.clearDataSource(); log.info('clean datasource'); } } @Override public int getOrder() { return 1; }}

最后主啟動(dòng)了去掉數(shù)據(jù)源自動(dòng)加載

@SpringBootApplication(exclude = DataSourceAutoConfiguration.class)

最后我們來(lái)跑起來(lái)請(qǐng)求一下,測(cè)試一下是否正確

@RestControllerpublic class CfgDeviceController { @Resource CfgDeviceService cfgDeviceService; @Resource CfgChargeStartInfoService cfgChargeStartInfoService; @CurDataSource(name = DataSourceNames.FIRST) @GetMapping('/test') public void getUser() { CfgDevice byId = cfgDeviceService.getById(19); System.out.println(byId.toString()); } @CurDataSource(name = DataSourceNames.SECOND) @GetMapping('/test1') public void getUser1() { CfgChargeStartInfo byId = cfgChargeStartInfoService.getById(1); System.out.println(byId.toString()); }}

Springboot整合多數(shù)據(jù)源代碼示例詳解

**如果不加注解,使用默認(rèn)數(shù)據(jù)源

至此就整合完了

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Spring
相關(guān)文章:
主站蜘蛛池模板: 免费的一级黄色片 | a视频在线观看 | av一区二区三区在线观看 | 亚洲男人天堂av | 美国一级毛片a | 成人久久久精品乱码一区二区三区 | 老牛嫩草一区二区三区眼镜 | 亚洲国产精品久久久久久女王 | 九色av| 日韩一区久久 | 国产精品无码专区在线观看 | 免费毛片在线 | 成人免费在线看片 | 亚洲成人另类 | 欧美午夜精品一区二区三区电影 | 久久九| 日本免费一区二区三区 | 精品久久国产老人久久综合 | 欧美视频xxx | 免费在线成人 | 亚洲欧洲一区 | 亚州av | 亚洲天堂一区二区 | 免费高清一级毛片 | 国产视频1区 | 亚洲精品一区二三区不卡 | 国产视频福利在线 | 成人羞羞在线观看网站 | 亚洲精品一二三四五区 | 99热.com| 91精品亚洲 | 国产激情免费 | 蜜桃日韩| 中文字幕av一区二区 | 久久久国产精品 | 最新国产精品 | 国产一区 | 盗摄精品av一区二区三区 | 国产成人一区二区三区 | 91精品国产综合久久久久 | 国产精品成人一区二区三区夜夜夜 | 欧美日韩精品一区二区在线观看 | 中文字幕在线一区二区三区 | 日韩欧美国产一区二区 | 一区二区三区久久久久久 | 国产一区在线看 | 日本一区二区不卡 | 欧美色视频在线观看 | 日韩艹逼视频 | 欧美成人精品一区二区男人看 | 一级在线观看 | 国产深夜视频在线观看 | 九九99久久 | 亚洲经典视频在线观看 | 国产目拍亚洲精品99久久精品 | 日韩欧美a级v片免费播放 | 国产精品日产欧美久久久久 | www国产亚洲精品久久网站 | 国产视频亚洲 | 国产精品一码二码三码在线 | 日日夜夜爽 | 国产一级高清视频 | 久草天堂| 欧美一级在线 | 亚洲二区视频 | 成人福利在线观看 | 欧美精品一二三区 | av在线精品 | 国产中文 | 精品1区| 精品国产不卡一区二区三区 | 国产精品a免费一区久久电影 | 午夜a v电影| 日韩在线高清视频 | 中文字幕1区 | 欧美大片一区二区 | 欧美一性一交 | 日韩中文字幕在线播放 | 精品一二三区 | 精品国产仑片一区二区三区 | 四色成人av永久网址 | 亚洲第一区国产精品 | 精品亚洲一区二区 | 欧美精品成人一区二区三区四区 | 国产精品久久久久久影院8一贰佰 | 91中文在线观看 | 亚洲精品乱码久久观看网 | 欧美一区永久视频免费观看 | 精品亚洲一区二区三区在线观看 | 久久久香蕉 | 成人国产 | 久久一区二区三区四区 | 麻豆产精国品免费入口 | av在线成人 | 国产另类ts人妖一区二区 | 日韩免费视频中文字幕 | 精品一区二区三区久久 | 中文字幕一区在线观看视频 | 一级视频黄色 | 亚洲国产精品一区二区第一页 | 久久国产精品久久久久久电车 | 日韩欧美在线观看视频网站 | 99精品欧美一区二区三区 | 中文字幕亚洲字幕一区二区 | 日韩在线国产 | 一区二区不卡 | 日韩免费网站 | 亚洲国产精久久久久久久 | 欧美aaaaa| 久久久久综合狠狠综合日本高清 | 羞羞视频免费网站 | 91精品久久久久久久久 | 91看片官网 | 欧美一级在线 | 国产精品成人在线观看 | 91精品一区二区三区久久久久久 | 自拍视频网 | 成人精品鲁一区一区二区 | 亚洲视频一 | 欧美成人影院在线 | 免费中文字幕日韩欧美 | 粉色午夜视频 | 日本黄色片免费 | 国产一区二区在线免费观看 | 美女福利视频 | 欧美日韩午夜 | 青青久久 | 日本美女一区二区三区 | 亚洲伦理一区 | 欧美日韩中文字幕在线 | 91精品久久久久久久久久 | 国产中文字幕在线 | 国产精品视频久久 | 国产亚洲精品久久久 | 激情一区二区三区 | a毛片国产 | 超碰在线播 | 亚洲福利影院 | 男人久久天堂 | 成人视屏在线观看 | 精品视频一区二区三区 | 嫩草网址 | 精品一区二区三区久久 | 午夜av电影 | 欧美日韩激情在线一区二区三区 | 九九热免费精品视频 | 1000部羞羞视频在线看视频 | 欧洲精品久久久 | 一区二区在线 | 999精品在线| 欧美一区二区三区四区五区 | 成人免费一区二区三区视频网站 | 桃花久久 | 国产成人精品免费视频大全最热 | 国产精品日本一区二区不卡视频 | 91偷拍精品一区二区三区 | 久久亚洲一区 | 在线播放黄色片网站 | 在线观看欧美日韩视频 | 天天久 | 日韩精品无码一区二区三区 | 国产成人综合在线观看 | 国产精品一区二区在线 | 久久久久久香蕉 | 国产精品揄拍一区二区久久国内亚洲精 | 一级h片 | 麻豆视频在线 | yy6080久久伦理一区二区 | 99精品视频在线 | 婷婷综合一区 | 亚洲国产精品福利 | 中文字幕免费看 | 美女主播精品视频一二三四 | 久久国产精品99久久久久久老狼 | 欧美精品在线免费观看 | 小泽玛丽娅 | 国产伦精品一区二区三区在线 | 国产a久久精品一区二区三区 | 国产中文字幕亚洲 | 夜夜夜操| 日日做夜夜爽毛片麻豆 | 久久久久亚洲一区二区三区 | 亚洲97色 | 久久精品无码一区二区日韩av | 久久不卡日韩美女 | 一区二区三区免费看 | 人妖天堂狠狠ts人妖天堂狠狠 | 99这里只有精品 | 久久精品网 | 一级全黄少妇性色生活片免费 | 日韩成人精品 | 中文在线视频 | 四虎永久免费影视 | 亚洲精品aaa| 国产做a爱片久久毛片 | 精品国产乱码一区二区三区四区 | 一级免费视频 | 国产精品国产三级国产a | 国产高清在线精品一区 | 一区二区三区中文字幕 | 99精品视频在线免费观看 | 91精品久久久久久久久久久久久久久 | 国产一区二区在线看 | 黄色福利| 国产a级毛片 | 国产一级一级国产 | 久久成人免费视频 | 色综合天天综合网国产成人网 | a久久久久久 | 日韩在线精品强乱中文字幕 | 91免费版在线观看 | 插插插干干干 | 一级片 | 中文字幕色 | 国产精品1 | 久久久久久久久一区二区三区 | 免费观看日韩一级片 | 久久久免费精品 | 亚洲欧美高清 | 精品国产乱码久久久久久丨区2区 | 亚洲一区二区三区免费在线观看 | 欧美一区二区伦理片 | 国产在线乱 | 伊人网亚洲 | 91国内外精品自在线播放 | 久久国产精彩视频 | 亚洲欧美在线观看 | 日本videos18高清hd下 | 97成人在线视频 | 国产精品二区三区在线观看 | 免费人成电影 | 一区二区视频在线观看 | 成人午夜精品久久久久久久蜜臀 | 中文字幕一区日韩精品欧美 | 欧美成年黄网站色视频 | 精品一二三区在线观看 | 久久久精品欧美一区二区免费 | 一区二区电影 | 成人高清视频在线观看 | 日干夜操 | 国产欧美一二三区在线粉嫩 | 欧美国产日韩在线 | 成人免费在线 | 50人群体交乱视频 | 久久久精选 | 综合在线视频 | 久久久成人精品 | 一区二区三区国产 | 中文字幕在线视频网站 | 久久精品国产99 | 色婷婷久久一区二区三区麻豆 | 天天网| 免费的黄视频 | 国产美女黄色片 | 欧美午夜一区二区三区免费大片 | 成全视频免费观看在线看黑人 | 在线播放亚洲 | 国产成人精品av | 亚洲tv久久爽久久爽 | 日韩欧美综合 | 欧美一级做a爰片免费视频 亚洲精品一区在线观看 | 久久精品高清 | 龙珠z普通话国语版在线观看 | 日韩欧美中文字幕在线视频 | 91精品国产综合久久精品 | 色综合免费 | 国产成人在线免费观看视频 | 精品视频久久 | 亚洲午夜一区 | 国产91一区| 国产1区2区 | 久久精品久久久久久 | 美女毛片免费看 | 在线看av网址 | 久久成人精品 | 理论片免费在线观看 | 黄色免费在线观看 | 成人免费一区二区三区视频网站 | 国产中文字幕在线观看 | 91久草视频 | 激情五月综合网 | 国产一区二区精品在线观看 | 中文一区二区 | caoporn免费在线视频 | 亚洲精品欧美视频 | 欧美精品一区二区三区蜜桃视频 | 国产99久久久精品视频 | 欧美日韩一区二区视频在线观看 | 国产欧美精品一区二区 | www..99热| 精品日韩一区二区三区 | 91tv亚洲精品香蕉国产一区 | 国产欧美日韩综合精品 | 精品国产一区二区三区不卡蜜臂 | 中国一级大黄大黄大色毛片 | 六月婷操 | 国产精品久久国产精品 | 成人亚洲 | 银杏成人影院在线观看 | 欧美性一区二区三区 | 久久久久久9 | 久久国产精彩视频 | 在线国产一区 | 在线亚洲一区 | 国产精品久久久久久久久久三级 | 香蕉91| 日韩精品免费在线观看 | 99精品视频免费在线观看 | av网站免费观看 | 久久国产一区二区三区 | 精品国产精品三级精品av网址 | 国产视频久久久 | 亚洲 欧美 日韩 丝袜 另类 | 91在线视频在线 | 色婷婷久久 | 一区二区成人网 | 日韩一区二区在线观看 | 亚洲欧洲免费视频 | 亚洲国产日韩欧美 | 在线观看视频一区二区 | 国产高清av在线一区二区三区 | 99免费视频 | 亚洲国产精品福利 | 欧美日韩在线一区二区三区 | 在线视频一区二区三区 | 麻豆国产一区二区三区四区 | 国产中文视频 | 成人黄色电影小说 | 婷婷免费在线观看 | 亚洲欧美一区二区精品中文字幕 | 国产特一级黄色片 | 激情欧美一区二区三区中文字幕 | 国产精品国产三级国产aⅴ入口 | 日韩免费av一区二区 | 精品视频久久 | 天堂资源在线 | 亚洲成av人片在线观看 | 国产伦精品一区二区三区在线 | 日本一区二区精品 | 欧美男男videos | 男女视频在线观看 | 久久久久久午夜 | 91豆花视频| 国产片一区二区三区 | 黄毛片视频 | 国产欧美精品 | 国产色播av在线 | 国产男女免费视频 | 五月激情综合网 | 亚洲毛片网站 | 精品国产欧美一区二区 | 精品在线二区 | 日一区二区 | 一区二区日韩在线观看 | 国产高清免费视频 | 午夜精品久久久久久久星辰影院 | www.在线播放 | 婷婷毛片| 欧美国产在线观看 | 99这里只有精品视频 | 国产51人人成人人人人爽色哟哟 | 91高清视频在线观看 | 亚洲精品国产乱码在线看蜜月 | 久草视频在线播放 | av免费网站在线观看 | 天堂亚洲 | 不卡视频一区 | 亚洲精品福利在线 | 777xacom| 免费视频一区 | 久久黄色片 | 久久99久久久久 | 亚洲精品久久久久久久久久久久久 | 亚洲乱码国产乱码精品精98午夜 | 91精品国产综合久久久久久软件 | 日本一区二区中文字幕 | 久久国产精品免费一区二区三区 | 亚洲精品一区久久久久久 | 成人免费视频网站在线看 | 精品视频免费观看 | 一区二区三区高清 | 国产在线中文字幕 | 中文字幕第二十六页页 | 一级毛片免费完整视频 | 欧美日韩视频在线播放 | 九色在线观看 | 95香蕉视频 | 久久综合久久综合久久综合 | 欧美日韩国产一区二区三区在线观看 | 欧美另类亚洲 | 亚洲一区二区伦理 | 国产欧美精品一区二区三区四区 | 日韩一区电影 | 成人日韩在线观看 | 国产精品资源在线 | 日韩在线欧美 | 国产精品综合久久 | 国产91成人在在线播放 | 国产美女高潮 | 国产乡下妇女做爰视频 | 九九热这里只有精品在线观看 | 欧美中文| 久久首页 | 亚洲色图图片 | 免费在线看a | 色婷婷亚洲一区二区三区 | 国产精品久久久一区二区 | 国产日韩欧美在线 | 中文字幕日韩一区二区不卡 | 午夜精品成人一区二区 | 欧美日韩在线观看一区二区三区 | 成人午夜在线视频 | 亚洲高清在线观看 | 亚洲午夜精品一区二区三区 | 亚洲国产精品一区二区第一页 | 91超碰caoporm国产香蕉 | 免费黄色在线观看 | 久久欧美高清二区三区 | 亚洲一区精品视频 | 综合网激情 | 夜夜骚 | 亚洲一区视频在线 | 久草热8精品视频在线观看 亚洲区在线 | 天天天天综合 | 91久久久久久| 亚洲三级网站 | 99久久婷婷国产综合亚洲 | 中文字幕在线三区 | 欧美视频在线播放 | 一区二区三区在线 | 亚洲一区二区三区四区在线观看 | 91最新视频| 色综合久久久久综合99 | 91精品国产色综合久久 | 99爱在线观看 | 久久综合久久久 | 最新中文字幕久久 | 91伊人 | 看真人视频a级毛片 | 日韩成人免费中文字幕 | 中文字幕在线精品 | 日韩免费视频 | 久久亚洲视频 | 亚洲一二三区电影 | 欧洲亚洲视频 | 国产美女www爽爽爽免费视频 | 成年人免费看 | 国产精品人人做人人爽 | 亚洲视频免费在线观看 | 亚洲成人自拍 | 亚洲高清视频在线观看 | 国产成人精品一区二区三区视频 | 婷婷成人免费视频 | 亚洲 中文 欧美 日韩 在线观看 | 欧美日韩国产综合在线 | 亚洲成人免费在线 | 日本三级在线观看中文字 | 亚洲第一成年免费网站 | 久久久久久国产一级毛片高清版 | 久久久精品日本 | 国产精品一区二区三区av | 精品久久久久久久 | 欧美一级片免费播放 | 午夜国产羞羞视频免费网站 | 毛片毛片毛片毛片毛片毛片 | 国产精品精品久久久 | 91久久精品一区 | 婷婷激情五月 | 欧美精品一区二区三区在线四季 | 99成人在线视频 | 天天影视网色香欲综合网无拦截 | 国产精品亚洲精品久久 | 国产精品视频 | 亚洲精品一区二区三区在线观看 | 欧美激情自拍偷拍 | 黄色av网站免费 | 国产精品无码永久免费888 | 天天操天天碰 | 国产成人影院在线观看 | 精品国产一区二区三区久久久久久 | 久久久一区二区 | 亚洲免费观看视频 | 中文字幕一区在线观看 | 国产午夜久久 | 亚洲日本二区 | 黄色免费网站观看 | jjzz18国产| 视频在线一区二区 | 久久久久久久久久久久91 | 中文字幕一区二区三区乱码图片 | 亚洲福利一区 | 久久综合热 | 成人a在线视频 | 一级片在线观看 | 欧美夜夜骑 | 国产精品久久久久久一区二区三区 | 午夜久久久| 欧美日韩一区二区不卡 | 日韩国产欧美视频 | 成人在线看片 | 神马久久精品 | 日韩综合网 | 亚洲精选国产 | 欧美一区视频 | 精品九九 | 热99这里只有精品 | 精一区二区 | 久久精品免费观看 | 国产欧美日韩综合精品 | 国产成人久久精品一区二区三区 | 久久激情网 | 午夜精品一区 | 高清成人| 精品毛片 | 日韩成人精品视频 | 国产三区在线视频 | 亚洲高清视频在线 | 狠狠操精品视频 | 久久成人视屏 | 青青久久网 | 亚洲一区二区av | 一级做a爰片性色毛片2021 | 最近韩国日本免费观看mv免费版 | 中文字幕永久第一页 | 欧美日韩大陆 | 日韩在线免费 | 国产特级毛片aaaaaa毛片 | 97国产精品视频 | 久久久久亚洲一区二区三区 | 精品国产乱码久久久久久1区2区 | 一本一本久久a久久精品综合妖精 | 亚洲精品一区二区三区在线 | 在线观看中文字幕 | 在线观看国产精品一区二区 | 精品久久久久久久久久久久久 | 国产高清在线精品一区二区三区 | 欧美国产日韩在线观看 | 超碰在线播 | 亚洲三级视频 | 亚洲网站在线观看 | 欧美日韩免费一区二区三区 | 亚洲国产视频一区 | 日韩精品视频久久 | 美女久久久 | 久久久久国产精品午夜一区 | 久久国产欧美日韩精品 | 亚洲一区中文字幕在线 | 一区二区av| 三级精品 | 日韩亚洲欧美综合 | 毛片a在线 | caoporon| 99亚洲视频| 久久精品成人 | 亚洲精品成人 | 色综合国产 | 在线播放国产精品 | 日韩在线播放一区 | 亚洲精品乱码久久久久久国产主播 | 国产视频一区二区 | 四虎884a | 国产伦精品一区二区三区四区视频 | 青草青草久热精品视频在线观看 | 国产一区二区三区四区五区 | 看全黄大色黄大片老人做 | 久久久91精品国产一区二区三区 | 欧美一区二区三 | 成人精品在线视频 | 亚洲精品一区二三区不卡 | 久久久国产精品入口麻豆 | 成人在线三级 | 中文字幕亚洲一区二区va在线 | 一区二区三区免费 | 国产免费黄视频 | 三区影院 | 91精品国产91久久综合桃花 | 欧美99| 一区二区三区四区在线 | 少妇激烈床戏视频 | 久久久久久久久久毛片 | 亚洲久久久久久 | 欧美成人黑人xx视频免费观看 | 亚洲青涩在线 | 精品免费国产 | 在线观看国产小视频 | 国产高清一级 | 欧美 日韩 国产 一区 | 日本免费在线视频 | 久久国产精品久久精品 | 国产精品久久久久久久久久ktv | 精品一区二区三区三区 | 国产日韩一区二区 | 91av在 | 亚洲精品国产a久久久久久 国产毛片毛片 | 欧美性猛交一区二区三区精品 | 久久久久久久久国产 | 国产精品com | 高清xxxx | 精品国产不卡一区二区三区 | 国产二区免费 | 在线观看欧美一区 | 嫩草网站在线观看 | 理论黄色片 | 狠狠躁夜夜躁人人爽天天高潮 | 极品一区 | 亚洲精品一区国语对白 | 春色导航 | 成人精品一区二区三区中文字幕 | 性色视频在线观看 | 99久久视频| 视频在线一区 | 亚洲成人中文字幕 | 伊人网视频在线 | 国产精品久久久久久久久晋中 | 亚洲精品乱码 |