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

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

java之TreeUtils生成一切對象樹形結構案例

瀏覽:2日期:2022-08-24 10:01:07

項目中經常會遇到各種需要以樹形結構展示的功能,比較常見的,如菜單樹,分類樹,部門樹等等,如果為每種類型都遍歷遞歸生成樹形結構返回給前端,顯得有些冗余且麻煩,并且其實邏輯都是一致的,只是遍歷的對象不同而已,故其實可以通過面向接口思維,來實現這種通用工具類的實現。

TreeNode用來表示每個樹節點的抽象,即需要生成樹的對象需要實現此接口。

/** * 樹節點父類,所有需要使用{@linkplain TreeUtils}工具類形成樹形結構等操作的節點都需要實現該接口 * * @param <T> 節點id類型 */ public interface TreeNode<T> { /** * 獲取節點id * * @return 樹節點id */ T id(); /** * 獲取該節點的父節點id * * @return 父節點id */ T parentId(); /** * 是否是根節點 * * @return true:根節點 */ boolean root(); /** * 設置節點的子節點列表 * * @param children 子節點 */ void setChildren(List<? extends TreeNode<T>> children); /** * 獲取所有子節點 * * @return 子節點列表 */ List<? extends TreeNode<T>> getChildren(); }

TreeUtils用來生成樹形結構,以及獲取所有葉子節點等操作

/** * 樹形結構工具類 * * @author meilin.huang * @version 1.0 * @date 2019-08-24 1:57 下午 */public class TreeUtils { /** * 根據所有樹節點列表,生成含有所有樹形結構的列表 * * @param nodes 樹形節點列表 * @param <T> 節點類型 * @return 樹形結構列表 */ public static <T extends TreeNode<?>> List<T> generateTrees(List<T> nodes) { List<T> roots = new ArrayList<>(); for (Iterator<T> ite = nodes.iterator(); ite.hasNext(); ) { T node = ite.next(); if (node.root()) {roots.add(node);// 從所有節點列表中刪除該節點,以免后續重復遍歷該節點ite.remove(); } } roots.forEach(r -> { setChildren(r, nodes); }); return roots; } /** * 從所有節點列表中查找并設置parent的所有子節點 * * @param parent 父節點 * @param nodes 所有樹節點列表 */ @SuppressWarnings('all') public static <T extends TreeNode> void setChildren(T parent, List<T> nodes) { List<T> children = new ArrayList<>(); Object parentId = parent.id(); for (Iterator<T> ite = nodes.iterator(); ite.hasNext(); ) { T node = ite.next(); if (Objects.equals(node.parentId(), parentId)) {children.add(node);// 從所有節點列表中刪除該節點,以免后續重復遍歷該節點ite.remove(); } } // 如果孩子為空,則直接返回,否則繼續遞歸設置孩子的孩子 if (children.isEmpty()) { return; } parent.setChildren(children); children.forEach(m -> { // 遞歸設置子節點 setChildren(m, nodes); }); } /** * 獲取指定樹節點下的所有葉子節點 * * @param parent 父節點 * @param <T> 實際節點類型 * @return 葉子節點 */ public static <T extends TreeNode<?>> List<T> getLeafs(T parent) { List<T> leafs = new ArrayList<>(); fillLeaf(parent, leafs); return leafs; } /** * 將parent的所有葉子節點填充至leafs列表中 * * @param parent 父節點 * @param leafs 葉子節點列表 * @param <T> 實際節點類型 */ @SuppressWarnings('all') public static <T extends TreeNode> void fillLeaf(T parent, List<T> leafs) { List<T> children = parent.getChildren(); // 如果節點沒有子節點則說明為葉子節點 if (CollectionUtils.isEmpty(children)) { leafs.add(parent); return; } // 遞歸調用子節點,查找葉子節點 for (T child : children) { fillLeaf(child, leafs); } }}

具體使用方式之聲明樹節點對象

@Getter@Setterpublic class ResourceListVO implements TreeNode<Long> { private Long id; private Long pid; private Integer type; private String name; private String icon; private String code; private Integer status; private List<ResourceListVO> children; @Override public Long id() { return this.id; } @Override public Long parentId() { return this.pid; } @Override public boolean root() { return Objects.equals(this.pid, 0L); } @Override public void setChildren(List children) { this.children = children; }}

具體使用方式之調用

/** * 獲取賬號的資源樹 */ public List<ResourceListVO> listByAccountId(Long accountId) { return TreeUtils.generateTrees(BeanUtils.copyProperties(mapper.selectByAccountId(userId), ResourceListVO.class)); }

通過使用TreeUtils工具可以統一方便地生成一切對象的樹形結構以及其他一些對樹的操作,避免對每個對象都用特定代碼生成。使用起來就是幾個字簡潔方便爽歪歪biu特否。

補充知識:TreeUtil 數據庫菜單生成無限級樹形結構

1、項目需求:

從數據庫從加載所有的菜單出來,菜單中有

id,parentId,name字段

希望能有一個工具幫我進行樹形結構重組;

實例類:

package com.lming.chcservice.util; import lombok.Data; import java.util.List;@Datapublic class TreeNode { /** * 節點id */ private String id; /** * 父節點 默認0為根節點 */ private String parentId; /** * 節點名稱 */ private String name; /** * 是否有子節點 */ private boolean hasChild; public TreeNode(String id, String parentId, String name) { this.id = id; this.parentId = parentId; this.name = name; }}

工具類:

package com.lming.chcservice.util; import java.util.ArrayList;import java.util.LinkedHashMap;import java.util.List;import java.util.Map; /** * 樹形結構工具類 * * 將一組list對象轉成樹形結構 * 該list需符合設定的字段類型 * */public class TreeUtil { public static Map<String,Object> mapArray = new LinkedHashMap<String, Object>(); public List<TreeNode> menuCommon; public List<Object> list = new ArrayList<Object>(); public List<Object> treeMenu(List<TreeNode> menu){ this.menuCommon = menu; for (TreeNode treeNode : menu) { Map<String,Object> mapArr = new LinkedHashMap<String, Object>(); if(treeNode.getParentId().equals('0')){setTreeMap(mapArr,treeNode);list.add(mapArr); } } return list; } public List<?> menuChild(String id){ List<Object> lists = new ArrayList<Object>(); for(TreeNode a:menuCommon){ Map<String,Object> childArray = new LinkedHashMap<String, Object>(); if(a.getParentId() .equals(id)){setTreeMap(childArray,a);lists.add(childArray); } } return lists; } private void setTreeMap(Map<String,Object> mapArr,TreeNode treeNode){ mapArr.put('id', treeNode.getId()); mapArr.put('name', treeNode.getName()); mapArr.put('parentId', treeNode.getParentId()); List<?> childrens = menuChild(treeNode.getId()); if(childrens.size()>0){ mapArr.put('hasChild',true); } else{ mapArr.put('hasChildren',false); } mapArr.put('childrens', menuChild(treeNode.getId())); } public static void main(String[] args){ List<TreeNode> treeNodeList = new ArrayList<>(); TreeNode treeNode1 = new TreeNode('1','0','首頁'); TreeNode treeNode2 = new TreeNode('2','0','訂單'); TreeNode treeNode3 = new TreeNode('3','1','預約'); TreeNode treeNode4 = new TreeNode('4','2','捐獻'); TreeNode treeNode5 = new TreeNode('5','4','我的訂單'); TreeNode treeNode6 = new TreeNode('6','5','個人中心'); TreeNode treeNode7 = new TreeNode('7','6','個人中心2'); TreeNode treeNode8 = new TreeNode('8','99','個人中心3'); treeNodeList.add(treeNode1); treeNodeList.add(treeNode6); treeNodeList.add(treeNode5); treeNodeList.add(treeNode3); treeNodeList.add(treeNode4); treeNodeList.add(treeNode2); treeNodeList.add(treeNode7); treeNodeList.add(treeNode8); TreeUtil treeUtil = new TreeUtil(); System.out.print(JsonUtil.toJson(treeUtil.treeMenu(treeNodeList))); } }

測試結果:

[ { 'id': '1', 'name': '首頁', 'parentId': '0', 'hasChild': true, 'childrens': [ { 'id': '3', 'name': '預約', 'parentId': '1', 'hasChildren': false, 'childrens': [] } ] }, { 'id': '2', 'name': '訂單', 'parentId': '0', 'hasChild': true, 'childrens': [ { 'id': '4', 'name': '捐獻', 'parentId': '2', 'hasChild': true, 'childrens': [ { 'id': '5', 'name': '我的訂單', 'parentId': '4', 'hasChild': true, 'childrens': [ {'id': '6','name': '個人中心','parentId': '5','hasChild': true,'childrens': [ { 'id': '7', 'name': '個人中心2', 'parentId': '6', 'hasChildren': false, 'childrens': [] }] } ] } ] } ] }]

實力類不一致怎么辦? 自己寫一個實體轉換類,將類的對象屬性轉換成上面的實體類,然后在調用,當然最快的方式直接修改實體類即可用。

以上這篇java之TreeUtils生成一切對象樹形結構案例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 国产中文一区二区三区 | 青青操av | 精品一区二区久久久久久久网站 | 国产精品黄网站在线观看 | 久久久久一区二区三区 | 亚洲777 | 国产精品久久久久久亚洲调教 | 一区二区日韩 | 色综合久久天天综合网 | 国产日韩精品视频 | 国产综合亚洲精品一区二 | 国产精品毛片在线 | 日日摸夜夜添夜夜添亚洲女人 | 国产午夜精品福利 | 国产精品久久久久国产a级 91福利网站在线观看 | 成人午夜在线视频 | 国产在线激情视频 | 国产欧精精久久久久久久 | 91精品国产综合久久久久久漫画 | 精品久久久久久久久久久久 | 中文字幕日韩一区二区 | 国产不卡一区 | 999精品视频 | 国产99久久久精品视频 | 亚洲美女在线视频 | 蜜桃视频精品 | 美女视频一区 | 亚洲欧美一区二区三区不卡 | 中文字幕一区在线 | 自拍偷拍第一页 | 国产精品久久久久久久久久久久久 | 亚洲不卡在线观看 | 亚洲精品国产电影 | jjzz18国产| 精品日韩欧美一区二区三区 | 亚洲精品成人 | 久久综合一区二区 | 国产精品久久久久久一区二区三区 | 日韩不卡一区二区 | 久久久久久久久久一区二区 | 欧美日韩国产高清 | 国产精品二区三区 | 亚洲欧美日韩在线 | 国产一级特黄毛片在线毛片 | 国变精品美女久久久久av爽 | 日本一区二区中文字幕 | av中文字幕在线播放 | 九九九视频精品 | 91 在线观看| 九九在线精品 | 久久久久久久久久久网站 | 日韩一区二区在线观看 | 欧美精品一区二区在线观看 | 婷婷在线视频 | 国产精品一区在线观看 | 中文字幕一区二区在线观看 | 一区二区三区国产 | 国产一级黄色大片 | 91色爱| 欧美综合成人网 | 亚洲精品7777xxxx青睐 | 日韩欧美第一页 | 亚州中文字幕 | 香蕉视频在线看 | 国产野精品久久久久久久不卡 | 日韩中文字幕av | 欧美大片一区二区 | 精品在线一区二区三区 | 久久91精品国产 | 成人免费视屏 | 伊人网站| 一区二区三区四区在线播放 | 成人涩涩日本国产一区 | 亚洲美女视频一区二区三区 | a∨在线观看 | 亚洲精品国产setv | 四虎新网站 | 亚洲看片 | 欧美大成色www永久网站婷 | 在线免费成人 | 日韩一区在线视频 | 国产视频久久精品 | 国产综合亚洲精品一区二 | 成人在线视频免费观看 | 国产精品1区2区 | 成人毛片久久 | 亚洲网站在线观看 | 日韩欧美一级在线 | 在线精品亚洲 | 国产精品一区二区三区在线免费观看 | 黄色国产一级视频 | 欧美日韩91 | 天天久久 | 国产亚洲成av人片在线观看桃 | 欧美日韩国产一区二区三区 | 伊人久久精品久久亚洲一区 | 久操伊人 | 成人精品一区二区三区电影黑人 | 日韩免费观看视频 | av中文字幕在线播放 | av超碰在线 | 国产精品激情在线观看 | 精品999 | 欧美视频第一页 | 亚洲一区二区三区久久久 | 国产精品99久久久久久www | 欧美精品一区二区在线观看 | 国外成人在线视频 | √新版天堂资源在线资源 | 欧美激情网 | 高清国产一区二区三区四区五区 | 亚洲一区二区三区免费视频 | 日韩av资源站| av看片网| 91九色视频在线 | 不卡一区二区三区四区 | 日韩欧美在线视频 | 久久精品一区二区国产 | 草草视频在线观看 | 国产精品美女久久久久久久久久久 | 日韩3级在线观看 | 免费观看一区二区三区毛片 | 色视频久久 | 91aiai| 综合五月网 | 亚洲欧美日韩另类精品一区二区三区 | 欧美日韩在线视频免费 | 久久手机在线视频 | 国产高清第一页 | 国产一二三区在线观看 | 国产美女永久免费无遮挡 | 欧美综合视频 | 国产精品精品 | 久久精品欧美 | 久久日韩| 男女视频在线观看 | 国产精品久久久久久吹潮 | 精品美女在线 | 国产精品国产 | 国产高潮失禁喷水爽网站 | 极品久久 | 日韩一区二区在线观看 | 伊人免费视频 | 亚洲精品欧美视频 | 天天干天天看天天操 | 午夜免费视频 | 一区二区三区免费 | 国产精品毛片无码 | 国产精品久久久久久吹潮 | 亚洲a网| 在线你懂得| 在线久| 7777奇米影视| 欧洲一级毛片 | 中文字幕日韩在线 | 美女视频一区二区三区 | 亚洲精品乱码 | 999视频| 91精品国产综合久久国产大片 | 在线观看成人国产 | 亚洲精品视频在线 | 国产区精品 | 成人av免费在线 | 亚洲激情精品 | 一级毛片一级毛片一级毛片 | 97高清国语自产拍 | 黄视频在线播放 | 亚洲人成网站999久久久综合 | av在线免费观看一区二区 | 欧美日韩一区在线 | 欧美日韩国产一级片 | 黄色国产一级视频 | 999国产在线观看 | 欧美xxxx黑人又粗又长 | 日韩中文在线观看 | 一区二区蜜桃 | 日韩中文字幕在线免费观看 | av下一页 | 成人黄色片网站 | 午夜色视频在线观看 | 亚洲欧美精选 | 精品久久久久久久人人人人传媒 | 91欧美在线 | 日本在线观看网站 | 午夜影院免费 | 一区二区三区国产免费 | 国产精品免费av | 天天射天天干 | 亚洲天堂中文字幕 | 国产精品1区2区 | 色播99 | 亚洲一区欧美 | 在线精品亚洲欧美日韩国产 | 亚洲区国产区 | 欧洲一区二区三区 | 国产高清在线 | 成人免费在线电影 | 国产高清在线精品一区 | 亚洲综合99 | 日本涩涩网站 | 欧美色综合天天久久综合精品 | 国产精品一区二区不卡 | 亚洲精品电影在线观看 | 久久久精 | 九九99热 | 久久久999国产 | 羞羞视频在线网站观看 | 国产日韩精品在线观看 | 龙珠z国语291集普通话 | 日韩欧美网 | 国产精品久久久久久久娇妻 | 91av爱爱| 国产免费一区二区三区网站免费 | 视频一区二区三区免费观看 | 亚洲第一视频 | 在线成人国产 | 国产一区二区三区视频 | 毛片在线网站 | 成人在线免费 | 国产精品无码永久免费888 | 国产精品自拍视频 | 亚洲一级黄色 | 天天插天天干 | 成人在线播放 | 五月激情婷婷六月 | 精品国产三级a在线观看 | 综合 欧美 亚洲日本 | 狠狠影院 | 精品国产一区二区在线 | 国产高清一二三区 | 国产精品成人在线 | 一区二区成人网 | 夜夜精品视频 | 爱草在线| av网站免费观看 | 久久久国产视频 | 一区二区国产精品 | 综合五月激情 | 日韩视频一区二区三区 | 96久久久久久 | 欧美在线国产 | 人人干视频 | 国产在线一区不卡 | 成人在线三级 | 日日射天天干 | 在线看国产 | 欧美日本乱大交xxxxx | 久久a毛片 | 人人干视频 | 日韩中文一区二区 | 四虎永久免费影院 | 日韩电影免费在线观看中文字幕 | 天堂亚洲 | 亚洲精品一区中文字幕乱码 | 国产区免费在线观看 | 日韩中文视频 | 久久久片 | 北条麻妃国产九九九精品小说 | 毛片日韩 | 国产激情视频在线观看 | 久久精品一区二区三区四区 | 色综合久久久久 | 99亚洲国产精品 | 亚洲国产精品精华液com | 狠狠干美女 | 久艹伊人| 国产精品1区 | 一区二区av在线 | 玖玖玖影院| 欧洲毛片| 天天天天天天天天干 | 亚洲夜幕久久日韩精品一区 | 精品在线一区二区三区 | 青草福利 | av成人在线观看 | 国产 日韩 欧美 在线 | 天天人人精品 | 美女视频黄色片 | 一级黄色毛片免费 | 国产视频久久久久 | 狠狠夜夜| 黄色大片网 | 91成人免费视频 | 四虎免费看黄 | 伊人网页 | 国产免费av在线 | 国产乱码精品一区二区三区忘忧草 | 亚洲免费观看视频 | 一区二区三区四区日韩 | 国产视频久久久久久久 | 成年入口无限观看网站 | 国产免费一区二区三区网站免费 | 亚洲第一色片 | 国产精品久久一区 | 午夜男人网 | 久久久久久久久国产成人免费 | 欧日韩不卡在线视频 | 国产精品久久久久久久美男 | 免费国产wwwwwww网站 | 欧美激情欧美激情在线五月 | 91精品久久久久久久久久入口 | 日韩午夜激情视频 | 日韩欧美在线观看 | 日韩视频一区二区三区 | 精品999www| 在线日韩欧美 | 青青草一区 | 欧美在线国产 | 美女视频黄色免费 | 国产精品18久久久久久久久 | 婷婷久久综合 | 国产51人人成人人人人爽色哟哟 | 欧美中文在线 | 国产精品一区二区三区四区 | 中文字幕免费观看 | 亚洲国产精品一区二区三区 | 日韩一区二区三区福利视频 | 99re免费视频精品全部 | 日韩在线成人 | 人人干人人干人人干 | 午夜精品久久久久久久男人的天堂 | 电影91| 正在播放国产精品 | 精品亚洲一区二区三区 | av国产精品 | 91精品一区二区三区久久久久久 | 亚洲免费成人 | 中文字幕精品一区二区三区精品 | 黄色小视频在线观看 | 久久综合九色综合欧美狠狠 | 中国一级特黄毛片大片 | 久久久久亚洲精品 | 久久网国产| 欧美日韩精品区 | 国产区视频在线观看 | 九色网址 | 国产一级毛片国语一级 | 一区二区视频在线 | 日韩午夜| 美女一级a毛片免费观看97 | 国产三级在线观看 | 中文字幕在线观看 | 在线播放高清视频www | av影片在线| 夜夜av | 一区二区三区在线看 | 日韩一区二区福利 | 日日干日日操 | 91精品视频在线 | 国产精品美女久久久久久久网站 | 99视频这里有精品 | 老妇激情毛片免费 | 色天天久久 | 国产干干干 | 黄色片免费观看网站 | 成人在线免费视频 | 成人一区二区三区在线 | 国产真实乱全部视频 | 欧美 日本 国产 | 亚洲福利av| 日韩在线永久免费播放 | 亚洲人成在线观看 | 色网站在线观看 | 91在线免费视频 | 日韩字幕一区 | 亚洲国产精品99久久久久久久久 | 久久久.com| 国产馆一区二区 | 青青草人人 | 久久综合九色综合欧美狠狠 | 日韩精品一区二区三区 | 日韩成人免费视频 | 久久精品二| 毛片免费看 | 一级毛片在线播放 | 国产精品中文字幕在线观看 | 欧美在线一区二区三区 | 中文字幕 亚洲一区 | 玖玖玖影院 | 99久久婷婷 | 资源av| 日韩免费高清视频 | www.99精品| av片在线观看 | 精品香蕉一区二区三区 | 久久国产精品久久久久久 | 免费h在线观看 | 老妇激情毛片免费 | 国产情侣自拍啪啪 | 中文字幕一页二页 | 国产精品久久一区 | 国产女人爽到高潮免费视频 | 国产视频一区二区 | 在线成人国产 | 国产毛片视频 | 精品国产99 | 国产亚洲一区二区三区 | 欧美成人精品一区二区男人看 | 天天看夜夜爽 | 毛片a级片| 国产高清小视频 | 永久精品 | 国产婷婷精品 | 久久久久久久久一区二区三区 | 精品www| 国产精品成人一区二区三区夜夜夜 | 性色av一区二区三区免费看开蚌 | 久久国产精品99久久久久久老狼 | 中文字幕黄色 | 国产 欧美 日韩 一区 | 国产成人免费视频网站高清观看视频 | 成人练习生 | 日本在线播放 | 一区二区三区亚洲精品国 | 欧美福利在线 | 羞视频在线观看 | 国产精品一二区 | 99国产精品99久久久久久 | 国产精品一区久久久 | 欧美国产日韩在线观看 | 97久久精品 | 国产xxxxxxxxxx| 国产精品一区二区三区在线 | 人人澡人人射 | 五月婷婷丁香在线 | 欧美日韩精品免费观看视频 | 黄色大片免费网站 | 国产精品久久久久久久久久妞妞 | 国产最新视频 | 欧美日韩精品综合 | 人人射人人 | 国产精品中文字幕在线播放 | 国产一区二区免费 | 在线视频91 | 国产成人精品久久二区二区91 | a级片在线观看 | 国产综合亚洲精品一区二 | 日韩在线欧美 | 久久九精品 | 国产欧美日韩综合精品一区二区 | 亚洲丶国产丶欧美一区二区三区 | 欧美日韩激情在线 | 韩国精品一区二区三区 | 夜夜操天天干 | 日韩精品影院 | 精品久久国产老人久久综合 | 精品国产乱码久久久久久88av | 欧美在线播放一区二区三区 | av毛片免费 | 欧美一区二区三区四区五区 | 国产精品无码永久免费888 | 91久久综合亚洲鲁鲁五月天 | 国产精品久久久久久久久 | 国产伦精品一区二区三区四区视频 | 青娱乐av | 懂色一区二区三区av片 | 亚洲va欧美va天堂v国产综合 | 亚洲欧美第一页 | 亚洲精品a在线观看 | 99免费精品 | 亚州中文字幕 | av天天干| 色综合天天天天做夜夜夜夜做 | 久久精品中文字幕 | 九九热这里只有精品8 | 亚洲国产福利一区 | 欧美一区二区三区男人的天堂 | 在线色网站 | 成人免费视频 | 精品视频一区二区三区四区 | 美女在线视频一区二区 | 欧美久久一级特黄毛片 | 国产v日产∨综合v精品视频 | 99视频网站 | 国产精品久久一区性色av图片 | 国产v日产∨综合v精品视频 | 午夜男人免费视频 | 日韩一区二区视频 | 91性高湖久久久久久久久_久久99 | 天天久久 | 一区二区三区日韩 | 永久免费精品视频 | 亚洲视频在线一区 | 青草视频网站 | 欧美专区在线观看 | 欧美一级毛片久久99精品蜜桃 | 久久久亚洲一区 | 欧美一级片在线 | 国产精品69久久久久水密桃 | 精品96久久久久久中文字幕无 | 欧美一区永久视频免费观看 | 久久成人精品视频 | 国产精品综合 | 亚洲品质自拍视频网站 | 国产精品永久免费自在线观看 | 国产精品理论电影 | 精品国产一区二区三区性色av | 亚洲一区免费视频 | 国产不卡一区 | 在线免费观看av片 | 欧美日韩伊人 | 国产一区二区三区四区在线观看 | 国产精品久久一区 | 日韩福利视频 | 91久久久久 | 久久久久久久久久久精 | 激情久久av一区av二区av三区 | 免费精品 | 91精品一区二区三区久久久久久 | 国产精品亲子伦av一区二区三区 | 国产伦精品一区二区三区四区视频 | av一区二区三区 | 成人在线观看免费 | 一区二区三区国产精品 | 91精品久久久久久久久久久 | 成人一级视频 | 欧美日韩精品一区二区三区四区 | 日韩欧美~中文字幕 | 一级毛片在线播放 | 亚洲午夜精品视频 | 91免费影视| 五月激情站 | 久久久久久国产精品美女 | 91精品国产综合久久久久久丝袜 | 日韩欧美国产一区二区 | 国产 高清 在线 | 日韩拍拍 | 一区二区三区四区视频 | 大陆一级毛片免费视频观看 | 宅男lu666噜噜噜在线观看 | 亚洲精品久久久久一区二区三区 | 一区二区三区影院 | 日本69视频 | 中国大陆高清aⅴ毛片 | 精品国产乱码久久久久久闺蜜 | 久草国产视频 | 毛片免费观看视频 | 亚洲精品久久久久久久久久久 | 国产一级视频在线播放 | 日韩日韩日韩日韩日韩日韩日韩 | 99热免费精品 | 午夜剧院官方 | 国产精品视频一二三 | 亚洲免费视频在线 | 中文字幕亚洲二区 | 太平公主一级艳史播放高清 | 国产最新网址 | 成人不卡视频 | 国产精品178页 | 欧美久久精品 | 日本亚洲国产一区二区三区 | 一区视频 | 视频一区中文字幕 | 一级片在线观看 | 午夜精品一区二区三区在线播放 | 在线欧美日韩 | 天天草av | 免费观看电视在线高清视频 | 在线观看国产 | 色综合天天天天做夜夜夜夜做 | 久久精品视频网站 | 黄色高清视频 | 看毛片网站 | 中文字幕在线免费视频 | 一区二区精品视频 | 亚洲夜幕久久日韩精品一区 | 久久香蕉国产 | 蜜桃久久av | 午夜私人影院 | 亚洲激情视频 | 国产精品二区一区二区aⅴ污介绍 | 真人一级毛片 | av超碰| 97人人草| 欧美a在线| 成人日韩 | 午夜精品久久久久久久久久久久久 | 亚洲欧美国产一区二区三区 | 久久国产经典视频 | 欧美激情一区二区三区在线视频 | 91免费国产 | 人人爱干| 日韩视频在线观看 | 91视频免费播放 | 日韩日韩日韩日韩日韩日韩 | 成年无码av片在线 | 欧美日韩一区二区视频在线观看 | 亚洲午夜精品一区二区三区他趣 | 免费看黄色大片 | 日日夜夜精品免费视频 | 中国大陆高清aⅴ毛片 | 亚洲欧美在线观看 | 国产一区二区三区久久久 | www.av7788.com | 国产精品自拍av | 午夜午夜精品一区二区三区文 | 91精品国产综合久久久久久丝袜 | 国产亚洲精品精品国产亚洲综合 | 成视频年人免费看黄网站 | 久久色av | 日韩免费 | 精品久久久久久 | 精品一区二区三区免费视频 | 精品国产欧美一区二区三区成人 | 亚洲精品免费看 | 毛片免费观看网址 | 色乱码一区二区三区网站 | 亚洲日韩欧美一区二区在线 | 久久黄色网| 夜夜艹 | 欧美日韩中文国产一区发布 | 国产精品久久电影观看 | 亚洲精品中文字幕中文字幕 | 精品国产一区二区三区久久久蜜月 | 一区二区av |