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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

使用mybatis的interceptor修改执行sql以及传入参数

發(fā)布時(shí)間:2023/12/15 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用mybatis的interceptor修改执行sql以及传入参数 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
項(xiàng)目中途遇到業(yè)務(wù)需求更改,在查詢某張表時(shí)需要增加條件,由于涉及的sql語句多而且依賴其他服務(wù)的jar,逐個(gè)修改sql語句和接口太繁雜。項(xiàng)目使用mybatis框架,因此借鑒PageHelper插件嘗試使用mybatis的Interceptor來實(shí)現(xiàn)改需求。
總體思路:
  • 從BoundSql中獲取sql,通過正則匹配替換表名為子查詢REPLACE_TXT
  • 添加子查詢REPLACE_TXT 中需要用到的參數(shù)到mybatis參數(shù)列表中
  • 添加參數(shù)與占位符映射,即添加ParameterMapping對象到ParameterMappings中,由于statement在執(zhí)行時(shí)是按照ParameterMappings的元素索引定位占位符封裝參數(shù)(即ParameterMappings中的第一個(gè)參數(shù)會封裝到第一個(gè)占位符上),因此ParameterMappings中的參數(shù)順序需要和占位符保持一致。其次ParameterMappings的元素個(gè)數(shù)需要和占位符個(gè)數(shù)保持一致。
  • 為了保證該intercept在最后執(zhí)行,使用AutoConfiguration將intercept添加到SqlSessionFactory的Configuration中,并在spring.factories文件中添加AutoConfiguration
  • 未測試性能以及是否存在未知缺陷
1、Interceptor 代碼實(shí)現(xiàn)
package org.cnbi.project.other.sql.intercept;import cn.hutool.core.util.NumberUtil; import com.cnbi.cloud.common.core.exception.ServiceException; import com.github.pagehelper.Page; import com.github.pagehelper.util.ExecutorUtil; import com.github.pagehelper.util.MetaObjectUtil; import org.apache.ibatis.builder.annotation.ProviderSqlSource; import org.apache.ibatis.cache.CacheKey; import org.apache.ibatis.executor.Executor; import org.apache.ibatis.mapping.BoundSql; import org.apache.ibatis.mapping.MappedStatement; import org.apache.ibatis.mapping.ParameterMapping; import org.apache.ibatis.plugin.*; import org.apache.ibatis.reflection.MetaObject; import org.apache.ibatis.session.ResultHandler; import org.apache.ibatis.session.RowBounds; import org.cnbi.project.other.sql.aop.PeriodHolder; import java.util.*; import java.util.regex.Matcher; import java.util.regex.Pattern;/*** @ClassName ParamInterceptor* @Description 修改接口太繁瑣,直接用mybatis攔截器對查詢sql進(jìn)行攔截,將期間參數(shù)注入sql* @Author Wangjunkai* @Date 2019/10/23 11:36**/ @Intercepts({@Signature(type = Executor.class, method = "query", args = {MappedStatement.class, Object.class, RowBounds.class, ResultHandler.class}),@Signature(type = Executor.class, method = "query", args = {MappedStatement.class, Object.class, RowBounds.class, ResultHandler.class, CacheKey.class, BoundSql.class}) } ) public class ParamInterceptor implements Interceptor {private final static Pattern DW_DIMCOMPANY = Pattern.compile("dw_dimcompany", Pattern.CASE_INSENSITIVE);private final static String REPLACE_TXT = "(select * from dw_dimcompany where cisdel = '0' and START_PERIOD <= ? and END_PERIOD > ?)";@Overridepublic Object intercept(Invocation invocation) throws Throwable {Object[] args = invocation.getArgs();MappedStatement ms = (MappedStatement) args[0];Object parameter = args[1];RowBounds rowBounds = (RowBounds) args[2];ResultHandler resultHandler = (ResultHandler) args[3];Executor executor = (Executor) invocation.getTarget();CacheKey cacheKey;BoundSql boundSql;if(args.length == 4){boundSql = ms.getBoundSql(parameter);} else {boundSql = (BoundSql) args[5];}//獲取sql語句,使用正則忽略大小寫匹配String sql = boundSql.getSql();Matcher matcher = DW_DIMCOMPANY.matcher(sql);//沒有需要替換的表名則放行if(!matcher.find()){return invocation.proceed();}//收集占位符個(gè)數(shù)(即paramIndex 的size)以及占位符次序(slot:即參數(shù)在ParameterMappings中的順序)int index = 0;ArrayList<Integer> paramIndex = new ArrayList<>();while(matcher.find(index)){index = matcher.end();String sqlPart = sql.substring(0, index);int slot = index - sqlPart.replace("?", "").length() + paramIndex.size() ;paramIndex.add(slot);paramIndex.add(slot + 1);}//替換子查詢String companyPeriodSql = matcher.replaceAll(REPLACE_TXT);cacheKey = args.length == 4 ? executor.createCacheKey(ms, parameter, rowBounds, boundSql) : (CacheKey) args[4];//處理參數(shù)Object parameterObject = processParameterObject(ms, parameter, boundSql, cacheKey, paramIndex);BoundSql companyPeriodBoundSql = new BoundSql(ms.getConfiguration(), companyPeriodSql, boundSql.getParameterMappings(), parameterObject);Map<String, Object> additionalParameters = ExecutorUtil.getAdditionalParameter(boundSql);//設(shè)置動態(tài)參數(shù)for (String key : additionalParameters.keySet()) {companyPeriodBoundSql.setAdditionalParameter(key, additionalParameters.get(key));}return executor.query(ms, parameterObject, RowBounds.DEFAULT, resultHandler, cacheKey, companyPeriodBoundSql);}public Object processParameterObject(MappedStatement ms, Object parameterObject, BoundSql boundSql, CacheKey pageKey, ArrayList<Integer> paramIndex) {//處理參數(shù)Map<String, Object> paramMap = null;if (parameterObject == null) {paramMap = new HashMap<>();} else if (parameterObject instanceof Map) {//解決不可變Map的情況paramMap = new HashMap<>();paramMap.putAll((Map) parameterObject);} else {paramMap = new HashMap<>();// sqlSource為ProviderSqlSource時(shí),處理只有1個(gè)參數(shù)的情況if (ms.getSqlSource() instanceof ProviderSqlSource) {String[] providerMethodArgumentNames = ExecutorUtil.getProviderMethodArgumentNames((ProviderSqlSource) ms.getSqlSource());if (providerMethodArgumentNames != null && providerMethodArgumentNames.length == 1) {paramMap.put(providerMethodArgumentNames[0], parameterObject);paramMap.put("param1", parameterObject);}}//動態(tài)sql時(shí)的判斷條件不會出現(xiàn)在ParameterMapping中,但是必須有,所以這里需要收集所有的getter屬性//TypeHandlerRegistry可以直接處理的會作為一個(gè)直接使用的對象進(jìn)行處理boolean hasTypeHandler = ms.getConfiguration().getTypeHandlerRegistry().hasTypeHandler(parameterObject.getClass());MetaObject metaObject = MetaObjectUtil.forObject(parameterObject);//需要針對注解形式的MyProviderSqlSource保存原值if (!hasTypeHandler) {for (String name : metaObject.getGetterNames()) {paramMap.put(name, metaObject.getValue(name));}}//下面這段方法,主要解決一個(gè)常見類型的參數(shù)時(shí)的問題if (boundSql.getParameterMappings() != null && boundSql.getParameterMappings().size() > 0) {for (ParameterMapping parameterMapping : boundSql.getParameterMappings()) {String name = parameterMapping.getProperty();if (!name.equals(GLOBALPERIOD)&& paramMap.get(name) == null) {if (hasTypeHandler|| parameterMapping.getJavaType().equals(parameterObject.getClass())) {paramMap.put(name, parameterObject);break;}}}}}return processPageParameter(ms, paramMap, boundSql, pageKey, paramIndex);}private final static String GLOBALPERIOD = "globalPeriod";public Object processPageParameter(MappedStatement ms, Map<String, Object> paramMap, BoundSql boundSql, CacheKey pageKey, ArrayList<Integer> paramIndex) {paramMap.put(GLOBALPERIOD, getPeriod());//處理pageKeypageKey.update(getPeriod());//處理參數(shù)配置handleParameter(boundSql, ms, paramIndex);return paramMap;}protected void handleParameter(BoundSql boundSql, MappedStatement ms, ArrayList<Integer> paramIndex) {if (boundSql.getParameterMappings() != null) {List<ParameterMapping> newParameterMappings = new ArrayList<>(boundSql.getParameterMappings());for (Integer index : paramIndex) {if(index < newParameterMappings.size()) {newParameterMappings.add(index, new ParameterMapping.Builder(ms.getConfiguration(), GLOBALPERIOD, String.class).build());}else{newParameterMappings.add(new ParameterMapping.Builder(ms.getConfiguration(), GLOBALPERIOD, String.class).build());}}MetaObject metaObject = MetaObjectUtil.forObject(boundSql);metaObject.setValue("parameterMappings", newParameterMappings);}}private final static String Q = "Q";private final static String H = "H";private String getPeriod(){//使用threadlocal保存從request中獲取的參數(shù),此處不再描述String period = PeriodHolder.getPeriod();if(NumberUtil.isNumber(period)){return period;}else if(period.contains(Q)){return period.substring(0, 4) + Integer.parseInt(period.substring(5)) * 3;}else if(period.contains(H)){return period.substring(0, 4) + Integer.parseInt(period.substring(5)) * 6;}else{throw new ServiceException("非法期間:" + period);}}@Overridepublic Object plugin(Object target) {return Plugin.wrap(target, this);}@Overridepublic void setProperties(Properties properties) {//nothing to do...} }
2、AutoConfiguration代碼實(shí)現(xiàn)
package org.cnbi.project.autoconfig;import com.github.pagehelper.autoconfigure.PageHelperAutoConfiguration; import org.apache.ibatis.session.SqlSessionFactory; import org.cnbi.project.other.sql.intercept.ParamInterceptor; import org.mybatis.spring.boot.autoconfigure.MybatisAutoConfiguration; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.AutoConfigureAfter; import org.springframework.context.annotation.Configuration;import javax.annotation.PostConstruct; import java.util.Iterator; import java.util.List;/*** @ClassName ParamIntecepterAutoConfiguration* @Description* @Author Wangjunkai* @Date 2019/10/23 15:41**/ @AutoConfigureAfter({MybatisAutoConfiguration.class, PageHelperAutoConfiguration.class}) @Configuration public class ParamIntecepterAutoConfiguration {@Autowiredprivate List<SqlSessionFactory> sqlSessionFactoryList;public ParamIntecepterAutoConfiguration() {}@PostConstructpublic void addParamInterceptor() {ParamInterceptor interceptor = new ParamInterceptor();Iterator var3 = this.sqlSessionFactoryList.iterator();while(var3.hasNext()) {SqlSessionFactory sqlSessionFactory = (SqlSessionFactory)var3.next();sqlSessionFactory.getConfiguration().addInterceptor(interceptor);}} }

博主個(gè)人微信:

總結(jié)

以上是生活随笔為你收集整理的使用mybatis的interceptor修改执行sql以及传入参数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

欧美久久久久久久久久久久久 | 成人黄色一级视频 | 美女国产在线 | 黄色视屏在线免费观看 | 在线电影av | 中文字幕在线播放一区 | 免费av看片 | 亚洲在线色 | 91在线成人 | 在线 视频 一区二区 | 国产综合在线视频 | 中文区中文字幕免费看 | 中文字幕在线视频一区二区 | www.久久视频| 日日夜夜狠狠干 | 97人人澡人人爽人人模亚洲 | 日韩网站在线播放 | 午夜黄色影院 | 亚洲精品午夜国产va久久成人 | 丁香影院在线 | 一本一道久久a久久精品 | 国产999免费视频 | 国产精品欧美久久久久三级 | 最新一区二区三区 | 久久婷婷精品 | 亚洲综合成人专区片 | 亚洲第一中文字幕 | 色.www | 色偷偷97 | 97色资源 | 亚洲精品视频久久 | 亚洲第一区在线播放 | 欧美日韩国产在线精品 | 亚洲精品在线观看免费 | 婷婷综合av | 欧美日韩不卡在线视频 | 亚洲精品1区2区3区 超碰成人网 | 人人草天天草 | 日本公乱妇视频 | 亚洲综合成人婷婷小说 | 日韩在线不卡视频 | 在线播放一区二区三区 | 久久国内精品 | 精品高清视频 | 狠狠操精品| 久青草视频| 97超视频在线观看 | 在线观看久久久久久 | 色资源在线 | 九九九在线观看 | 91亚洲精品国偷拍 | 亚洲午夜精品久久久久久久久 | 国产一区二区视频在线播放 | 国产精品一区二区在线看 | 97热视频| 91精品999 | 成人a毛片| 99欧美视频 | 国产99久| aaa日本高清在线播放免费观看 | 国产免费一区二区三区最新 | 麻豆传媒视频在线免费观看 | 一区二区三区四区在线 | 韩国三级在线一区 | 97超碰人人澡 | 色国产精品一区在线观看 | 亚洲欧美在线综合 | 国产色综合天天综合网 | 国产免费久久久久 | 婷婷中文字幕 | 夜夜夜 | 91网页版免费观看 | 激情丁香在线 | 成年人免费在线观看网站 | 97国产在线播放 | 娇妻呻吟一区二区三区 | 久久人人爽人人片 | 97精品国产91久久久久久久 | 国产高清视频免费在线观看 | av天天澡天天爽天天av | 在线香蕉视频 | 色综合久久久久网 | 一级精品视频在线观看宜春院 | 免费手机黄色网址 | 五月婷婷丁香色 | 少妇bbb| 不卡av免费在线观看 | 中文字幕在线观看免费高清完整版 | 99精品欧美一区二区蜜桃免费 | 国产成人在线观看免费 | 色吧av色av| 国产少妇在线观看 | 国产色视频网站 | 日本中文字幕在线视频 | 久久精品福利 | 中文字幕一二 | 精品视频9999 | 日韩免费视频一区二区 | 四川bbb搡bbb爽爽视频 | 国产在线观看,日本 | 五月婷婷综合在线观看 | 日韩毛片久久久 | 五月激情片 | 成年人免费在线观看网站 | 国产成人一区二区精品非洲 | 高清av中文在线字幕观看1 | 欧洲精品在线视频 | 欧美一级片免费 | 人人搞人人搞 | 天天草天天色 | 在线观看午夜 | 亚洲欧洲国产日韩精品 | 日本九九视频 | 国产精品免费久久久久影院仙踪林 | 久久理论视频 | 天天摸天天干天天操天天射 | 亚洲一级特黄 | 超碰在线成人 | 国产成人精品一区二区三区福利 | 成 人 黄 色 片 在线播放 | 欧美视频在线观看免费网址 | 天天做天天爱天天爽综合网 | 九九交易行官网 | 国产精品96久久久久久吹潮 | 91精品在线视频观看 | 97操碰| 91精品国产99久久久久 | 青青河边草免费直播 | 国产精品一区二区果冻传媒 | 亚州人成在线播放 | 久久久国产精品麻豆 | 国产黄色免费看 | 久久久久久久久久久免费视频 | h视频在线看 | 免费又黄又爽视频 | 狠狠躁18三区二区一区ai明星 | 日韩av在线小说 | 国产精品一区在线观看你懂的 | www.夜色321.com| 国产精品久久久久国产精品日日 | 国产成人精品一区二区三区网站观看 | 国产视频一区在线免费观看 | 成年人在线观看 | 九九免费在线观看视频 | 国产在线 一区二区三区 | 欧美小视频在线观看 | 国产婷婷vvvv激情久 | 成人在线视频一区 | 亚洲天堂在线观看完整版 | 奇米7777狠狠狠琪琪视频 | 高清一区二区三区av | 欧美日韩一区二区三区免费视频 | 天天爱天天 | 国产中文在线播放 | 91精品免费在线 | 国产日韩欧美在线影视 | 国产午夜精品久久久久久久久久 | 亚洲综合导航 | 久久综合久色欧美综合狠狠 | av线上看 | 国产精品久久在线观看 | 看黄色.com| 色噜噜狠狠狠狠色综合 | www夜夜操 | 久久久黄色免费网站 | 欧美一区日韩精品 | 午夜视频二区 | 日韩久久精品一区二区 | www九九热| 激情视频区 | 亚洲香蕉视频 | 国产福利一区二区三区视频 | 色婷婷精品| 国产男女无遮挡猛进猛出在线观看 | 午夜电影中文字幕 | 中日韩三级视频 | 三级毛片视频 | 在线播放视频一区 | 日韩成片 | 色视频 在线 | 手机看片国产日韩 | 日韩高清激情 | 国内久久视频 | 97电影网手机版 | 亚洲精品乱码白浆高清久久久久久 | 国产白浆视频 | 青青河边草免费观看完整版高清 | 国产理论影院 | 97免费公开视频 | 久久成人午夜 | 日韩精品在线免费观看 | 日日日日 | 天天综合导航 | 亚洲精品婷婷 | 五月天伊人 | www.888.av| 综合激情网 | 婷婷激情网站 | 成人黄色大片在线免费观看 | 亚洲另类在线视频 | 久久久一本精品99久久精品66 | 欧美日韩国产高清视频 | 99精品视频免费 | 日韩精品一区二区三区三炮视频 | 久久久99精品免费观看乱色 | 中文字幕在线高清 | 欧美日韩在线精品一区二区 | 射射色 | 国产精品婷婷午夜在线观看 | 男女精品久久 | 亚洲精品在线观看不卡 | 最新国产精品亚洲 | 久草精品视频 | 久久国产精品二国产精品中国洋人 | 毛片网站在线看 | 国内外成人在线视频 | 国产精品99爱 | 久久视 | 日韩视频在线不卡 | 日韩精品一区二区三区在线视频 | 超碰人人超 | 美女精品久久久 | 三级在线视频播放 | 超碰97人人在线 | 国产精品久久99综合免费观看尤物 | 亚洲国产美女久久久久 | 国产精品6999成人免费视频 | 久久99精品波多结衣一区 | 亚洲天堂色婷婷 | 少妇视频一区 | 国产视频亚洲 | 人人干人人上 | 狠狠狠色丁香婷婷综合久久五月 | 中文字幕人成人 | 麻豆视频免费看 | 97超视频在线观看 | 国产 日韩 欧美 在线 | 黄污网站在线观看 | 91女人18片女毛片60分钟 | 中文字幕在线观看你懂的 | 韩日在线一区 | 正在播放五月婷婷狠狠干 | 久久爽久久爽久久av东京爽 | 国内精品99 | 一区中文字幕在线观看 | 在线久热| 久草在线视频精品 | 91福利视频免费观看 | 色婷婷99| 国产一二三四在线观看视频 | 午夜精品99久久免费 | 在线不卡中文字幕播放 | 麻豆91小视频 | 天天想夜夜操 | 97视频在线观看视频免费视频 | 日韩精品高清不卡 | 国产片免费在线观看视频 | 亚洲精品字幕在线观看 | 中文不卡视频在线 | 国产精品videoxxxx | 成人va天堂 | 91精品推荐| 国产黄网站在线观看 | 久久免费看毛片 | 欧美性视频网站 | 久久精品综合一区 | 麻豆精品视频在线观看免费 | 91成品人影院 | 免费观看性生交大片3 | 永久免费精品视频网站 | 中文字幕第一页av | 国产精品久久久久久av | 久草在线视频看看 | 日日综合| 国产在线看一区 | 亚洲综合成人婷婷小说 | 91午夜精品| 日韩一级片网址 | 激情av资源 | 欧美人体xx | 在线视频婷婷 | 91网站在线视频 | 亚洲精品久久激情国产片 | a√资源在线| 精品国产一区二区三区四区vr | 91在线公开视频 | 日本中文字幕在线免费观看 | 午夜成人免费电影 | 韩国三级一区 | 国产一区二区手机在线观看 | 久久精选视频 | 色婷婷久久一区二区 | 日韩日韩日韩日韩 | 色姑娘综合天天 | 国产91精品一区二区绿帽 | 天堂av在线7 | 日韩性色 | 日韩免费一区二区在线观看 | 99国产在线 | 午夜在线日韩 | 伊人亚洲精品 | 91 在线视频播放 | 天天干,天天操,天天射 | 久久国产精品免费一区二区三区 | 9999在线视频 | 五月婷婷久 | 色综合激情久久 | 成年人网站免费在线观看 | 国产一级做a爱片久久毛片a | 在线免费观看国产视频 | 日韩国产欧美视频 | 毛片a级片| 三级动态视频在线观看 | 日韩av电影一区 | 日韩免费高清在线 | 国产99久久久国产精品成人免费 | 免费在线a| 日日爽夜夜爽 | 麻豆免费在线视频 | 五月婷婷视频在线 | 欧美韩国日本在线观看 | 手机成人免费视频 | 福利视频网址 | 亚洲免费色 | 开心色停停 | 日日草夜夜操 | 国产精品1区2区3区在线观看 | 国产精品久久久久婷婷二区次 | www.伊人网| 狠狠亚洲 | 欧美一级日韩免费不卡 | 国产一区在线视频播放 | 久久专区| 开心色插| 久久久久久免费毛片精品 | 在线看国产 | 国产精品久久久电影 | 精品国产123 | 91精品婷婷国产综合久久蝌蚪 | 中文字幕之中文字幕 | 日日夜夜精品免费 | 国产一级二级三级在线观看 | 久久99久久99久久 | 91精品无人成人www | 7777xxxx| 国产xvideos免费视频播放 | 国产在线观看一 | 一区二区激情 | 欧美成年网站 | 婷婷色狠狠 | 久热色超碰 | 天天综合成人网 | 久久综合九色综合欧美就去吻 | av3级在线 | 999国内精品永久免费视频 | 久久这里只有精品久久 | 在线观看免费色 | av免费网站在线观看 | 天天摸天天舔天天操 | 69精品视频在线观看 | 精品视频99 | 亚洲高清国产视频 | 97超碰在线久草超碰在线观看 | 精品久久久影院 | 网站在线观看日韩 | 91色吧 | 国产精品免费成人 | 99视频在线免费 | 国产黄色片免费看 | 黄色影院在线免费观看 | 国内精品久久久久久久久久清纯 | 在线观看亚洲国产精品 | 成年人av在线播放 | 懂色av懂色av粉嫩av分享吧 | 日韩亚洲精品电影 | 亚洲国产欧洲综合997久久, | 久久久91精品国产一区二区三区 | 久久免费在线视频 | 一区二区三区福利 | 最新真实国产在线视频 | 99精品视频在线观看免费 | 日韩二区三区 | 亚洲国产中文字幕 | www.少妇 | 999视频在线播放 | 豆豆色资源网xfplay | 中文字幕在线观看网 | 国产在线精品福利 | 久久精品一区二区三区国产主播 | 九九九在线观看视频 | 久久成人毛片 | 中文字幕av全部资源www中文字幕在线观看 | 国产精品久久久久av免费 | 国产资源免费 | 亚洲视频免费在线看 | 亚洲成人免费在线观看 | 亚洲h在线播放在线观看h | 97超在线 | av大片免费 | 色网站免费在线看 | 亚洲精品乱码久久 | 在线免费国产视频 | 视频一区视频二区在线观看 | 一本一道久久a久久综合蜜桃 | 日韩在线观看视频网站 | 国产伦理剧 | 中文字幕在线观看免费 | 黄色三级网站在线观看 | 午夜电影久久久 | 精品国产视频一区 | 亚洲精品久久久蜜桃直播 | 免费在线观看成年人视频 | 激情综合网婷婷 | 狠狠操电影网 | av在线亚洲天堂 | 456成人精品影院 | 久99久精品视频免费观看 | 综合网中文字幕 | 久久久久久久久艹 | 欧美日韩免费看 | 国产 日韩 中文字幕 | 日本中文字幕电影在线免费观看 | 精品福利网 | 91精品国产一区二区在线观看 | av大全在线| 综合色婷婷 | 精品视频在线观看 | 成人免费视频在线观看 | 人人超碰在线 | 伊人开心激情 | 精品久久国产一区 | 亚洲经典视频在线观看 | 波多野结衣一区三区 | 国产精品18久久久久久久久久久久 | 亚洲波多野结衣 | 久草视频视频在线播放 | 久久精品在线免费观看 | 欧美色就是色 | 免费高清在线观看电视网站 | 一区二区三区在线观看免费视频 | 欧美大片在线观看一区 | 国产一级一片免费播放放 | 亚洲人视频在线 | 国产又粗又猛又黄视频 | 国产免费观看久久黄 | 国产精品久久久久久久电影 | 亚洲aⅴ乱码精品成人区 | 日韩精品大片 | 啪啪动态视频 | 黄色小说18 | 精品在线视频一区二区三区 | 五月天中文字幕mv在线 | 亚洲第一成网站 | 亚洲婷婷丁香 | 久久国产精品99精国产 | 国产精品理论片在线观看 | 91福利在线观看 | av免费福利 | 成人中心免费视频 | 亚洲激情一区二区三区 | 黄色一级网 | 中文资源在线官网 | 久久精品波多野结衣 | 天天色棕合合合合合合 | 国产精品福利小视频 | 亚洲劲爆av| 国产精品精品久久久 | 超碰97在线人人 | 亚洲精品乱码白浆高清久久久久久 | 少妇资源站 | 日韩电影一区二区在线 | 日韩精品大片 | 久久草草影视免费网 | 一区二区三区四区免费视频 | 免费在线观看一级片 | 97超碰伊人| 午夜精品一区二区三区在线视频 | 91精品一区国产高清在线gif | 国产精品国产三级国产不产一地 | 色狠狠一区二区 | 天天干,夜夜操 | 69精品视频在线观看 | 在线一区电影 | 国产精品高潮久久av | 在线性视频日韩欧美 | 国产麻豆精品一区 | 国产精品毛片一区视频播不卡 | 一区二区三区日韩视频在线观看 | 国产免费观看视频 | 五月激情视频 | 国产伦精品一区二区三区高清 | av中文字幕在线观看网站 | 狠狠色丁香久久综合网 | 精品国产伦一区二区三区免费 | 色综合天天综合在线视频 | 国产精品久久久久999 | 黄色小视频在线观看免费 | 五月天色综合 | 国产女人40精品一区毛片视频 | 亚洲成人动漫在线观看 | 成人av网页| 国产自产高清不卡 | 美女免费视频黄 | 天天爽网站| www.香蕉视频在线观看 | 亚洲激情影院 | 国产日韩欧美在线免费观看 | 91精品国产三级a在线观看 | 久久久综合| 国产日韩视频在线观看 | 精品女同一区二区三区在线观看 | 在线免费观看国产视频 | 久久成熟 | 久久精品播放 | 婷婷伊人综合亚洲综合网 | av看片在线观看 | 久久黄色网页 | 在线播放 日韩专区 | 456免费视频 | 日韩在线中文字幕视频 | 在线视频观看国产 | 国产亚洲欧美一区 | 激情av一区二区 | 91九色porny在线 | 日韩乱码中文字幕 | 日韩欧美在线视频一区二区三区 | 黄色国产区| 色婷婷一区 | 国内精品久久久久久久影视麻豆 | 欧美精品一区在线 | 精品一二三四五区 | 久久精品伊人 | 黄污网 | 97视频人人澡人人爽 | 夜夜夜草 | av电影不卡| 亚洲精品88欧美一区二区 | 久久久99精品免费观看 | 中文字幕.av.在线 | 亚洲综合在线一区二区三区 | 免费在线观看黄色网 | 片网站| 久久任你操| 黄色1级毛片 | 丁香六月婷婷开心婷婷网 | 欧美精品在线观看 | 日韩精品欧美专区 | 91欧美视频网站 | 久久 国产一区 | 亚洲香蕉视频 | 久久黄色影院 | 久久露脸国产精品 | 婷婷丁香六月天 | 精品日韩中文字幕 | 蜜臀久久99精品久久久久久网站 | 久久这里只精品 | 最新色站 | 97福利在线观看 | 日韩中文字幕国产 | www.久久久久 | 国产精品久久久99 | 91大神精品视频 | 天天夜夜操 | 在线观看一区 | 日日草视频| 国产精品第 | 亚洲激情中文 | 国产高h视频 | 亚洲高清在线 | 国产精品一区二区三区四 | 亚州精品天堂中文字幕 | 久久99国产精品免费 | 亚洲黄色在线观看 | 日韩最新中文字幕 | 欧美伦理电影一区二区 | 亚洲综合一区二区精品导航 | 国产午夜精品av一区二区 | 热久久这里只有精品 | 国产高清免费在线观看 | 欧美黑人性爽 | 国产视频一 | 久久久国产精品亚洲一区 | 一区 二区电影免费在线观看 | 一区二区三区免费看 | 国产精品久久久久婷婷二区次 | 三级黄色免费 | 久久99精品国产一区二区三区 | 亚洲欧洲精品视频 | 美女久久久 | 久久精品国产一区二区 | 99久久精品国 | 成人精品国产 | 免费福利在线观看 | 啪啪肉肉污av国网站 | 欧美少妇的秘密 | 日韩com | 天天干 天天摸 天天操 | 国产原创在线视频 | 亚洲资源在线 | 最新极品jizzhd欧美 | 免费一级片在线观看 | 成年人黄色免费网站 | 国产69久久精品成人看 | 中文字幕精品久久 | 国产精品毛片久久 | 99久久精品免费看国产四区 | 欧美高清视频不卡网 | 久久一区二区三区四区 | adc在线观看 | 日韩精品中文字幕在线观看 | 久久电影国产免费久久电影 | 国产成人黄色片 | 欧美性大战 | 国产精品成人一区二区 | 在线观看你懂的网站 | 麻豆免费看片 | 91传媒在线 | 国产专区在线 | 亚洲天堂网站 | 99久久精品久久亚洲精品 | 热久久视久久精品18亚洲精品 | 狠狠天天 | 四虎成人精品永久免费av九九 | 亚洲精品国产精品久久99 | 在线观看免费观看在线91 | 天天操天天射天天添 | 四虎永久国产精品 | 成人欧美一区二区三区黑人麻豆 | 亚洲夜夜综合 | 日韩欧美在线观看 | 欧美日韩二区在线 | 日本黄色免费在线 | 99久久99久久精品免费 | 亚洲国产精品影院 | www.色就是色| 国产在线色站 | 国产在线免费 | 久久视频6 | 久草在线视频资源 | 国产一级在线观看视频 | 久久国产精品99国产精 | 亚洲a资源| 又色又爽又黄高潮的免费视频 | 国产精品18久久久久久久 | 成人免费一区二区三区在线观看 | 在线观看91久久久久久 | 免费a现在观看 | 97精品电影院 | www.天天射| 免费激情在线电影 | 天天爽夜夜操 | 高清日韩一区二区 | 国产精品青草综合久久久久99 | 久久国产精品99久久久久久丝袜 | 超碰在线人人艹 | 亚洲最新av网站 | 91精品国产91久久久久久三级 | 色吧久久 | 亚洲va男人天堂 | 欧美福利网址 | 亚洲精品在线视频播放 | 国际精品网 | 五月婷婷六月丁香激情 | 欧美性生活一级片 | 黄网站www| 国产激情电影综合在线看 | 精品国产乱码久久久久久浪潮 | 国产美女精品人人做人人爽 | 国产在线精品二区 | 999免费视频 | 婷婷色中文网 | 性日韩欧美在线视频 | 成人av免费在线播放 | 国产一二区视频 | 91一区在线观看 | 日韩在线观看视频网站 | 国产私拍在线 | 91九色视频国产 | 中文字幕精品一区二区精品 | 亚洲精品视频中文字幕 | 最近2019年日本中文免费字幕 | 色综合中文综合网 | 成人永久免费 | 麻豆视频免费网站 | 99久久一区 | 在线免费视频一区 | 综合色在线观看 | 久久99精品久久久久婷婷 | 日韩欧美在线观看一区二区 | 99精品福利 | 免费看一级特黄a大片 | 日韩精品中文字幕久久臀 | 亚洲精品玖玖玖av在线看 | 91高清视频 | 日韩在线一区二区免费 | 99热都是精品 | 成人午夜精品 | 免费视频a | 91精品国 | 草久草久| 亚洲精品男女 | 青青看片 | 欧美aa一级 | 丁香婷婷基地 | 久久久久久久久久免费视频 | 日韩久久精品 | 久久99久国产精品黄毛片入口 | 一区av在线播放 | 在线观看视频免费大全 | 在线视频日韩欧美 | 热久久免费视频 | 成人电影毛片 | 97精品一区二区三区 | 日韩电影中文字幕在线 | 亚洲成a人片在线www | 亚洲成av人影片在线观看 | 草久视频在线观看 | 日本精品久久久久中文字幕5 | 国产乱对白刺激视频在线观看女王 | 久久综合网色—综合色88 | 欧美日韩国产色综合一二三四 | 亚洲理论在线观看电影 | 欧美日韩一区二区久久 | 欧美精品国产综合久久 | 中文字幕日韩免费视频 | 精品久久久999 | 亚洲五月激情 | 国产理伦在线 | 久久高清免费视频 | 成人精品视频 | 九九亚洲视频 | 成人在线电影观看 | 国产三级精品三级在线观看 | 69国产精品成人在线播放 | 日韩三级免费观看 | 中文字幕中文字幕在线一区 | 日韩中文字幕a | 大荫蒂欧美视频另类xxxx | 91尤物国产尤物福利在线播放 | 91伊人| 国产精品久久久久久超碰 | 国内偷拍精品视频 | 久久综合99| 国产高清视频在线免费观看 | 99re视频在线观看 | 久久国产视频网站 | 免费观看的黄色片 | 国产亚洲综合性久久久影院 | 午夜精品一区二区三区在线视频 | 波多野结衣视频在线 | 久久久亚洲成人 | 探花视频免费在线观看 | 欧美a在线看 | 91香蕉亚洲精品 | 亚洲1区 在线 | 久久精品一区二区国产 | 97品白浆高清久久久久久 | 日日干干夜夜 | 国产午夜麻豆影院在线观看 | 久久成人国产精品一区二区 | 亚洲视频免费在线看 | 麻豆影音先锋 | 国产精品久久久久久久久搜平片 | 黄色一级在线免费观看 | 国产麻豆果冻传媒在线观看 | 久久久久久免费毛片精品 | 极品久久久久久久 | 欧美激情精品 | 在线 影视 一区 | 丁香视频 | 九九热在线免费观看 | 婷婷精品国产欧美精品亚洲人人爽 | 91精品人成在线观看 | 中文字幕在线免费观看视频 | 精品久久亚洲 | 在线播放日韩av | 国产精品美女久久久久aⅴ 干干夜夜 | 午夜精品一区二区三区四区 | 精品国产一区二区三区在线观看 | 97在线精品国自产拍中文 | av在线最新| 激情欧美一区二区三区免费看 | 婷婷激情av| 国产成人性色生活片 | av在线免费观看网站 | 成人国产一区 | 日韩性片 | 91久久精品一区二区三区 | 国产高清精品在线 | 丁香 久久 综合 | 久久精品综合一区 | 亚洲国内精品视频 | 亚洲精品在线观看中文字幕 | 麻豆av电影 | 午夜国产一区 | 欧美一区二区三区激情视频 | 粉嫩高清一区二区三区 | 91大神免费在线观看 | 久久网址| 五月天欧美精品 | 日韩久久精品一区二区三区 | 成人在线播放网站 | 日韩mv欧美mv国产精品 | 精品一区二区三区四区在线 | 天天操天天玩 | 久久99在线视频 | 欧美午夜久久久 | 在线观看激情av | 日韩成人中文字幕 | 精品福利视频在线观看 | 日本中文字幕在线免费观看 | 成人av在线网 | 国内外成人免费在线视频 | 99久久一区 | 丁香六月婷婷开心婷婷网 | 99精品热视频只有精品10 | 欧美色综合久久 | 国产一级二级在线 | 狠狠色丁香婷婷综合最新地址 | 色丁香久久 | 人人看黄色| 久久黄色网页 | 天天草天天插 | 婷婷色六月天 | 久久久久综合视频 | 免费网站黄色 | 久久国产精品一区二区三区 | 国产精品国产三级国产aⅴ入口 | 亚洲精品国产精品国产 | 久久tv| 五月婷婷综合在线 | 亚洲国产成人在线观看 | 国产在线播放一区二区 | 日韩毛片在线播放 | 国产亚洲精品久 | 免费黄色看片 | 国产在线高清视频 | 国内免费久久久久久久久久久 | 一区电影| 91新人在线观看 | 成人免费观看大片 | 国产手机在线观看视频 | 免费在线观看中文字幕 | 欧美色888 | 久草在线91 | 日韩欧美电影在线 | 久久爱992xxoo | 久热色超碰 | 毛片二区| 亚洲丁香久久久 | 顶级欧美色妇4khd | 99激情网 | 韩国av电影网 | 亚洲国产丝袜在线观看 | 久久激情综合网 | 亚洲天堂网站视频 | 久久精品99国产精品酒店日本 | 蜜臀91丨九色丨蝌蚪老版 | 麻豆影视在线免费观看 | 国产精品一区二区三区在线看 | 国偷自产中文字幕亚洲手机在线 | 日韩av一区二区在线播放 | 日本三级在线观看中文字 | 日韩在线观看电影 | 久久看免费视频 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 欧美小视频在线观看 | 91视频3p| 久久国产亚洲视频 | 中文字幕在线中文 | 在线 成人 | 狠狠色噜噜狠狠狠狠2021天天 | 国产精品视频免费 | 久久试看 | 午夜视频播放 | 手机在线观看国产精品 | 69国产精品视频 | 精品视频久久久 | 国产美女永久免费 | 亚洲欧洲国产精品 | 日本精品中文字幕在线观看 | 日日干干| 日韩成人高清在线 | 欧美日韩国产一区二 | 亚洲久草网 | 99在线热播精品免费 | 人人干,人人爽 | 国产精品一区二 | 久久精品二区 | 国产精品一区二区免费看 | 美女视频一区 | www黄色| 日韩成人精品一区二区三区 | 精品少妇一区二区三区在线 | 精品国产一区二区三区男人吃奶 | 91激情| 91在线入口| 日本精品一区二区三区在线观看 | www久久com | 欧美久久久久久 | 天天艹天天操 | 国产精品久久三 | 婷婷深爱 | 欧美最猛性xxxxx免费 | 激情综合啪啪 | www.色午夜.com| 国产精品欧美久久久久无广告 | 亚洲毛片一区二区三区 | 美女视频黄的免费的 | 在线看日韩av | 国产免费观看久久黄 | 久久激情网站 | 日韩视频中文字幕在线观看 | 国产69精品久久99的直播节目 | 欧美专区日韩专区 | 黄色网址av| 欧美有色 | 免费看黄视频 | 韩日三级av | 天天操夜夜爱 | 精品亚洲免a | 在线观看黄污 | 成人午夜电影免费在线观看 | 日韩成人邪恶影片 | 一区二区三区免费在线观看视频 | 亚洲国产中文字幕在线视频综合 | 91探花视频 | 欧美片网站yy | 激情五月***国产精品 | 超碰97人 | 中文国产字幕 | 中文字幕乱偷在线 | 亚洲精品视频在线观看视频 | 九月婷婷人人澡人人添人人爽 | 九九热精品国产 | 天天婷婷| 黄色影院在线免费观看 | 久久一区二区三区日韩 | 天天久久夜夜 | 超碰在线日韩 | 久久久久久黄 | 久久精品国产v日韩v亚洲 | 玖玖精品视频 | 亚洲 中文 欧美 日韩vr 在线 | 人人舔人人射 | 亚洲另类在线视频 | 国产精品电影一区二区 | 黄色av一区二区三区 | 日韩有码网站 | 国产精品亚洲a | 免费高清在线视频一区· | 日韩久久久久久久久久 | 国产精品久久一区二区无卡 | 西西444www大胆无视频 | 黄色三几片| 亚洲 在线| 国产色视频一区二区三区qq号 | 国产高清福利在线 | 丁五月婷婷 | 国产字幕av| 99精品一区 | 在线精品观看国产 | 精品一区二区日韩 | 久久99亚洲网美利坚合众国 | 欧洲精品在线视频 | 国产手机视频在线 | 欧洲亚洲精品 | 99精品久久久 | 草久久久久久 | 欧美一级电影片 | 久久久久成人精品亚洲国产 | 麻豆影视在线观看 | www.伊人网| 91免费在线 | 国产一级片观看 | 久久视频6| 亚洲美女久久 | 久草.com| 精品乱码一区二区三四区 | 91chinesexxx| 超碰人人干人人 | av在线a | 91精品国产欧美一区二区 | 麻豆精品国产传媒 | 久久兔费看a级 | 久久午夜网 | 狠狠干夜夜 | 国产成人精品一区二区三区网站观看 | 亚洲免费在线 | 久久国产欧美日韩精品 | 日韩视| 久久久久综合 | 中文字幕av日韩 | 大胆欧美gogo免费视频一二区 | 欧美日韩中文在线视频 | 久久午夜影视 | 精品一区二区三区四区在线 | 国产免费资源 |