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

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

Mybatis如何使用ognl表達式實現動態sql

瀏覽:5日期:2023-10-19 10:07:05
本文講述在mybatis中如何使用ognl表達式實現動態組裝sql語句

新建Users實體類:

public class Users { private Integer uid; private String userName; private String tel; //添加上面私有字段的get、set方法}

新建一個Dao接口類,mybatis配置文件在配置namespace屬性時需要加入這個類的完整類名,找到這個類里的方法執行:

public interface UserDao { /** * 依據userName查詢用戶信息 * @param user * @return */ List<Users> listUser(Users user); /** * 動態選擇條件 * @param user * @return */ List<Users> listUser2(Users user); /** * 動態范圍查詢 * @param uids * @return */ List<Users> listUser3(Integer[] uids); /** * 動態更新用戶信息 * @param user */ void updateUser(Users user); /** * 批量添加 * @param list */ void addBatch(List<Users> list); /** * 批量刪除 * @param ids */ void deleteBatch(int[] ids); /** * 批量更新 * @param list */ void updateBatch1(List<Users> list); /** * 批量更新 * @param list */ void updateBatch2(List<Users> list);}

新建mybatis的配置文件(下面代碼可以作為mybatis配置文件的模板,這里的namespace屬性可以設置為上面的dao類的完整類名):

<?xml version='1.0' encoding='utf-8'?><!DOCTYPE mapper PUBLIC '-//mybatis.org//DTD Mapper 3.0//EN''http://mybatis.org/dtd/mybatis-3-mapper.dtd'><!-- mapper根節點的namespace指定Dao接口的完整類名,因為mybatis在解析的時候要根據這個類名找到相應dao方法執行 --><mapper namespace=''> </mapper>

在mybatis配置文件中寫一條條件查詢sql語句:

<!-- 動態查詢(使用if拼接條件,適用于多選多的形式) --><select parameterType='users' resultMap='userMap'> select u_id, u_name, u_tel from user_info4 user_info <where><if test='userName != null and userName !=’’'> u_name = #{userName}</if><if test='tel != null and tel !=’’'> and u_tel = #{tel}</if> </where></select>

這里使用了where和if標簽,<where></where>意思就是sql語句中的where,當然,where直接在sql中寫出來也可以,<if></if>標簽就是條件判斷,test屬性中寫條件語句,如果test中的條件語句為true,那么標簽中的sql語句就會拼接到上面的sql語句中,所以這條sql語句的意思就是如果傳過來的Users對象中,userName字段不為null,或字段值不為空,那么就添加一個對userName的查詢,tel也是如此。

注意:在對tel字段的判斷時,標簽中的sql語句前加了一個and,如果前一條判斷為false,那么mybatis會自動將and關鍵字刪除。

<!-- 動態查詢(使用choose選擇條件,適用于多選一) --><select parameterType='users' resultMap='userMap'> select u_id, u_name, u_tel from user_info4 <choose><when test='userName != null and userName != ’’'> where u_name = #{userName}</when><when test='tel != null and tel != ’’'> where u_tel = #{tel}</when><otherwise> order by u_id desc</otherwise> </choose></select>

這里使用的是choose-when-otherwise標簽,有點類似于java中的switch-case-default選擇條件語句,相比于if標簽,這里只能選擇一個,即多選一。

在這條sql語句中,會按順序判斷when子句,如果所有的when子句都為false,則會執行otherwise子句中的sql語句。

<!-- 動態查詢(使用foreach范圍查詢,適用于in和or語句) --><!-- int[] ids = new int[]{1,2,3,4}; --><select parameterType='collection' resultMap='userMap'> select u_id, u_name, u_tel from user_info4 <where>u_id in<if test='array != null'> <foreach collection='array' item='id' open='(' separator=',' close=')'>#{id} </foreach></if> </where></select>

foreach標簽適用于范圍查詢(in和or語句),如遍歷一個id集合,查詢出集合中所有id對應的用戶。在foreach標簽中,collection屬性指定需要遍歷的集合的名稱,這里只有一個參數,所以可以隨意取;item指定遍歷的每一項的別名,open指定在遍歷前需要加上的內容,separator指定每遍歷一個后加上的內容,close指定遍歷完后需要加上的內容,如遍歷上面的ids集合,那么最終得到的內容就是 (1,2,3,4) 。

<!-- 動態更新(使用set動態更新字段) --><update parameterType='users' > update user_info4 <trim prefix='set' suffixOverrides=','><if test='userName != null and userName != ’’'> u_name = #{userName},</if><if test='tel != null and tel != ’’'> u_tel = #{tel}</if> </trim> <!-- where u_id = #{uid} --> <where>u_id = #{uid} </where></update>

trim標簽用于動態設值,例如在更新數據時,可以動態將改變的字段設置。在trim標簽中,prefix屬性表示在更新字段之前添加set關鍵字,suffixOverrides表示將最后一個更新字段的逗號替換成suffix指定的空格符,如果不指定suffix默認就是空格。

<!-- 批量添加,利用sql的特性 --><insert parameterType='list'> insert into user_info4(u_id, u_name, u_tel) values <foreach collection='list' item='user' separator=','>(#{user.uid}, #{user.userName}, #{user.tel}) </foreach></insert>

foreach標簽不僅可以用于范圍查詢,還可以遍歷集合用于批量添加。

因為可以利用sql的特性,例如:insert into user_info4(u_name, u_tel) values(’’, ’’), (’’, ’’), (’’, ’’);這樣執行這條sql語句就可以實現批量添加。

<!-- 批量更新1,這一種方式兼容性較好,當數據量大時 --><update parameterType='list'> <foreach collection='list' item='user' separator=';'>update user_info4<set> u_name = #{user.userName}</set>where u_id = #{user.uid} </foreach></update>

foreach還可以用于遍歷出多條sql語句,使得一次可以執行多條sql,當然,如果需要MySql執行多條批量操作時,需要開啟批量查詢功能,即在MySql的url中加入 allowMultiQueries=true 。

<!-- 批量更新2,使用MySQL的case when語句 --> <update parameterType='list'>update user_info4 set u_name = case u_id<foreach collection='list' item='user' separator=' '> when #{user.uid} then #{user.userName}</foreach>endwhere u_id in<foreach collection='list' item='user' open='(' close=')' separator=','> #{user.uid}</foreach> </update>

這里使用的是MySql中的case when語句來更新的,基本語法:

update user_info4 set u_name = case u_idwhen 3 then ’游客1’when 4 then ’游客2’endwhere u_id in(3,4);Mybatis中的ognl使用總結

經常在寫mapper中用到一些OGNL,但是沒怎么總結,使用方法一直模模糊糊的。抽點時間,查了別人的blog,做個簡單的總結

1.概念

OGNL,Object Graph Navigation Language,是一種強大的表達式語言,網上搜索這個概念,多是和structs有關的。但是在mybatis中OGNL應用很廣的;

2.基本參數

Mybatis中常用的OGNL表達式有以下:

e1 or e2

e1 and e2

e1 == e2,e1 eq e2

e1 != e2,e1 neq e2

e1 lt e2:小于

e1 lte e2:小于等于,其他gt(大于),gte(大于等于)

e1 in e2

e1 not in e2

e1 + e2,e1 * e2,e1/e2,e1 - e2,e1%e2

!e,not e:非,求反

e.method(args)調用對象方法

e.property對象屬性值

e1[ e2 ]按索引取值,List,數組和Map

@class@method(args)調用類的靜態方法

@class@field調用類的靜態字段值

更加詳細的介紹可以參考官網的介紹:https://commons.apache.org/proper/commons-ognl/language-guide.html

在一定意義上說,mybatis中的動態sql也是基于OGNL表達式的。其中常用的元素有如下幾種:

if choose(when,otherwise) trim where set foreach3.應用;

OGNL在mybatis中的應用,主要有兩種;

1)動態SQL表達式;

舉個栗子:

<code class='language-xml hljs has-numbering'><span class='hljs-tag'><<span class='hljs-title'>select</span> <span class='hljs-attribute'>id</span>=<span class='hljs-value'>'demo1'</span> <span class='hljs-attribute'>...</span>></span></code><pre name='code' class='prettyprint'><code class='language-xml hljs has-numbering'> select id, name from users <span class='hljs-tag'><<span class='hljs-title'>bind</span> <span class='hljs-attribute'>name</span>=<span class='hljs-value'>'nameLike'</span> <span class='hljs-attribute'>value</span>=<span class='hljs-value'>'’%’ + name + ’%’'</span>/></span> <span class='hljs-tag'><<span class='hljs-title'>where</span>></span><span class='hljs-tag'><<span class='hljs-title'>if</span> <span class='hljs-attribute'>test</span>=<span class='hljs-value'>'name != null and name != ’’'</span>></span> name like ’${nameLike}’<span class='hljs-tag'></<span class='hljs-title'>if</span>></span> <span class='hljs-tag'></<span class='hljs-title'>where</span>></span><span class='hljs-tag'></<span class='hljs-title'>select</span>></span></code>

其中的bind中的value值會使用OGNL計算,ps,其中bind的參數調用只能用$獲取;

2)${param}參數中

<code class='language-xml hljs has-numbering'><span class='hljs-tag'><<span class='hljs-title'>select</span> <span class='hljs-attribute'>id</span>=<span class='hljs-value'>'demo2'</span> <span class='hljs-attribute'>...</span>></span> select id,name from users <span class='hljs-tag'><<span class='hljs-title'>where</span>></span><span class='hljs-tag'><<span class='hljs-title'>if</span> <span class='hljs-attribute'>test</span>=<span class='hljs-value'>'name != null and name != ’’'</span>></span> name like ’${’%’ + name + ’%’}’<span class='hljs-tag'></<span class='hljs-title'>if</span>></span> <span class='hljs-tag'></<span class='hljs-title'>where</span>></span><span class='hljs-tag'></<span class='hljs-title'>select</span>></span></code>

此處寫的是 ${’%’ + name + ’%’},而不是 %${name}%,這兩種方式的結果一樣,但是處理過程不一樣。

ps,說明一下#和$的區別:${} 為原樣輸出,你傳什么,sql里就填入什么,比如有引號它也會原樣填到sql里。#{} 會使用 PreparedStatement,變量處用 ? 代替。

在能使用 #{} 盡量使用它吧,可以防止sql注入。

以下是一個OGNL的調用靜態方法的示例:

<select parameterType='java.lang.String' resultType='java.lang.String'> select title from song_question where questionState = #{value} <if test='@Ognl@isSolve(value[0],0)'> order by questionTime desc </if> <if test='@Ognl@isSolve(value[0],1)'> order by answerTime desc </if> limit 0,1</select>

靜態方法如下:

public static boolean isSolve(Object o,String soleState){ if(o == null) return false; String str = null; if(o instanceof String[]){ String[]objects = (String[])o; str = objects[0]; }else if(o instanceof Character){ Character c = (Character) o; str = Character.toString(c); } if(StringUtils.equals(str, soleState)) return true; return false;}

如果值為0,則order by questionTime desc 根據字段questionTime排序。

如果值為1,則order by answerTime desc根據字段answerTime排序。

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Mybatis 數據庫
相關文章:
主站蜘蛛池模板: 欧美日韩中文字幕 | 欧美日韩精品一区二区在线播放 | 国产精品视频免费 | 国产精品一区二区三区在线播放 | 国产在线中文字幕 | 国产亚洲欧美一区 | 欧美日韩一区二区三区在线观看 | 一区二区三区在线 | 欧美精品一二区 | 精品国产一区二区国模嫣然 | 91麻豆精品国产91久久久久久久久 | 精品三级三级三级三级三级 | 天天操天天操 | 男女精品视频 | 真人一级毛片 | 久久骚| 一区二区在线影院 | 欧美日韩国产在线观看 | 一区二区三区在线播放 | 91精品久久久久久久久久久 | 欧美三区 | 日韩欧美国产精品综合嫩v 国产高清av在线一区二区三区 | 亚洲福利视频在线 | 欧美99| 日韩一区二区三区在线观看 | 女人久久久久 | 国产精品一区二区三区在线看 | 羞羞视频免费观看入口 | 欧美日韩在线一区二区 | 国产 日韩 欧美 中文 在线播放 | 久久久成人av | 日韩成人免费av | 日韩在线观看一区 | 免费a爱片猛猛 | 岛国av在线 | 国产成人午夜精品5599 | 成人精品一区 | 国产精品中文字幕在线观看 | 亚洲欧美中文日韩在线v日本 | 8x国产精品视频一区二区 | 欧美激情国产日韩精品一区18 | 黑人性dh| 国产精品亲子伦av一区二区三区 | 一级毛片在线免费看 | 成人在线免费视频 | 欧美二区在线观看 | 亚洲 成人 av| 国产一区二区三区在线视频 | 亚洲一区不卡 | 国产一级视频 | 亚洲精品福利在线 | 成人二区| 高清一区二区三区 | 在线不卡a资源高清 | 日本精品久久 | 欧美一级片免费播放 | 欧美一区| 久久首页 | 欧美一区久久 | 欧美在线视频一区二区 | 亚洲一区 国产 | 成人午夜在线 | 成人午夜视频网 | 亚洲精品视频区 | 中文字幕乱码亚洲精品一区 | 九草av| 久久久国产一区二区 | 免费国产wwwwwww网站 | 69av片| 色婷婷综合久久 | 日穴视频在线观看 | 国产精品高清在线 | 亚洲国产91 | 久热在线视频 | 日韩www | 蜜桃免费视频 | 天天天干天天天操 | 欧美精品99 | aaaa网站 | 亚洲一区二区精品在线观看 | 亚洲综合成人网 | 久久午夜电影院 | 欧美日韩国产影院 | 国产最新精品视频 | 在线亚洲人成电影网站色www | 欧美自拍视频在线 | 欧美日韩国产不卡 | 91超碰在线观看 | 中文字幕大全 | h片观看| 日韩欧美国产一区二区三区 | 成人午夜精品久久久久久久3d | 伊人久色| 黄色国产大片 | 日本不卡高字幕在线2019 | 天天干天天骑 | 亚洲综合视频一区 | 久久一区二区三区四区 | 天天澡天天狠天天天做 | 91麻豆精品国产91久久久资源速度 | 国产精品原创av片国产免费 | 久久精品国产99国产 | 久久久久久久国产 | 在线视频成人 | 亚洲激情一区二区 | 婷婷天堂 | 黄色毛片在线观看 | 国产欧美日韩综合精品 | 一级黄色影视 | av网站网址 | 玖玖爱视频在线 | 久久99国产精品久久99大师 | 成人精品二区 | 伊人影院在线观看 | 91精品国产91久久久久久密臀 | 欧美精品导航 | 日韩视频免费在线 | 日韩成人一区二区 | 国产欧美日韩 | 欧美久久久 | 天堂成人国产精品一区 | 一级做a爰片性色毛片 | 日韩欧美高清dvd碟片 | 美日韩一区二区 | 91精品久久久久久久久久小网站 | 欧美在线观看网站 | 国产精品久久久久无码av | 欧美日韩在线精品 | 国产精品久久久爽爽爽麻豆色哟哟 | 欧美高清成人 | 99热播在线| 日本久久网 | 精品视频在线免费观看 | 国产精品一区二区在线观看 | 日韩在线小视频 | 天天爽夜夜春 | 亚洲一区视频在线 | 亚洲精品中文字幕中文字幕 | 午夜私人影院在线观看 | 日韩综合一区 | 一级黄色片视频 | 中文字幕1区 | 久久久久中文字幕 | 91午夜伦伦电影理论片 | 亚洲人成中文字幕在线观看 | 精品久久久久久久久久久久包黑料 | 国产成人精品久久二区二区 | 色综久久 | 一色屋精品久久久久久久久久 | 中文字幕天堂在线 | 日本免费xxxx | 精品一区二区三区在线视频 | 中文字幕观看 | 亚洲精品一区二区三区四区高清 | 亚洲精品一区二区三区在线看 | 久久久久中文字幕 | 国产精品99久久久久久久vr | 免费黄在线看 | 三级黄视频在线观看 | 91国偷自产一区二区三区亲奶 | 中文字幕在线观看www | 毛片激情永久免费 | 亚洲欧洲精品视频 | 久免费视频 | 国产一区二区在线免费观看 | 在线激情网站 | 99精品欧美一区二区三区综合在线 | 91久久久久久 | 国产男女爽爽爽免费视频 | 激情五月婷婷综合 | 亚洲精品自在在线观看 | 久久只有精品 | 欧美综合在线观看 | 久久伊人青青草 | 中文字幕日韩一区二区 | 91精品啪啪 | 日韩成人精品 | 久久91视频| 日韩精品免费在线观看 | 美女天堂网 | 波多野结衣一区二区三区高清 | 成年免费a级毛片 | 在线观看免费毛片视频 | 一区二区三区四区免费 | 久久人人爽人人爽 | 麻豆精品久久久 | 嫩草成人影院 | 91精品啪啪 | 精品久久久久久久久久 | 久久一级| 久久成人综合网 | 成人精品久久 | 浴室洗澡偷拍一区二区 | 成人欧美一区二区三区白人 | 91婷婷射 | 久久久久久久99精品免费观看 | 91在线看 | 久久人人爽人人爽人人片av高清 | 日韩精品视频三区 | 日韩视频免费 | 狠狠爱亚洲 | 色女人的天堂 | 色视频网站在线观看 | 特级黄一级播放 | 欧美99| 一级国产视频 | 日本99精品 | 国产一区二区三区在线免费 | 日韩视频免费在线观看 | 青青草视频网站 | 美女视频一区二区三区 | 中文字幕亚洲综合 | 欧美一区二区三区在线观看视频 | 一级一片免费视频 | 亚州精品视频 | 国产激情一区二区三区 | 91视频免费看| 久久tv在线观看 | 欧美精品1区2区3区 免费亚洲婷婷 | 欧美日韩成人在线 | 在线观看一级片 | 99久久精品免费 | 在线91| 麻豆精品久久久 | 欧美视频精品在线 | 色成人免费网站 | 成人在线网站 | 红桃av一区二区 | 欧美3区| 81精品国产乱码久久久久久 | 久久不射电影网 | 亚洲精品午夜视频 | 午夜精品一区二区三区在线播放 | 日韩视频在线不卡 | 亚洲电影在线观看 | 日韩欧美中文在线 | 亚洲成人aaa | 成人视屏在线观看 | 91久久夜色精品国产网站 | 亚洲天堂成人 | 人人插人人干 | 亚洲视频精品一区 | 亚洲成人av在线 | 欧美精品一区二区三区在线播放 | 欧美日韩一级二级三级 | 亚洲嫩草| 午夜免费视频 | 天天视频成人 | 91av导航| 91亚洲一区 | 久国产| 天天干人人插 | 亚洲精品久久久久久下一站 | 免费在线一区二区三区 | 日韩在线免费 | 亚洲精品久久久久久久久久久 | 一区二区三区回区在观看免费视频 | 久久精品一区二区三区四区 | 午夜婷婷丁香 | 巨大黑人极品videos精品 | 一区二区三区在线观看免费 | 日本精品视频在线观看 | 99爱视频 | 999精品视频 | 婷婷视频在线 | 私人毛片免费高清视频 | 亚洲一区在线观看视频 | 黄色片免费在线观看视频 | 狠狠的干 | 欧洲美女性开放视频 | 国产免费久久 | 日韩日韩日韩日韩日韩日韩 | 四虎动漫 | 欧美日韩免费一区二区三区 | www.久久爱.cn | 日日干夜夜操 | 日韩欧美~中文字幕 | 91精品国产91久久综合桃花 | 欧洲一区在线 | 久久精品一区二区三区四区 | 激情久久久久 | 第一色综合 | 国产午夜精品一区二区三区免费 | 91中文字幕一区 | 不卡一区二区三区四区 | 岛国av在线 | 国产精品原创av | 日本a视频| 精品一区二区久久久久久久网站 | 欧美日韩免费一区二区三区 | 91精品欧美久久久久久动漫 | av午夜 | 欧美久久一区二区 | 国产成人一区二区 | 98精品国产高清在线xxxx天堂 | 日韩欧美精品在线 | 国产青青草 | 国产精品一区二区三区在线播放 | 操人网站 | 99re视频在线观看 | 91精品国产高清一区二区三区 | 久久伊人亚洲 | 日韩国产欧美 | 精品久久久久久久久久久久久久久久久久 | 山岸逢花在线 | 亚洲综合无码一区二区 | 91精品国产乱码久久蜜臀 | 岛国av免费看| 欧美性网| 亚洲+变态+欧美+另类+精品 | 久久久精品久久久久 | 亚洲性网| 日本免费在线 | 亚洲最黄网站 | v片网站 | 毛片福利 | 国产一区二区久久久 | 国产视频综合在线 | 欧美一级二级三级 | 日韩在线视频播放 | 国产艳妇av视国产精选av一区 | 91精品国产91久久久久久吃药 | 亚洲91| 日韩三级黄 | 中文字幕亚洲区 | 日韩视频国产 | 日韩a级免费视频 | 免费观看一区二区三区 | 91看片网 | 欧美黄色性视频 | 狠狠操av| 日日干日日爽 | 日韩成人三级 | 91在线区 | 精品国产一区二区在线 | 日韩一级电影在线 | h视频免费看 | 欧美激情综合色综合啪啪五月 | 一区二区视频免费 | 国产91在线播放精品91 | 久久影音先锋 | 精品久久久久久久久久久久久久 | 成人三级免费 | 国产成人精品一区二区三区视频 | 久久久久久久久一区二区三区 | 99久久99久久精品 | 久久精品国产免费 | 色综合一区 | 国产精品视频99 | 99re国产| 欧美综合成人网 | 久久久高清 | 欧美一级艳片视频免费观看 | 午夜精品偷拍 | 国产精品久久久久久久9999 | 欧美精品成人一区二区在线 | av在线网址观看 | 在线观看欧美一区二区三区 | 成人免费视频播放 | 天堂一区二区三区 | 精品国产乱码一区二区三区 | 成人免费一区二区三区 | 国产婷婷色一区二区三区 | 欧美久久一区二区 | 亚洲欧美在线观看 | 人人做人人爽 | 天天躁日日躁aaaaxxxx | 亚洲女人天堂av | 日韩大片一区 | 天堂一区| www.99热.com | www.色综合 | 久久涩| 精品久久久久久久久久久久 | 欧美黄视频| 国产野精品久久久久久久不卡 | 亚洲一区二区三区视频 | 亚洲小视频 | 国产99一区 | 亚洲成人中文字幕 | 中文字幕欧美日韩 | 四虎影院在线 | 国产成人高清精品免费5388 | 久久久一区二区 | 久久黑人 | 国产女人高潮视频在线观看 | 色视频网站免费看 | 一级片在线观看 | 韩日av在线 | 在线亚洲一区二区 | aaaa大片| 麻豆精品一区二区 | 四色成人av永久网址 | 国模精品视频一区二区 | 国产精品美女久久久久久久久久久 | 操操网 | 国产精品高清在线 | 在线色av| 日韩一区二区三区精品 | 欧美一区二区三区在线观看 | 国产馆一区二区 | 亚洲激情在线播放 | 国产精品毛片久久久久久久 | 久久99精品视频 | 中文字幕av网 | 草草久久久| 亚洲综合色视频在线观看 | 国产在线精品二区 | 精品国产精品三级精品av网址 | 亚洲视频在线看 | 99精品热| 精品国产一区在线 | 国产老头老太作爱视频 | 噜噜噜噜狠狠狠7777视频 | 毛片一区二区 | 亚洲美女精品视频 | 国产精品久久国产精品 | 国产成人精品一区二区三区四区 | 亚洲精品wwww | 久久久久一区二区 | 黄色片免费观看网站 | 久久精品国产99久久久 | 亚洲视频中文字幕 | 欧美国产一区二区三区 | www.国产视频| 亚洲视频二区 | 在线天堂新版最新版在线8 www.国产欧美 | 高清中文字幕 | 午夜私人影院 | 亚洲资源在线 | 午夜一区二区三区在线观看 | 国产一级一级国产 | 色中色综合 | 国产极品视频在线观看 | 亚洲一区国产视频 | 激情在线观看视频 | 午夜精品成人一区二区 | 日韩1区3区4区第一页 | 伊人激情综合 | 亚洲三级在线观看 | 99爱在线观看 | 色噜噜色综合 | 国产免费一区 | 7777视频 | 欧美一区二区大片 | 欧美一区2区三区4区公司二百 | 国产精品一区在线观看你懂的 | 亚洲精品视频在线观看免费 | 天天操天天插天天干 | 欧美啊v| 高清免费av| 国产精品国产精品国产专区不卡 | 久久久久久91香蕉国产 | 国产主播一区 | 爱啪导航一精品导航站 | 国产激情午夜 | 久草免费福利 | 久草福利 | 久久精品无码一区二区日韩av | 亚洲免费在线 | 99热在线看 | 久久精品麻豆 | the蜜臀av入口| 国产第一区在线观看 | 欧美日韩一区二区三区在线观看 | 日韩毛片一级 | 日韩久久久一区二区 | 超级碰在线视频 | 国产精品s色 | 亚洲国产天堂久久综合 | 亚洲国产婷婷香蕉久久久久久99 | 亚洲精品乱码久久久久久蜜桃不爽 | 日韩一二三区视频 | 精品久久久久香蕉网 | 五月婷婷在线观看视频 | 久热热| 后人极品翘臀美女在线播放 | 日韩在线观看视频一区二区三区 | 欧美精品久久久久久久久久丰满 | 国产一级片a| 一级黄色片网站 | 午夜a v电影 | 精品一二区 | 一区二区三区免费网站 | 欧美综合国产精品久久丁香 | 天天看天天做 | 欧美专区在线观看 | 红桃av一区二区 | 欧美日韩一区不卡 | 一级在线看 | 香蕉av777xxx色综合一区 | 欧美日韩国产在线 | 在线成人国产 | 色橹橹欧美在线观看视频高清 | 亚洲综合国产 | 一区二区三区在线免费 | 精品九九九 | 日韩不卡一区二区 | 久久亚洲一区二区 | 国产香蕉视频在线播放 | 夜夜操操操 | a免费在线 | 日韩精品不卡 | 精品久久一区二区三区 | av免费观看网站 | 国产精品二区三区 | 日韩欧美在线不卡 | 久久人人爽人人爽 | 91精品国产综合久久国产大片 | 欧美成人精品一区 | 久久精品久久综合 | a级黄色毛片免费观看 | 北条麻妃一区二区三区在线 | 午夜国产羞羞视频免费网站 | 国产一区国产二区在线观看 | 欧美日韩中文字幕 | 久久国产精品视频 | 91在线精品视频 | 午夜视频在线观看网站 | www.嫩草| 国产一区二区三区久久久久久久久 | 久久久久亚洲精品 | 国产在线观看一区二区三区 | 天天干天天操天天舔 | 九色在线观看 | 国产高清精品一区二区三区 | 国产探花 | 久久久久久久一区二区 | 中文字幕电影在线 | 性瘾调教校园h | 日韩视频免费看 | 男女污污网站 | 久草视频国产 | 妞干网国产 | 国产欧美一区二区 | 成人av片在线观看 | 婷婷久| 欧美成人一区二区 | 在线观看免费黄色小视频 | 久久久久亚洲精品 | 99免费在线播放99久久免费 | 成人在线免费视频 | 91九色网站 | 精品九九九 | 欧美激情小视频 | 午夜视频网 | 色综合久久久 | 亚洲一区二区中文字幕在线观看 | 亚洲视频免费 | 中文字幕乱码亚洲精品一区 | 成人网在线观看 | 久久精品久久久久久久久久16 | 视频在线一区二区三区 | 香蕉久久夜色精品国产使用方法 | 成人在线免费视频 | 久久99视频| 自拍偷拍专区 | 日韩1区 | 午夜寂寞少妇aaa片毛片 | 成年人视频在线免费观看 | 日韩不卡一区二区 | 日韩欧美在| 欧美日韩视频 | 91色在线观看 | 久久99精品久久久久久久青青日本 | 在线观看国产一级片 | 亚洲欧美在线观看 | 一级黄色片网站 | 久久91精品国产 | 不卡在线 | 国产精品久久国产精品 | 欧美激情网址 | 久久久久国产精品一区二区 | 欧美一级c片 | 在线观看中文字幕亚洲 | 天天干天天曰天天操 | 成人欧美一区二区三区 | 国产区在线观看 | 精品久久亚洲 | 国产成人午夜高潮毛片 | 中文字幕在线网址 | 国产欧美一二三区在线粉嫩 | 欧美伊人 | 欧美日韩精品一区二区 | 高清视频一区 | 免费毛片视频 | www.黄网| 成人精品鲁一区一区二区 | 欧美激情在线观看 | 久久va| 久久精品小视频 | 69性欧美高清影院 | 久久久久亚洲精品 | 国产成人福利在线 | 少妇色欲网 | 日韩欧美国产精品一区二区三区 | 国内精品一级毛片国产99 | 在线国产一区二区 | 一区二区三区不卡视频 | 91精品久久久久久久久久 | 亚洲国产免费 | 成人亚洲视频 | 污污视频免费网站 | 天天躁日日躁aaaaxxxx | 日韩精品一区在线视频 | 精品在线一区二区三区 | 日本一区二区高清视频 | 亚洲成人免费 | 一区二区三区在线播放视频 | 国产免费一区二区 | 精品九九 | 欧洲尺码日本国产精品 | 日韩一及片| 一区二区三区视频 | 日韩精品专区 |