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

您的位置:首頁技術文章
文章詳情頁

Mybatis 中如何判斷集合的size

瀏覽:3日期:2023-10-20 08:37:04

Mybatis中判斷集合的size,可以用下面的方法來做。

<if test='null != staffCodeList and staffCodeList.size > 0'>and gui.USER_CODE not in<foreach collection='staffCodeList' item='staffCode' open='(' separator=',' close=')'>#{staffCode}</foreach></if>

補充:警惕,MyBatis的size()方法竟然有坑!

Mybatis是一個開源的輕量級半自動化ORM框架,使得面向?qū)ο髴贸绦蚺c關系數(shù)據(jù)庫的映射變得更加容易。

MyBatis使用xml描述符或注解將對象與存儲過程或SQL語句相結(jié)合。 Mybatis最大優(yōu)點是應用程序與Sql進行解耦,sql語句是寫在Xml Mapper文件中。

OGNL表達式在Mybatis當中應用非常廣泛,其表達式的靈活性使得動態(tài)Sql功能的非常強大。

OGNL是Object-Graph Navigation Language的縮寫,代表對象圖導航語言。

OGNL是一種EL表達式語言,用于設置和獲取Java對象的屬性,并且可以對列表進行投影選擇以及執(zhí)行l(wèi)ambda表達式。

Ognl類提供了許多簡便方法用于執(zhí)行表達式的。 Struts2發(fā)布的每個版本都會出現(xiàn)的新的高危可執(zhí)行漏洞也是因為它使用了靈活的OGNL表達式。

公司后端采用Mybatis作為數(shù)據(jù)訪問層,所使用版本為3.2.3。

線上環(huán)境業(yè)務系統(tǒng)在運行過程中出現(xiàn)了一個令人困惑的異常, 該異常時而出現(xiàn)時而不出現(xiàn),構(gòu)造各種OGNL表達式為空等特殊情況均不會重現(xiàn)該異常。

具體異常堆棧信息如下:

### Error querying database. Cause: org.apache.ibatis.builder.BuilderException: Error evaluating expression ’list != null and list.size() > 0’. Cause: org.apache.ibatis.ognl.MethodFailedException: Method 'size' failed for object [1] [java.lang.IllegalAccessException: Class org.apache.ibatis.ognl.OgnlRuntime can not access a member of class java.util.Collections$SingletonList with modifiers 'public']### Cause: org.apache.ibatis.builder.BuilderException: Error evaluating expression ’list != null and list.size() > 0’. Cause: org.apache.ibatis.ognl.MethodFailedException: Method 'size' failed for object [1] [java.lang.IllegalAccessException: Class org.apache.ibatis.ognl.OgnlRuntime can not access a member of class java.util.Collections$SingletonList with modifiers 'public'] at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:23) org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:107) at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:98) at cn.com.shaobingmm.MybatisBugTest$2.run(MybatisBugTest.java:88) at java.lang.Thread.run(Thread.java:745)Caused by: org.apache.ibatis.builder.BuilderException: Error evaluating expression ’list != null and list.size() > 0’. Cause: org.apache.ibatis.ognl.MethodFailedException: Method 'size' failed for object [1] [java.lang.IllegalAccessException: Class org.apache.ibatis.ognl.OgnlRuntime can not access a member of class java.util.Collections$SingletonList with modifiers 'public'] at org.apache.ibatis.scripting.xmltags.OgnlCache.getValue(OgnlCache.java at:47) at org.apache.ibatis.scripting.xmltags.ExpressionEvaluator.evaluateBoolean(ExpressionEvaluator.java:29) at org.apache.ibatis.scripting.xmltags.IfSqlNode.apply(IfSqlNode.java:30) at org.apache.ibatis.scripting.xmltags.MixedSqlNode.apply(MixedSqlNode.java:29) at org.apache.ibatis.scripting.xmltags.TrimSqlNode.apply(TrimSqlNode.java:51) at org.apache.ibatis.scripting.xmltags.MixedSqlNode.apply(MixedSqlNode.java:29) at org.apache.ibatis.scripting.xmltags.DynamicSqlSource.getBoundSql(DynamicSqlSource.java:37) at org.apache.ibatis.mapping.MappedStatement.getBoundSql(MappedStatement.java:275) at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:79) at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:104) ... 3 moreCaused by: org.apache.ibatis.ognl.MethodFailedException: Method 'size' failed for object [1] [java.lang.IllegalAccessException: Class org.apache.ibatis.ognl.OgnlRuntime can not access a member of class java.util.Collections$SingletonList with modifiers 'public'] at org.apache.ibatis.ognl.OgnlRuntime.callAppropriateMethod(OgnlRuntime.java:837) at org.apache.ibatis.ognl.ObjectMethodAccessor.callMethod(ObjectMethodAccessor.java:61) at org.apache.ibatis.ognl.OgnlRuntime.callMethod(OgnlRuntime.java:860) at org.apache.ibatis.ognl.ASTMethod.getValueBody(ASTMethod.java:73) at org.apache.ibatis.ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170) at org.apache.ibatis.ognl.SimpleNode.getValue(SimpleNode.java:210) at org.apache.ibatis.ognl.ASTChain.getValueBody(ASTChain.java:109) at org.apache.ibatis.ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170) at org.apache.ibatis.ognl.SimpleNode.getValue(SimpleNode.java:210) at org.apache.ibatis.ognl.ASTGreater.getValueBody(ASTGreater.java:49) at org.apache.ibatis.ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170) at org.apache.ibatis.ognl.SimpleNode.getValue(SimpleNode.java:210) at org.apache.ibatis.ognl.ASTAnd.getValueBody(ASTAnd.java:56) at org.apache.ibatis.ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170) at org.apache.ibatis.ognl.SimpleNode.getValue(SimpleNode.java:210) at org.apache.ibatis.ognl.Ognl.getValue(Ognl.java:333) at org.apache.ibatis.ognl.Ognl.getValue(Ognl.java:413) at org.apache.ibatis.ognl.Ognl.getValue(Ognl.java:395) at org.apache.ibatis.scripting.xmltags.OgnlCache.getValue(OgnlCache.java:45) ... 12 more

List的size()方法明顯是public為何還會出現(xiàn)不可訪問的異常。該問題并不是每一次都會出現(xiàn),經(jīng)過多次嘗試,該異常一直未在測試環(huán)境重現(xiàn)。

該接口在完整調(diào)用鏈路中的出錯次數(shù)占總調(diào)用次數(shù)的比率為0.01%,無意中聯(lián)想到并發(fā)問題在周期性時間內(nèi)往往是概率性發(fā)生。

編寫模擬多線程環(huán)境并發(fā)讀取公司列表測試代碼:

<mapper namespace='CompanyMapper'> <select id='getCompanysByIds'resultType='cn.com.shaobingmm.Company'> select * from company <where> <if test='list != null and list.size() > 0'> and id in <foreach collection='list' item='id' open='(' separator=',' close=')'>#{id}</foreach> </if> </where> </select></mapper>多線程并發(fā)環(huán)境下的壓測代碼

上訴異常堆棧信息在并發(fā)環(huán)境下果然重現(xiàn)出現(xiàn),根據(jù)異常信息代碼執(zhí)行至該行代碼時發(fā)生異常:

異常信息表明OgnlRuntime類不能夠訪問java.util.Collections的私有成員SingletonList。

查看源代碼發(fā)現(xiàn)能夠拋出MethodFailedException異??梢枣i定在invokeMethod方法內(nèi)部。

public static Object callAppropriateMethod(OgnlContext context, Object source, Object target, String methodName, String propertyName, List methods, Object[] args) throws MethodFailedException { Object reason = null; Object[] actualArgs = objectArrayPool.create(args.length); try { Method e = getAppropriateMethod(context, source, target, methodName, propertyName, methods, args, actualArgs); if(e == null || !isMethodAccessible(context, source, e, propertyName)) { StringBuffer buffer = new StringBuffer(); if(args != null) { int i = 0; for(int ilast = args.length - 1; i <= ilast; ++i) { Object arg = args[i]; buffer.append(arg == null?NULL_STRING:arg.getClass().getName()); if(i < ilast) { buffer.append(', '); } } } throw new NoSuchMethodException(methodName + '(' + buffer + ')'); } Object var14 = invokeMethod(target, e, actualArgs); return var14; } catch (NoSuchMethodException var21) { reason = var21; } catch (IllegalAccessException var22) { reason = var22; } catch (InvocationTargetException var23) { reason = var23.getTargetException(); } finally { objectArrayPool.recycle(actualArgs); } throw new MethodFailedException(source, methodName, (Throwable)reason); }invokeMethod方法代碼

public static Object invokeMethod(Object target, Method method, Object[] argsArray) throws InvocationTargetException, IllegalAccessException { boolean wasAccessible = true; if(securityManager != null) { try { securityManager.checkPermission(getPermission(method)); } catch (SecurityException var6) { throw new IllegalAccessException('Method [' + method + '] cannot be accessed.'); } } if((!Modifier.isPublic(method.getModifiers()) || !Modifier.isPublic(method.getDeclaringClass().getModifiers())) && !(wasAccessible = method.isAccessible())) { method.setAccessible(true); (1) } Object result = method.invoke(target, argsArray); (3) if(!wasAccessible) { method.setAccessible(false); (2) } return result; }

問題出現(xiàn)在method實際上是一個共享變量,也就是例子中的

public int java.util.Collections$SingletonList.size()方法

當?shù)谝粋€線程t1至(1)行代碼允許method方法可以被調(diào)用,第二個線程t2執(zhí)行至(2)將method的方法設置為不可以訪問。接著t1又開始執(zhí)行到(3)行的時候就會發(fā)生該異常。這是一個很典型的同步問題。

Ognl2.7已經(jīng)修復了該問題,因為ognl源碼是直接打包內(nèi)嵌在mybatis包中,mybatis3.3.0版本中也已經(jīng)進行了修復升級。(劃重點)

public static Object invokeMethod(Object target, Method method, Object[] argsArray) throws InvocationTargetException, IllegalAccessException { boolean syncInvoke = false; boolean checkPermission = false; int mHash = method.hashCode(); synchronized(method) { if(_methodAccessCache.get(Integer.valueOf(mHash)) == null || _methodAccessCache.get(Integer.valueOf(mHash)) == Boolean.TRUE) { syncInvoke = true; } if(_securityManager != null && _methodPermCache.get(Integer.valueOf(mHash)) == null || _methodPermCache.get(Integer.valueOf(mHash)) == Boolean.FALSE) { checkPermission = true; } } boolean wasAccessible = true; Object result; if(syncInvoke) { synchronized(method) { if(checkPermission) { try { _securityManager.checkPermission(getPermission(method)); _methodPermCache.put(Integer.valueOf(mHash), Boolean.TRUE); } catch (SecurityException var12) { _methodPermCache.put(Integer.valueOf(mHash), Boolean.FALSE); throw new IllegalAccessException('Method [' + method + '] cannot be accessed.'); } } if(Modifier.isPublic(method.getModifiers()) && Modifier.isPublic(method.getDeclaringClass().getModifiers())) { _methodAccessCache.put(Integer.valueOf(mHash), Boolean.FALSE); } else if(!(wasAccessible = method.isAccessible())) { method.setAccessible(true); _methodAccessCache.put(Integer.valueOf(mHash), Boolean.TRUE); } else { _methodAccessCache.put(Integer.valueOf(mHash), Boolean.FALSE); } result = method.invoke(target, argsArray); if(!wasAccessible) { method.setAccessible(false); } } } else { if(checkPermission) { try { _securityManager.checkPermission(getPermission(method)); _methodPermCache.put(Integer.valueOf(mHash), Boolean.TRUE); } catch (SecurityException var11) { _methodPermCache.put(Integer.valueOf(mHash), Boolean.FALSE); throw new IllegalAccessException('Method [' + method + '] cannot be accessed.'); } } result = method.invoke(target, argsArray); } return result; }

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。如有錯誤或未考慮完全的地方,望不吝賜教。

相關文章:
主站蜘蛛池模板: 国产欧美日韩综合精品一区二区 | 免费成人在线网站 | 欧美一级精品片在线看 | 国产中文视频 | 国产精品观看 | 亚洲lesbianxxxxhd 黄色av网站免费 | 午夜影院在线观看 | 天天插天天操 | www国产成人免费观看视频,深夜成人网 | 亚洲二区在线播放 | 亚洲国产精品自拍 | 国产三级在线免费观看 | 成人在线激情 | 国产精品一区二区三区四区 | 欧美久久久久久久久久伊人 | 日批免费观看视频 | 成人精品国产免费网站 | 午夜精品亚洲日日做天天做 | 亚洲精品乱码久久久久久9色 | 国产精品美女久久久久久久久久久 | 日韩精品成人 | 亚洲乱码国产乱码精品精 | 日本黄色大片免费看 | 曰批视频在线观看 | 国产精品18 | 欧美在线不卡 | 91啦 | 影音先锋中文字幕在线 | 欧美成人福利 | 中文字幕亚洲视频 | 狠狠做深爱婷婷综合一区 | 交视频在线观看国产 | 国产精品久久久久久久久晋中 | 男人天堂a| 欧美久久久久 | 欧美国产在线观看 | 国产成人高清 | 永久av| 黄色毛片免费看 | 久久久久久久久久久亚洲 | 欧美亚洲日本 | 欧美精品在线看 | 精品无码久久久久久国产 | 成人免费福利 | 啪啪tv网站免费入口 | 女同久久另类99精品国产 | 在线a级毛片 | 男女啪啪无遮挡 | 国产真实精品久久二三区 | 亚洲欧美日韩另类精品一区二区三区 | 国产精自产拍久久久久久 | 羞羞视频在线网站观看 | 久久久久久久国产精品视频 | 欧美午夜在线 | 久久精品伊人 | 日本午夜在线 | 日本三级在线视频 | 中文字幕 国产精品 | 天堂中文网| 久久国产精品一区 | 超碰在线91 | 91污在线 | 欧美日韩一区二区在线观看 | 欧美福利在线 | 国产大片黄色 | 九九综合久久 | 91极品在线 | 成人精品视频 | 国产综合视频在线观看 | 久热精品国产 | 日本一区二区高清不卡 | 日韩中文字幕国产 | 精品亚洲一区二区 | 欧美视频在线播放 | 亚洲精品国产第一综合99久久 | 国产精品美女www爽爽爽动态图 | 色综合久久天天综合网 | 免费av电影在线观看 | 亚洲一区 日韩精品 中文字幕 | 欧美成人专区 | 欧美女优在线视频 | 一区二区在线免费观看 | 亚洲精品一区中文字幕乱码 | 日韩中文一区二区三区 | 特级淫片女子高清视频在线观看 | 亚洲综合精品 | 国产精品久久久久久久久免费桃花 | 97久久香蕉国产线看观看 | 欧美日韩国产不卡 | 国产高清精品一区二区三区 | 色综合久久天天综合网 | 成人免费视频网站在线观看 | 亚洲一区二区三区四区在线观看 | 91中文在线观看 | 美女福利网站 | h片在线| 亚洲成人免费 | 亚洲欧美日韩一区二区 | 精品国产一区二区国模嫣然 | 欧美日韩中文字幕 | 国产一区在线免费 | 国产在线高清视频 | 国产精品1区2区在线观看 | 日韩成人免费av | 亚洲av一级毛片 | 激情毛片 | 日韩在线播放网址 | 成人性大片免费观看网站 | 亚洲乱码国产乱码精品精 | 午夜精品影院 | 香蕉成人啪国产精品视频综合网 | 日本久久综合 | 日韩在线区 | 国产一区二区在线免费观看 | 精品国产91久久久久久久 | 美女逼网站 | 精品99视频 | 国产精品中文 | 欧美精产国品一二三区 | 日日操天天爽 | 亚洲电影在线观看 | 成人免费一区二区三区视频网站 | 欧美在线观看一区 | 色爱av| 在线播放国产视频 | 日本久久精品视频 | 一区二区三区不卡视频 | 性色av网| 国产第一区二区三区 | 一本色道精品久久一区二区三区 | 日本a网 | 日韩欧美精品区 | 国产噜噜噜噜噜久久久久久久久 | 国产精品午夜电影 | 三区免费视频 | 国产免费一区二区三区 | 亚洲国产成人av | 午夜精品久久久久久久久久久久久 | 婷婷国产成人精品视频 | 国产精品久久一区二区三区 | 国产精品久久久久久亚洲调教 | 亚洲欧美日韩精品久久亚洲区 | 成年人看的羞羞网站 | 国产精品美女久久久久久免费 | a在线免费观看 | 一级黄色短片 | 日本在线免费 | 日韩在线欧美 | 日本一区二区三区中文字幕 | 久久综合久久综合久久 | 国产伦精品一区二区三区在线 | 91欧美在线 | 免费一级片 | 美女天堂网| 久久亚洲欧美日韩精品专区 | 中文字幕99| 亚洲精品亚洲人成人网 | 久色视频在线观看 | 91福利视频导航 | 亚洲视频一区二区三区 | 国产精品国产三级国产aⅴ入口 | 国产精品国产精品国产专区不蜜 | 日韩第一区 | www.日韩视频 | av伊人网| 国产真实精品久久二三区 | 综合久久综合久久 | 亚洲男人天堂网 | 性欧美大战久久久久久久免费观看 | 国产精品成人在线 | 欧美日韩一区在线 | 日韩国产欧美在线观看 | 欧美日韩电影一区二区三区 | 综合国产| 日韩成人中文字幕 | 日本在线视频一区二区 | 色综合久久伊人 | 亚洲综合色视频在线观看 | 色免费在线观看 | 欧美精品一区二区三区在线播放 | 国产综合久久 | 在线免费色视频 | 毛片大全 | 在线免费视频成人 | 麻豆精品国产传媒 | 97超碰免费 | 日韩欧美中字 | 国产精品美女久久久久久免费 | 99久热精品 | 黄色毛片免费看 | 成年人av网站 | 亚洲国产一区二区三区, | 国产精品69毛片高清亚洲 | 亚洲视频综合 | 夜夜视频 | 久久久久国产精品一区二区三区 | 极品av| 99久久婷婷国产综合精品 | 插插射啊爱视频日a级 | 国产一级一级片 | 另类天堂av | 国产v日产∨综合v精品视频 | 国产一二三区在线播放 | 亚洲精品久久久久久一区二区 | 免费日韩 | 亚洲精品在线看 | 成人精品在线 | 欧美激情网站 | 国产一区精品电影 | 国产伦精品一区二区三区在线 | 日本久久网 | 久久久久久久国产精品 | 国产成人精品一区二 | 久久精品综合 | 久久99国产精品久久99果冻传媒 | 狠狠躁夜夜躁人人爽天天高潮 | 欧美一区永久视频免费观看 | 亚洲欧美激情在线 | 久久久中文字幕 | 亚洲不卡高清视频 | 亚洲免费网址 | 国产成人精品一区二区三区四区 | 91大神免费观看 | 成人免费毛片高清视频 | 欧美色综合 | 最新中文字幕 | 99热69 | 91操操| 人人种亚洲| 亚洲视频在线看 | 色九九九| 精品乱子伦一区二区三区 | 成人三级av | 婷婷国产在线观看 | 亚洲性片 | 久久久精品视频免费观看 | 麻豆专区一区二区三区四区五区 | 亚洲国产成人91精品 | 亚洲综合大片69999 | 成人高清视频在线观看 | 91精品福利| 亚洲精品一区二区网址 | 国内久久精品 | 亚洲精品久久久蜜臀 | 日本不卡高字幕在线2019 | 亚洲www啪成人一区二区 | 国产宾馆自拍 | 成人在线免费 | 精品久久香蕉国产线看观看亚洲 | 国产v日产∨综合v精品视频 | av免费网站在线观看 | 黄视频网站免费观看 | 人人草人人 | 亚洲a网| 玖玖精品 | 国产一区二区三区四区在线观看 | 一级大片av | 亚洲高清久久 | 亚洲综合色自拍一区 | 黄色在线免费 | www.五月天婷婷 | 嫩草视频免费在线观看 | 国产精品成人一区二区 | 国产精品极品美女在线观看免费 | 久久久久国产 | 久久久久久久久久毛片 | 99精品在线 | 久久久久久成人 | 丁香久久| 欧美亚洲国产一区二区三区 | 亚洲精品一区二区在线观看 | 国产视频一区二区在线观看 | 亚洲精品一区 | 99看| 午夜成人在线视频 | 亚洲香蕉在线观看 | 国产3区 | 午夜精品久久久久久久男人的天堂 | 日本三级做a全过程在线观看 | 91色视频在线观看 | 午夜视频在线观看网址 | 精品久久精品 | 97国产超碰 | 国产一级视频 | 三级视频在线 | 日本精品一区二区三区在线观看 | 久久r免费视频 | 中文字幕av亚洲精品一部二部 | 91久久精品一区 | 亚洲视频在线观看视频 | 99亚洲 | 丁香六月av | 国产美女视频网站 | 国产一区不卡 | 一级毛片大全免费播放 | 福利网站在线观看 | 野狼在线社区2017入口 | 国产精品福利网站 | 99精品免费在线 | 国产精品女人视频 | 欧美久久久久久 | 青娱乐99 | 日韩精品在线一区 | 久久亚洲美女 | 国产精品欧美日韩 | 97国产精品视频人人做人人爱 | 国产主播久久 | 91色乱码一区二区三区 | 亚洲第一区在线 | 国产精品久久久久久久久久久不卡 | 91影院在线观看 | 国产午夜久久久久 | 婷婷欧美| 日本不卡高字幕在线2019 | 在线第一页 | 黄网在线免费观看 | 亚洲欧美一区二区三区在线 | av片网| 亚洲国产高清视频 | 国产日韩一区二区三区 | 日本久久久久久久久久 | 日韩欧美第一页 | 国产精品一区一区三区 | 日韩视频免费 | 亚洲精品综合 | 国产欧美精品区一区二区三区 | 国产精品久久久久久久久免费 | 欧美日韩免费一区二区三区 | 嫩草影院懂你的 | 日韩在线观看一区二区 | 在线亚洲人成电影网站色www | www.国产精| 午夜免费影院 | 国产精品久久久久久久久免费丝袜 | 日韩爱爱免费视频 | 国产高清自拍 | 国内精品视频 | 中文字幕在线看片 | 日本精品在线 | 毛片国产 | 日韩欧美成人一区二区三区 | 亚洲精品3区 | 最新的黄色网址 | 亚洲高清视频在线观看 | 91精品国产92| 精品成人免费视频 | 北条麻妃国产九九九精品小说 | 国产成人精品久久二区二区 | 99国产精品久久久久久久 | 国产91亚洲精品 | 精品视频一区二区三区 | 免费一区 | 日韩综合在线 | 狠狠艹夜夜艹 | 中字精品 | 日本视频一区二区三区 | 精品三区 | 久草中文在线 | 中文字幕在线免费 | 蜜臀久久99精品久久久无需会员 | 91精品国产91久久久久久吃药 | 欧美九九九| 成人精品在线视频 | 久久久久久久国产 | 久久精品一 | 日日夜夜精品网站 | 亚洲一区在线视频 | 成人午夜sm精品久久久久久久 | а天堂中文官网 | 成人三级av| 91亚洲国产成人精品性色 | 亚洲视频在线观看免费 | 特黄特黄a级毛片免费专区 av网站免费在线观看 | 午夜影院免费体验区 | 日韩中文字幕免费在线播放 | 国产综合精品 | 中文字幕第100页 | jizz在亚洲 | 91偷拍精品一区二区三区 | 日日干夜夜操 | 欧美国产日本一区 | 亚洲精品乱码久久久久久蜜桃 | 亚洲精品综合 | 比利时xxxx性hd极品 | 99精品欧美一区二区三区 | 国产一区二区三区久久久 | 色吧综合网| 日韩av免费在线观看 | 久久久99精品免费观看 | 国产一区二区三区视频在线观看 | 日韩成人影院在线观看 | 久久中文字幕一区 | 欧美一级电影 | 精品国产黄a∨片高清在线 99热婷婷 | 中文字字幕一区二区三区四区五区 | 免费成人av| 成人午夜在线视频 | 日本一区二区高清不卡 | 91免费观看国产 | 亚洲综合无码一区二区 | 一本一道久久久a久久久精品91 | 久久成人精品一区二区三区 | 成人亚洲欧美 | 欧美一级片 | 国产精品久久久久久久 | 国产精品国产三级国产a | 亚洲va中文字幕 | 欧美一级在线观看 | 国产日韩欧美不卡 | 久久久久久久久一区二区三区 | 99热少妇 | 四虎影院网 | 中文字幕亚洲欧美日韩在线不卡 | 免费看一区二区三区 | 日本在线观看网站 | 久久亚洲视频 | 久久久精 | 日韩精品一区二区三区在线观看 | 亚洲乱码国产乱码精品精98午夜 | 久久一区二区三区四区 | 精品国产不卡一区二区三区 | 日韩欧美高清视频 | m豆传媒在线链接观看 | 国产探花在线看 | 国产中文视频 | 国产精品国产精品国产专区不卡 | 亚洲男人av | 久久婷婷欧美 | 黄色毛片看看 | 亚洲欧美一区二区三区不卡 | 日本少妇bbbb爽爽bbb美 | 日本在线黄色 | 亚洲视频在线观看 | 久久久中文字幕 | 日韩精品一区二区三区视频播放 | 伊人网一区 | 最新国产精品 | 自拍小电影 | 日韩精品一区二区三区在线播放 | 国产精品高清在线 | 特黄视频 | 欧美久久不卡 | 91精品国产91久久综合桃花 | 精品国产成人 | 日日夜夜国产 | 欧美.com | 97av在线视频 | 中文av一区 | 99国产精品久久久久久久 | 在线播放91| a在线看| 最新中文字幕在线资源 | 亚洲国产日韩在线 | 蜜桃免费一区二区三区 | 狠狠操精品视频 | 欧美久久一区二区三区 | 国产精品久久一区 | 国产精品久久嫩一区二区免费 | 国产欧美日韩精品在线 | 亚洲精品免费观看 | 女同久久另类99精品国产 | 精品国产一区二区三区久久久蜜 | 成人精品福利视频 | 伊人网在线视频免费观看 | 国产精品99精品久久免费 | 亚洲精品www久久久久久 | 国产精品一区电影 | 伊人久久视频 | 亚洲永久免费观看 | 91色在线观看 | 欧美精品一区二区三区一线天视频 | 国产一区网站 | 日韩一区二区在线观看视频 | 亚洲精品午夜国产va久久成人 | 久久人人爽人人爽人人片亚洲 | a在线看| 日韩综合 | 久久综合久久久 | 国产免费黄色大片 | 日韩精品一区二区三区视频播放 | 欧美日韩亚洲国产综合 | 91精品一区二区三区久久久久久 | 亚洲黄色a级| 麻豆一区 | 国产精品第52页 | 国产日产精品一区二区三区四区 | 91在线国产观看 | 天天干狠狠 | 国产精品一区二区三区在线 | 国产成人精品av | 69日影院 | 久久精品a一级国产免视看成人 | 91精品国产欧美一区二区 | 在线观看av片 | 国产乱肥老妇国产一区二 | 亚洲综人网 | 国产精品永久久久久久久久久 | 在线免费观看毛片 | 色香蕉在线| 国产精品久久久久久久久 | 欧美精产国品一二三区 | 国产午夜精品久久 | 中文字幕一区二区三区精彩视频 | 99re国产 | 一区二区国产精品 | 亚洲精品久久 | 在线成人国产 | 亚洲综合无码一区二区 | 毛片黄片视频 | 日韩专区视频 | 日韩精品视频免费在线观看 | 国产乱人伦av在线a 天天碰天天操 | 成人一级电影在线观看 | 一道本一二三区 | 日本电影网址 | 欧美在线播放 | 国产精品久久国产精品99 gif | 亚洲精品久久久久久久久久 | 精品一级| 福利91 | 欧美第一视频 | 中文成人在线 | 成人毛片视频免费 | 成人毛片视频网站 | 免费毛片一区二区三区久久久 | 精品久久久久久 | www中文字幕 | 国产精品永久免费视频 | 国产成人啪精品午夜在线观看 | 一区二区在线免费观看 | 狠狠操天天干 | 99久久国产综合精品女不卡 | 天堂一区 | 在线播放一区二区三区 | 国产高清在线精品 | 在线欧美一区 | 黑人巨大精品欧美一区二区小视频 | 91在线观看视频 | 蜜桃αv| 日韩精品一区二区三区视频播放 | 日韩综合网 | 欧美日本精品 | 欧美精品在线观看 | 免费的黄色片子 | 中文字幕亚洲欧美精品一区四区 | 激情网页 | 九九免费精品视频 | 久久久一区二区 | 日本成人黄色网址 | 在线观看成人网 | 99国产精品99久久久久久 | 成人免费黄色小视频 | 国产一区久久精品 | 一区二区三区自拍 | 欧美日韩中文在线观看 | 国产99精品| 久久人人网 | 久久成人精品一区二区三区 | 久久99久久98精品免观看软件 | 亚洲精品乱码久久久久久蜜桃 | 国产精久久久久 | 97视频在线免费观看 | 日韩在线一区二区三区 | 香蕉久久一区二区不卡无毒影院 | 国产精品观看 | 日韩精品久久久久久 | 国产高清一级毛片在线不卡 | 欧美一级欧美三级在线观看 | 国产福利在线观看视频 | 国产福利一区二区 | 欧美日韩精品一区二区三区 | 国产精品美女久久久久久免费 | aaa级片 | 青青草91在线视频 | 国产伦精品一区二区 | 成人免费网站在线观看 | 成人免费视频网站在线看 | caoporn免费| 亚洲 欧美 精品 | 色婷婷av一区二区三区软件 | 日干夜操 | 欧美日韩高清一区 | 国产精品视频久久久 | 国产成人精品一区二区三区在线 | 婷婷国产成人精品视频 | 91在线精品一区二区 | 日韩欧美在线视频观看 | 欧美精品亚洲 | 国产精品久久视频 | 亚洲免费色 | 日本天堂在线播放 | 欧美视频免费在线 | 欧美日韩一区二区三区不卡视频 | 欧美日韩一区免费 | 亚洲综合无码一区二区 | 一区二区三区免费在线观看 | 91九色视频pron| 日韩在线免费 | a中文字幕 | 一级片av| 噜噜噜噜噜色 | 国产成人久久 | 九九热这里 | 欧美精品一区二区三区一线天视频 | 午夜影院免费 | 99精品国产高清一区二区麻豆 | 亚洲成人精品久久 | 红色av社区 | 久久久久中文字幕 | 北条麻妃一区二区三区中文字幕 | 日韩av电影在线免费观看 | 亚洲a网 | 亚洲成人国产精品 | 日韩中文字幕在线免费 | 一区二区三区中文字幕 |