亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

SpringBoot+Vue+MySQL扶貧助農(nóng)系統(tǒng)畢設(shè)源碼與部署全攻略

SpringBoot+Vue+MySQL扶貧助農(nóng)系統(tǒng)畢設(shè)源碼與部署全攻略 1. 項(xiàng)目背景與總體定位網(wǎng)上關(guān)于實(shí)驗(yàn)室管理系統(tǒng)、商城系統(tǒng)、管理后臺(tái)的畢設(shè)源碼一抓一大把但真正貼合“扶貧助農(nóng)”這個(gè)業(yè)務(wù)場(chǎng)景、又能完整跑通“前端展示后端管理數(shù)據(jù)落庫文檔交付”的SpringBootVueMySQL項(xiàng)目其實(shí)并不多。大多數(shù)同學(xué)拿到手的版本要么只有前端頁面、后端接口全是假數(shù)據(jù)要么數(shù)據(jù)庫腳本寫得稀爛、跑起來全是報(bào)錯(cuò)要么就是缺論文、缺部署文檔答辯演示的時(shí)候手忙腳亂。這個(gè)項(xiàng)目標(biāo)題給出的信息量其實(shí)不小SpringBoot、Vue、MySQL、源碼、數(shù)據(jù)庫、論文、部署文檔七樣?xùn)|西湊齊了說明這是一個(gè)“全鏈路閉環(huán)”的畢業(yè)設(shè)計(jì)交付物。換句話說你拿到的不是一段段零散的代碼而是一整套可以照著搭建、運(yùn)行、修改、答辯的完整方案。從我做畢設(shè)輔導(dǎo)和幫人排查項(xiàng)目的經(jīng)驗(yàn)來看這種“扶貧助農(nóng)系統(tǒng)平臺(tái)”之所以受歡迎主要有三個(gè)原因第一業(yè)務(wù)方向有時(shí)代感。助農(nóng)、鄉(xiāng)村振興、農(nóng)產(chǎn)品電商、農(nóng)村信息發(fā)布這些詞在開題報(bào)告和答辯PPT里天然站得住腳比“某管理系統(tǒng)”聽起來更有社會(huì)價(jià)值。第二技術(shù)棧足夠主流。SpringBoot做后端REST API、Vue做前端SPA、MySQL做數(shù)據(jù)存儲(chǔ)是近些年畢設(shè)三大件的標(biāo)準(zhǔn)組合考察的知識(shí)點(diǎn)也恰好覆蓋帶你的老師想看到的東西。第三可擴(kuò)展性強(qiáng)。你可以把“扶貧助農(nóng)”拆成若干個(gè)子模塊比如農(nóng)產(chǎn)品商城、農(nóng)戶信息管理、助農(nóng)訂單、公告資訊、物流跟蹤、數(shù)據(jù)分析看板隨便挑一兩個(gè)做深一點(diǎn)論文工作量就出來了。這篇文章我就拿這個(gè)項(xiàng)目的真實(shí)形態(tài)來拆一遍從技術(shù)選型、模塊設(shè)計(jì)、數(shù)據(jù)庫建表、核心接口實(shí)現(xiàn)、部署排錯(cuò)到論文寫作把你從拿到源碼到順利答辯的全過程捋清楚。如果你手上已經(jīng)有這套源碼那就對(duì)照著看哪里可以改、哪里容易踩坑如果你準(zhǔn)備自己從零寫一個(gè)同款這篇也能當(dāng)一份詳細(xì)的實(shí)施參考。2. 為什么是SpringBootVueMySQL的黃金組合2.1 技術(shù)選型背后的真實(shí)考量很多人選技術(shù)棧是“因?yàn)榇蠹叶荚谟谩钡疝q時(shí)老師一定會(huì)問“為什么這么選”。這個(gè)問題答好了很加分答不好很掉價(jià)。SpringBoot做后端核心優(yōu)勢(shì)在于自動(dòng)配置和生態(tài)完善。它不需要像傳統(tǒng)SSM那樣寫一籮筐XML配置spring-boot-starter-web、spring-boot-starter-data-jpa或者M(jìn)yBatis-Plus一引進(jìn)來項(xiàng)目的骨架就立起來了。內(nèi)置Tomcat意味著本地開發(fā)不用單獨(dú)裝容器打包成JAR直接扔服務(wù)器上就能跑。對(duì)于畢業(yè)設(shè)計(jì)這個(gè)場(chǎng)景來說你不需要炫技SpringBoot能讓你把精力花在業(yè)務(wù)邏輯而不是環(huán)境配置上這就夠了。Vue做前端核心優(yōu)勢(shì)是組件化和數(shù)據(jù)驅(qū)動(dòng)。農(nóng)產(chǎn)品列表、訂單管理、用戶中心這些頁面拆成組件之后復(fù)用性很強(qiáng)改動(dòng)一個(gè)地方不用整個(gè)頁面重新調(diào)。而且Vue的生態(tài)里Element UI或者Element Plus組件庫對(duì)新手極其友好表格、表單、分頁、彈窗這些后臺(tái)管理常見的界面元素拖組件改屬性就能出來不需要手搓CSS。MySQL做數(shù)據(jù)庫理由更直白開源、免費(fèi)、資料多、面試筆試都繞不開。你隨便搜一個(gè)問題基本都有現(xiàn)成的答案出了問題不至于卡死。扶貧助農(nóng)這種業(yè)務(wù)的數(shù)據(jù)規(guī)模在畢設(shè)層面就是幾百條到幾千條數(shù)據(jù)單機(jī)MySQL完全輕松扛住不需要引入Redis、MongoDB那套復(fù)雜度。2.2 前后端分離與單體的取舍這里有個(gè)關(guān)鍵點(diǎn)要提前想明白你的畢設(shè)到底是前后端分離還是單體應(yīng)用里嵌Vue打包文件項(xiàng)目標(biāo)題里的寫法是“SpringBootVueMySQL”這字面意思容易讓人默認(rèn)是前后端分離。但實(shí)際操作中有兩種常見形態(tài)一種是完全分離SpringBoot跑在8080端口提供接口Vue跑在8080端口或者用Vite的5173端口開發(fā)調(diào)試部署時(shí)前端打包成dist目錄扔到Nginx里后端JAR獨(dú)立運(yùn)行通過代理轉(zhuǎn)發(fā)接口請(qǐng)求。另一種是簡(jiǎn)化部署Vue打包后的static資源直接放進(jìn)SpringBoot的src/main/resources/static目錄下啟動(dòng)一個(gè)JAR就同時(shí)提供頁面和接口訪問同一個(gè)端口省掉了Nginx這一環(huán)。個(gè)人建議如果你不熟悉Linux服務(wù)器和Nginx配置可以先選擇簡(jiǎn)化部署方案跑通Demo論文里再寫“生產(chǎn)環(huán)境可采用前端靜態(tài)資源與后端API獨(dú)立部署、通過Nginx進(jìn)行反向代理”這樣的擴(kuò)展描述。這樣既保證了演示不出幺蛾子也顯得你考慮過工程化問題。2.3 “源碼數(shù)據(jù)庫論文部署文檔”全套交付的真正意義這四樣?xùn)|西缺一不可源碼是核心。老師要看的是代碼量、代碼結(jié)構(gòu)、業(yè)務(wù)邏輯是否清晰。數(shù)據(jù)庫腳本是前提。沒有建表語句項(xiàng)目換個(gè)環(huán)境就起不來。論文是畢業(yè)答辯的硬指標(biāo)。代碼寫得再好論文不行照樣掛。部署文檔是加分項(xiàng)。能讓老師覺得你是真的自己跑通過而不是GitHub上隨便扒來的。所以如果你拿到一個(gè)項(xiàng)目包先去檢查它的SQL腳本里有沒有測(cè)試數(shù)據(jù)有沒有觸發(fā)器和視圖再去檢查部署文檔里寫的是不是“一鍵啟動(dòng)”級(jí)別的操作說明如果文檔里連JDK版本、Maven配置、Node版本這些基礎(chǔ)信息都不寫那這套交付物的質(zhì)量就要打一個(gè)問號(hào)。3. 系統(tǒng)功能模塊設(shè)計(jì)與業(yè)務(wù)邏輯拆解3.1 角色劃分與權(quán)限模型扶貧助農(nóng)系統(tǒng)的用戶模型常見的做法是分成三類角色管理員Admin、農(nóng)戶/合作社Farmer、普通用戶/消費(fèi)者User。為什么角色劃分要放在第一個(gè)講因?yàn)閿?shù)據(jù)庫表設(shè)計(jì)、后端接口攔截、前端路由守衛(wèi)全部依賴這個(gè)角色模型。很多同學(xué)拿到源碼之后不知道從哪個(gè)功能開始前后端聯(lián)調(diào)就是因?yàn)闆]先梳理角色入口。具體職責(zé)劃分如下角色主要功能權(quán)限前端路由入口管理員用戶管理、農(nóng)產(chǎn)品審核、訂單管理、公告發(fā)布、數(shù)據(jù)統(tǒng)計(jì)/admin/dashboard農(nóng)戶/合作社農(nóng)產(chǎn)品發(fā)布、庫存管理、訂單處理、收益查看/farmer/products普通用戶瀏覽農(nóng)產(chǎn)品、加入購物車、下單、訂單查詢、評(píng)價(jià)/user/home權(quán)限控制在后端用一個(gè)簡(jiǎn)單的攔截器HandlerInterceptor加一個(gè)角色字段判斷就夠了不需要引入Spring Security那套復(fù)雜度。前端配合Vue Router的全局前置守衛(wèi)根據(jù)本地存儲(chǔ)的角色信息決定頁面跳轉(zhuǎn)。3.2 核心功能模塊清單根據(jù)我接觸過的同類型項(xiàng)目這個(gè)系統(tǒng)平臺(tái)通常包含以下模塊你可以對(duì)照著手里的源碼看看是否齊全首頁展示模塊輪播圖/推薦位、熱門農(nóng)產(chǎn)品列表、助農(nóng)資訊公告。前端用Vue的v-for渲染后端返回的商品信息分頁列表。農(nóng)產(chǎn)品管理模塊農(nóng)產(chǎn)品的增刪改查圖片上傳分類篩選上下架狀態(tài)切換庫存管理。這是農(nóng)戶角色的主戰(zhàn)場(chǎng)也是后端接口最集中、CRUD最標(biāo)準(zhǔn)的一塊。訂單管理模塊用戶下單→生成訂單記錄→扣減庫存→農(nóng)戶接單→更新物流狀態(tài)→用戶確認(rèn)收貨。關(guān)聯(lián)到訂單表和用戶表必須涉及事務(wù)處理論文里可以重點(diǎn)寫。用戶中心模塊注冊(cè)登錄、個(gè)人信息修改、我的訂單、收貨地址、收藏列表。注冊(cè)登錄涉及的密碼加密用MD5加鹽或者BCrypt都行。數(shù)據(jù)統(tǒng)計(jì)模塊管理員后臺(tái)的銷售總額、訂單量、農(nóng)產(chǎn)品分類占比、熱門商品排行。這里用幾個(gè)聚合查詢SQL配一個(gè)簡(jiǎn)單ECharts前端圖表就完了工作量不大但視覺效果很好。這套模塊的代碼量如果全部自己手寫大概在八千到一萬五千行之間。如果手頭源碼已經(jīng)有大部分功能建議你至少自己動(dòng)手改一個(gè)模塊的樣式和邏輯這樣論文和創(chuàng)新點(diǎn)都有話說。3.3 業(yè)務(wù)流程示例從“農(nóng)戶上架農(nóng)產(chǎn)品”到“用戶下單收貨”我拿一個(gè)核心鏈路來演示整個(gè)系統(tǒng)的數(shù)據(jù)流向農(nóng)戶登錄系統(tǒng)在農(nóng)產(chǎn)品管理頁面填寫農(nóng)產(chǎn)品信息名稱、分類、產(chǎn)地、價(jià)格、庫存、圖片、描述點(diǎn)擊上架。前端表單校驗(yàn)通過后調(diào)用POST /api/product/add接口后端接收數(shù)據(jù)將當(dāng)前登錄農(nóng)戶的ID作為farmer_id存入product表默認(rèn)status1待管理員審核或直接上架取決于你的設(shè)計(jì)。管理員在后臺(tái)看到待審核的農(nóng)產(chǎn)品列表點(diǎn)擊通過status變?yōu)?已上架。這一步其實(shí)很重要如果沒做審核環(huán)節(jié)說明系統(tǒng)沒有內(nèi)容安全控制答辯容易被問倒。用戶在前端首頁看到已上架的商品點(diǎn)擊購買數(shù)量默認(rèn)1庫存充足則生成訂單記錄。調(diào)POST /api/order/createSpringBoot里用Transactional保證兩個(gè)操作用同一個(gè)事務(wù)插入訂單、扣減庫存。庫存不足則拋異常回滾。農(nóng)戶端看到新訂單更新狀態(tài)為“已發(fā)貨”填寫物流單號(hào)。用戶端看到物流信息確認(rèn)收貨后訂單完成同時(shí)可發(fā)表評(píng)價(jià)。這個(gè)流程串起來之后你會(huì)發(fā)現(xiàn)每個(gè)模塊都不是孤立的它們通過數(shù)據(jù)庫的外鍵關(guān)聯(lián)和接口調(diào)用形成一個(gè)完整的業(yè)務(wù)閉環(huán)。論文的“系統(tǒng)詳細(xì)設(shè)計(jì)”一章按這個(gè)鏈路畫時(shí)序圖、畫業(yè)務(wù)流程圖邏輯上就是順的。4. 數(shù)據(jù)庫設(shè)計(jì)與建表實(shí)戰(zhàn)4.1 核心數(shù)據(jù)表結(jié)構(gòu)我見過太多項(xiàng)目的數(shù)據(jù)庫腳本要么少一張表要么字段對(duì)不上實(shí)體類要么沒寫外鍵關(guān)系。這里給出一個(gè)經(jīng)過驗(yàn)證的建表方案覆蓋前面說的所有功能模塊。用戶表 userCREATE TABLE user ( id int NOT NULL AUTO_INCREMENT COMMENT 主鍵ID, username varchar(50) NOT NULL COMMENT 登錄用戶名, password varchar(100) NOT NULL COMMENT 密碼加密存儲(chǔ), nickname varchar(50) DEFAULT NULL COMMENT 昵稱, role tinyint DEFAULT 3 COMMENT 角色1管理員 2農(nóng)戶 3用戶, phone varchar(20) DEFAULT NULL COMMENT 聯(lián)系電話, avatar varchar(255) DEFAULT NULL COMMENT 頭像路徑, create_time datetime DEFAULT CURRENT_TIMESTAMP COMMENT 注冊(cè)時(shí)間, PRIMARY KEY (id), UNIQUE KEY idx_username (username) ) ENGINEInnoDB AUTO_INCREMENT1 DEFAULT CHARSETutf8mb4 COMMENT用戶表;農(nóng)產(chǎn)品表 productCREATE TABLE product ( id int NOT NULL AUTO_INCREMENT, farmer_id int NOT NULL COMMENT 關(guān)聯(lián)用戶表農(nóng)產(chǎn)品發(fā)布者ID, name varchar(100) NOT NULL COMMENT 農(nóng)產(chǎn)品名稱, category varchar(50) DEFAULT NULL COMMENT 分類水果/蔬菜/糧油等, price decimal(10,2) NOT NULL COMMENT 單價(jià), stock int NOT NULL DEFAULT 0 COMMENT 庫存, sales int DEFAULT 0 COMMENT 累計(jì)銷量, image varchar(255) DEFAULT NULL COMMENT 圖片路徑, description text COMMENT 產(chǎn)品描述, status tinyint DEFAULT 0 COMMENT 狀態(tài)0待審核 1上架 2下架, create_time datetime DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (id), KEY idx_farmer_id (farmer_id), KEY idx_status (status), CONSTRAINT fk_product_farmer FOREIGN KEY (farmer_id) REFERENCES user (id) ) ENGINEInnoDB AUTO_INCREMENT1 DEFAULT CHARSETutf8mb4 COMMENT農(nóng)產(chǎn)品表;這個(gè)fk_product_farmer外鍵約束是很容易被忽略的。如果沒寫外鍵ORM層查關(guān)聯(lián)數(shù)據(jù)就得多寫麻煩的嵌套查詢寫了外鍵MyBatis-Plus寫個(gè)簡(jiǎn)單的自關(guān)聯(lián)查詢就能拿到農(nóng)戶信息。訂單表 ordersCREATE TABLE orders ( id int NOT NULL AUTO_INCREMENT, order_no varchar(32) NOT NULL COMMENT 訂單編號(hào), user_id int NOT NULL COMMENT 下單用戶ID, product_id int NOT NULL COMMENT 商品ID, quantity int NOT NULL DEFAULT 1 COMMENT 購買數(shù)量, total_price decimal(10,2) NOT NULL COMMENT 總金額, status tinyint DEFAULT 0 COMMENT 狀態(tài)0待支付 1待發(fā)貨 2已發(fā)貨 3已完成 4已取消, receiver_name varchar(50) DEFAULT NULL, receiver_phone varchar(20) DEFAULT NULL, receiver_address varchar(255) DEFAULT NULL, create_time datetime DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (id), KEY idx_user_id (user_id), KEY idx_product_id (product_id) ) ENGINEInnoDB AUTO_INCREMENT1 DEFAULT CHARSETutf8mb4 COMMENT訂單表;公告表 notice、購物車表 cart、收貨地址表 address按類似結(jié)構(gòu)設(shè)計(jì)即可核心就是寫上關(guān)聯(lián)ID和主鍵索引。MySQL的InnoDB引擎下外鍵關(guān)聯(lián)的字段一定要加索引否則大數(shù)據(jù)量查詢時(shí)會(huì)全表掃描雖然畢設(shè)數(shù)據(jù)量小感覺不到但答辯時(shí)老師如果問起來你得答得上來。4.2 常見建表報(bào)錯(cuò)與處理在建表或者說導(dǎo)入SQL腳本時(shí)有三個(gè)高頻問題問題一字符集不統(tǒng)一。表結(jié)構(gòu)里的中文字段注釋和默認(rèn)字符串如果用了latin1前端顯示全是亂碼。解決辦法是把表的字符集統(tǒng)一改成utf8mb4utf8mb4比utf8多了對(duì)emoji表情的支持現(xiàn)在新項(xiàng)目都直接用utf8mb4。問題二外鍵約束導(dǎo)致刪除順序錯(cuò)誤。在測(cè)試環(huán)境里你想清空全部數(shù)據(jù)重來如果直接DELETE FROM user會(huì)因?yàn)橥怄I約束報(bào)錯(cuò)。需要先關(guān)了外鍵檢查SET FOREIGN_KEY_CHECKS0;清空完數(shù)據(jù)再打開SET FOREIGN_KEY_CHECKS1;。部署文檔里應(yīng)該把這個(gè)寫進(jìn)去這是我驗(yàn)過很多項(xiàng)目之后覺得最實(shí)用的一個(gè)細(xì)節(jié)。問題三時(shí)間字段默認(rèn)值。MySQL 5.7和8.0對(duì)datetime DEFAULT CURRENT_TIMESTAMP行為略有差異8.0支持得更完整一些但你用Navicat或者命令行導(dǎo)入時(shí)如果表結(jié)構(gòu)里寫了大版本不兼容的語法報(bào)錯(cuò)是必然的。所以部署文檔里最好標(biāo)注清楚使用的MySQL版本避免別人環(huán)境跑不起來回頭找你。4.3 配套測(cè)試數(shù)據(jù)的重要性一個(gè)空數(shù)據(jù)庫的畢設(shè)Demo演示起來效果非常差。如果產(chǎn)品列表一張表里只有兩三條記錄頁面看起來光禿禿的老師會(huì)覺得你沒用心做。好的SQL腳本應(yīng)該自帶10到20條測(cè)試記錄。比如水果類寫幾個(gè)常見品種紅富士蘋果、贛南臍橙、云南沃柑備注里還可以寫上產(chǎn)地和助農(nóng)標(biāo)簽。再生成幾條不同狀態(tài)的訂單數(shù)據(jù)這樣前端無論是列表頁還是統(tǒng)計(jì)圖表一進(jìn)去就有東西看。我在給項(xiàng)目補(bǔ)數(shù)據(jù)的時(shí)候習(xí)慣把圖片路徑寫成網(wǎng)絡(luò)圖片鏈接省得本地沒有上傳過圖片導(dǎo)致前端加載空白。另一個(gè)建議是腳本里的測(cè)試賬號(hào)一定要寫進(jìn)部署文檔比如管理員/123456農(nóng)戶/123456用戶/123456。別小看這個(gè)事你給老師演示的時(shí)候不可能當(dāng)場(chǎng)去注冊(cè)一個(gè)新賬號(hào)再等管理員審核直接用現(xiàn)成賬號(hào)登錄演示節(jié)奏會(huì)快很多。5. 后端SpringBoot核心代碼實(shí)現(xiàn)要點(diǎn)5.1 項(xiàng)目初始化的兩種路徑如果你手上已有源碼先確認(rèn)pom.xml里的SpringBoot版本。實(shí)踐中最穩(wěn)的是SpringBoot 2.5.x ~ 2.7.x配JDK 1.8這個(gè)組合的兼容性問題最少。如果你用了JDK 11以上SpringBoot 2.7也沒問題但不建議一上手就用SpringBoot 3.x因?yàn)樗驤DK 17起步很多舊教程和舊依賴會(huì)踩坑。如果你是新建項(xiàng)目推薦直接用Spring Initializr生成基礎(chǔ)工程再手動(dòng)引入以下核心依賴dependency groupIdorg.springframework.boot/groupId artifactIdspring-boot-starter-web/artifactId /dependency dependency groupIdcom.baomidou/groupId artifactIdmybatis-plus-boot-starter/artifactId version3.5.3.2/version /dependency dependency groupIdmysql/groupId artifactIdmysql-connector-java/artifactId version8.0.33/version /dependency dependency groupIdcn.hutool/groupId artifactIdhutool-all/artifactId version5.8.25/version /dependency為什么要用MyBatis-Plus而不是原生MyBatis因?yàn)镸yBatis-Plus自帶的BaseMapper已經(jīng)實(shí)現(xiàn)了單表的CRUD你不需要寫任何XML映射文件就能完成絕大多數(shù)接口開發(fā)。像分頁查詢寫一個(gè)配置類注冊(cè)分頁插件然后在Service層PageProduct page this.page(new Page(current, size), queryWrapper)就完事了。對(duì)于畢設(shè)這種單表操作為主的業(yè)務(wù)這是最高效的選擇而且寫代碼量少論文里的核心代碼篇幅也好控制。5.2 統(tǒng)一返回結(jié)果與異常處理后端接口的規(guī)范程度決定了前端聯(lián)調(diào)的效率。我建議一開始就定義統(tǒng)一的返回結(jié)構(gòu)而不是每個(gè)接口返回不同的JSON格式。Data public class ResultT { private Integer code; // 200成功 500失敗 private String msg; private T data; public static T ResultT success(T data) { ResultT result new Result(); result.setCode(200); result.setMsg(操作成功); result.setData(data); return result; } public static T ResultT error(String msg) { ResultT result new Result(); result.setCode(500); result.setMsg(msg); return result; } }前端Vue的axios封裝里這樣攔截service.interceptors.response.use( response { const res response.data if (res.code ! 200) { Message.error(res.msg || 系統(tǒng)異常) return Promise.reject(new Error(res.msg || 系統(tǒng)異常)) } return res }, error { Message.error(error.message || 網(wǎng)絡(luò)異常) return Promise.reject(error) } )這個(gè)統(tǒng)一格式的好處是前端拿到任何后端響應(yīng)都能用同一套邏輯處理不用每個(gè)頁面單獨(dú)判斷。同時(shí)后端配合RestControllerAdvice做全局異常捕獲把業(yè)務(wù)異常和運(yùn)行時(shí)異常分別處理接口層就清爽多了。5.3 登錄鑒權(quán)與Token方案畢設(shè)用不著JWTSpring Security全家桶但是完全不做鑒權(quán)也說不過去。比較簡(jiǎn)單可靠的方案是JWT Token 攔截器用戶登錄成功后后端用Hutool的JWT工具生成一個(gè)token里面存用戶ID、用戶名、角色設(shè)置一個(gè)過期時(shí)間比如24小時(shí)返回給前端。前端將token存進(jìn)localStorage在請(qǐng)求頭里統(tǒng)一加Authorization字段。后端寫一個(gè)攔截器對(duì)除登錄外的接口校驗(yàn)token是否存在且有效同時(shí)把用戶信息放入ThreadLocal或request attribute中供后續(xù)接口使用。public class AuthInterceptor implements HandlerInterceptor { Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { // 放行預(yù)檢請(qǐng)求 if (OPTIONS.equals(request.getMethod())) { return true; } String token request.getHeader(Authorization); if (StrUtil.isBlank(token)) { throw new RuntimeException(未登錄請(qǐng)先登錄); } // 驗(yàn)證token并解析用戶信息 try { JWTValidator.of(token).validateDate(); JWT jwt JWTUtil.parseToken(token); Long userId Long.valueOf(jwt.getPayload(userId).toString()); request.setAttribute(userId, userId); } catch (Exception e) { throw new RuntimeException(登錄狀態(tài)已過期請(qǐng)重新登錄); } return true; } }這套方案比依賴Spring Security的學(xué)習(xí)成本低很多但答辯時(shí)也經(jīng)得起追問“你怎么保證接口安全性”“每個(gè)需要登錄的接口都走了這個(gè)攔截器除了登錄和注冊(cè)其他接口一律校驗(yàn)token?!?.4 分頁查詢與動(dòng)態(tài)條件農(nóng)產(chǎn)品列表、訂單列表這些頁面都逃不掉分頁搜索。用MyBatis-Plus寫一個(gè)典型的分頁接口長(zhǎng)這樣GetMapping(/list) public ResultIPageProduct list(RequestParam(defaultValue 1) Integer current, RequestParam(defaultValue 8) Integer size, RequestParam(required false) String category, RequestParam(required false) String keyword) { LambdaQueryWrapperProduct wrapper new LambdaQueryWrapper(); wrapper.eq(Product::getStatus, 1); wrapper.like(StrUtil.isNotBlank(keyword), Product::getName, keyword); wrapper.eq(StrUtil.isNotBlank(category), Product::getCategory, category); wrapper.orderByDesc(Product::getCreateTime); IPageProduct page productService.page(new Page(current, size), wrapper); return Result.success(page); }前端最重要的就是別傳錯(cuò)參數(shù)。current對(duì)應(yīng)當(dāng)前頁碼size對(duì)應(yīng)每頁條數(shù)搜索條件和分頁參數(shù)通過query string傳給后端。前端ElasticSearch的效果先不想這個(gè)接口已經(jīng)能支持前端普通的分頁表格了。需要注意的點(diǎn)是MyBatis-Plus邏輯刪除。如果產(chǎn)品表加了一個(gè)deleted字段做軟刪除那所有查詢都會(huì)自動(dòng)拼上deleted0條件。這個(gè)功能好用但也常導(dǎo)致一個(gè)問題你明明在數(shù)據(jù)庫里直接查有數(shù)據(jù)接口查出來卻為空排查半天才發(fā)現(xiàn)是邏輯刪除配置沒生效。部署文檔里記得說明這一點(diǎn)。6. 前端Vue項(xiàng)目結(jié)構(gòu)與關(guān)鍵實(shí)現(xiàn)6.1 Vue環(huán)境準(zhǔn)備與工程創(chuàng)建先檢查你本機(jī)的Node環(huán)境。項(xiàng)目要求的Node版本一般在16~18之間用node -v和npm -v確認(rèn)太新的Node 20有時(shí)候會(huì)和舊版本Vue CLI項(xiàng)目的node-sass沖突這是安裝依賴報(bào)錯(cuò)的重災(zāi)區(qū)。如果版本不合適建議用nvm切換Node版本別硬裝舊的依賴。創(chuàng)建工程時(shí)如果項(xiàng)目源碼是Vue 2那用基于Webpack的Vue CLI最兼容如果是Vue 3就直接用Vite初始化npm create vitelatest frontend -- --template vue npm install npm install axios vue-router4 element-plus如果你拿到手的源碼是Vue 2 Element UI那在package.json里對(duì)應(yīng)的是vue: ^2.6.14、element-ui: ^2.15.6安裝時(shí)不要混著用Element Plus的語法否則組件全部顯示不出來。這個(gè)點(diǎn)字面上不起眼實(shí)際上能影響你一兩天的排查時(shí)間。6.2 路由配置與登錄攔截前端工程可以說由兩大部分組成頁面組件和路由。在Vue 2項(xiàng)目中路由文件一般是src/router/index.js。我常推薦的懶加載寫法如下const routes [ { path: /, redirect: /home }, { path: /home, component: () import(/views/home/index.vue) }, { path: /login, component: () import(/views/login/index.vue) }, { path: /admin, component: () import(/layout/AdminLayout.vue), meta: { roles: [1] }, children: [ { path: dashboard, component: () import(/views/admin/Dashboard.vue) }, { path: product/list, component: () import(/views/admin/ProductList.vue) }, { path: order/list, component: () import(/views/admin/OrderList.vue) } ] } ]這個(gè)寫法在webpack打包時(shí)實(shí)現(xiàn)路由懶加載首屏加載速度快演示時(shí)不卡頓。配合router全局守衛(wèi)router.beforeEach((to, from, next) { const user JSON.parse(localStorage.getItem(userInfo) || {}) if (to.path /login) { next() return } if (!user.token) { next(/login) return } // 管理員路由校驗(yàn) if (to.meta.roles !to.meta.roles.includes(String(user.role))) { next(/home) return } next() })這樣處理的好處是后端攔截器和前端路由守衛(wèi)形成了雙重校驗(yàn)演示時(shí)即使人為改掉localStorage后端也會(huì)攔截?zé)otoken請(qǐng)求這套邏輯在論文里可以明確寫成“前后端雙重認(rèn)證”。6.3 關(guān)鍵頁面實(shí)現(xiàn)思路農(nóng)產(chǎn)品列表頁數(shù)據(jù)來源是分頁接口渲染用element-ui的el-card做卡片布局每張卡片放圖片、名稱、價(jià)格、銷量。底部放el-pagination分頁組件切換到不同頁碼時(shí)重新請(qǐng)求接口。這里需要注意如果后端返回的total是Long類型你在前端拿到之后記得轉(zhuǎn)成Number不然有些組件的total屬性會(huì)校驗(yàn)失敗。購物車/下單頁購物車列表勾選商品合計(jì)時(shí)前端根據(jù)價(jià)格和數(shù)量算總額注意浮點(diǎn)精度問題用toFixed(2)處理顯示真正下單的時(shí)候以后再重新從后端接口算一遍金額不要相信前端傳過來的總價(jià)。這一點(diǎn)如果做得好論文里可以寫“金額處理采用前端展示、后端計(jì)算模式避免人為篡改”。管理后臺(tái)用el-tabs或者側(cè)邊欄菜單區(qū)分“農(nóng)產(chǎn)品管理”“訂單管理”“數(shù)據(jù)統(tǒng)計(jì)”。數(shù)據(jù)統(tǒng)計(jì)用ECharts畫柱狀圖和餅圖后端提供一個(gè)聚合接口比如GetMapping(/statistics/category) public ResultListMapString, Object categoryStatistics() { ListMapString, Object data productService.listMaps(new QueryWrapperProduct() .select(category, COUNT(*) as count, SUM(sales) as total_sales) .groupBy(category)); return Result.success(data); }前端拿到這個(gè)List轉(zhuǎn)成ECharts需要的{ name: 水果, value: 123 }格式圖表就出來了。這一小塊的視覺效果會(huì)非常頂答辯時(shí)老師看到柱狀圖、餅圖印象分能上來一大截。6.4 前后端聯(lián)調(diào)與跨域處理本地開發(fā)時(shí)前端和后端的端口不一致比如Vite默認(rèn)5173、SpringBoot默認(rèn)8080這就不可避免地遇到跨域問題。最常用的解法是在SpringBoot里配置跨域過濾器而不是改前端代理因?yàn)椴渴鸷笄岸舜砼渲眠€在容易畫蛇添足。Configuration public class CorsConfig { Bean public CorsFilter corsFilter() { CorsConfiguration config new CorsConfiguration(); config.addAllowedOriginPattern(*); config.addAllowedMethod(*); config.addAllowedHeader(*); config.setAllowCredentials(true); UrlBasedCorsConfigurationSource source new UrlBasedCorsConfigurationSource(); source.registerCorsConfiguration(/**, config); return new CorsFilter(source); } }調(diào)試接口推薦用Postman或者Apifox先不依賴前端頁面后端接口單獨(dú)測(cè)好再聯(lián)調(diào)。如果接口單獨(dú)調(diào)通但前端調(diào)不通優(yōu)先看瀏覽器控制臺(tái)里的Network請(qǐng)求重點(diǎn)看請(qǐng)求路徑、請(qǐng)求頭是否帶了token、響應(yīng)返回的code是否為200。7. 部署環(huán)境搭建與常見問題排查7.1 本地開發(fā)環(huán)境清單拿到源碼之后第一件事不是打開IDE看代碼而是先把環(huán)境變量確認(rèn)好。如果沒有統(tǒng)一環(huán)境后面所有報(bào)錯(cuò)你都不知道是代碼問題還是環(huán)境問題。比較穩(wěn)的組合是JDK 1.8檢查java -versionMaven 3.6.3以上檢查mvn -vMySQL 5.7或8.0本地隨便裝8.0是主流Node 16.x前端構(gòu)建用IDE推薦IntelliJ IDEA社區(qū)版GoLand不行但I(xiàn)DEA社區(qū)版免費(fèi)夠用了MySQL的安裝有一點(diǎn)想專門提一下你如果只裝MySQL 8.0網(wǎng)上很多舊教程的驅(qū)動(dòng)連接串還是com.mysql.jdbc.Driver而新版驅(qū)動(dòng)類是com.mysql.cj.jdbc.Driver。項(xiàng)目配置文件里需要改一下spring.datasource.driver-class-namecom.mysql.cj.jdbc.Driver spring.datasource.urljdbc:mysql://localhost:3306/fupin_db?useUnicodetruecharacterEncodingutf8serverTimezoneAsia/ShanghaiuseSSLfalseallowPublicKeyRetrievaltrueserverTimezoneAsia/Shanghai和allowPublicKeyRetrievaltrue這兩個(gè)參數(shù)是歷來的兩大坑。前者不配會(huì)報(bào)時(shí)區(qū)錯(cuò)誤后者不配有時(shí)候MySQL 8.0密碼認(rèn)證過不去。7.2 Linux服務(wù)器部署流程如果你的畢業(yè)設(shè)計(jì)需要部署到云服務(wù)器演示別用Windows服務(wù)器買一臺(tái)便宜的Linux輕量應(yīng)用服務(wù)器就行。部署思路如下裝JDKCentOS系統(tǒng)執(zhí)行yum install -y java-1.8.0-openjdk或者用官方tar包解壓配置JAVA_HOME。裝MySQL這里推薦用Docker裝MySQL原因后面單說。簡(jiǎn)單命令docker run -d --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD123456 mysql:5.7再把本地的SQL腳本導(dǎo)入進(jìn)去。后端JAR本地mvn clean package -DskipTests打成jar包文件名一般是target/xxx.jar上傳到服務(wù)器用nohup java -jar xxx.jar app.log 21 后臺(tái)啟動(dòng)。前端靜態(tài)文件本地npm run build生成dist目錄如果選擇簡(jiǎn)化部署就把dist里的文件拷貝到SpringBoot的static目錄后再一起打包上傳如果選擇Nginx就配置Nginx root指向dist目錄。防火墻在云服務(wù)器控制臺(tái)的安全組里放行8080端口或你項(xiàng)目用的端口這個(gè)最容易被忽略很多人本地跑得好好的上服務(wù)器后死活訪問不了就是安全組沒放行。7.3 Docker方式到底值不值得用對(duì)于畢設(shè)我的建議是“如果不想在服務(wù)器上配置一堆環(huán)境就用Docker如果本地也只是學(xué)習(xí)完全可以不用”。Docker裝MySQL確實(shí)省事但有一個(gè)高頻失敗場(chǎng)景容器內(nèi)MySQL數(shù)據(jù)文件不存在權(quán)限。很多同學(xué)執(zhí)行docker run之后沒幾下就發(fā)現(xiàn)容器不斷重啟進(jìn)日志一看全是mysqld: Cant create/write to file。解決辦法很簡(jiǎn)單在掛載數(shù)據(jù)卷的時(shí)候加一句-v /mydata/mysql:/var/lib/mysql并且給宿主機(jī)目錄授下權(quán)mkdir -p /mydata/mysql chmod 777 /mydata/mysql這套命令的細(xì)節(jié)我一直強(qiáng)調(diào)寫進(jìn)部署文檔因?yàn)榭雌饋黼u毛蒜皮實(shí)際卡住了就是半天時(shí)間。7.4 高頻部署報(bào)錯(cuò)排查手冊(cè)我這邊整理了一份高頻問題速查表基本覆蓋畢設(shè)部署期碰到的各種報(bào)錯(cuò)現(xiàn)象可能原因處理方式后端啟動(dòng)報(bào)端口被占用8080被其他進(jìn)程占用Linux執(zhí)行l(wèi)sof -i:8080查看進(jìn)程kill -9 進(jìn)程號(hào)或者改server.port數(shù)據(jù)庫連接超時(shí)MySQL地址或密碼錯(cuò)誤先用命令行mysql -uroot -p驗(yàn)證能否連上再檢查配置文件訪問接口返回500業(yè)務(wù)代碼異常查看后端日志app.log定位異常棧這是最常見的排查方式前端頁面白屏路由/依賴沒配對(duì)F12看Console報(bào)錯(cuò)通常是js加載失敗、組件路徑不對(duì)或Element版本不匹配SQL導(dǎo)入報(bào)語法錯(cuò)誤MySQL版本差異檢查SQL腳本頭部有沒有刪除已存在表名的語句確認(rèn)版本后重新導(dǎo)入Nginx代理404前端路由是history模式配置try_files $uri $uri/ /index.html;解決Vue路由刷新404還有一類Bug特別容易出現(xiàn)在“從Windows環(huán)境遷移到Linux”的場(chǎng)景里圖片上傳落盤路徑是D:/upload/Linux上沒有D盤導(dǎo)致圖片訪問404。正確做法是把上傳路徑抽到配置文件中用相對(duì)路徑部署時(shí)單獨(dú)配置。8. 論文寫作與答辯準(zhǔn)備建議8.1 論文結(jié)構(gòu)怎么搭畢業(yè)設(shè)計(jì)論文的標(biāo)準(zhǔn)結(jié)構(gòu)通常包含摘要、緒論、需求分析、系統(tǒng)設(shè)計(jì)、系統(tǒng)實(shí)現(xiàn)、系統(tǒng)測(cè)試、總結(jié)展望這幾個(gè)章節(jié)。落到扶貧助農(nóng)系統(tǒng)上核心工作量集中在第三、四、五章。需求分析章節(jié)建議畫用例圖用文字描述每個(gè)用戶角色能做什么操作。寫的時(shí)候別只列功能點(diǎn)要寫清楚業(yè)務(wù)背景比如“由于部分偏遠(yuǎn)地區(qū)農(nóng)產(chǎn)品信息不對(duì)稱需要一個(gè)平臺(tái)連接農(nóng)戶與消費(fèi)者”。系統(tǒng)設(shè)計(jì)章節(jié)重點(diǎn)是架構(gòu)圖加數(shù)據(jù)庫E-R圖。架構(gòu)圖畫成“Vue前端—RESTful API—SpringBoot服務(wù)層—MySQL持久層”的層次結(jié)構(gòu)E-R圖用PowerDesigner或者draw.io畫都行。加上一張數(shù)據(jù)表字段明細(xì)表把每個(gè)字段的注釋、類型、約束寫清楚這部分能直接看出工作量。系統(tǒng)實(shí)現(xiàn)章節(jié)是最占字?jǐn)?shù)的按模塊拆開寫農(nóng)產(chǎn)品管理模塊、訂單模塊、用戶模塊、統(tǒng)計(jì)模塊每個(gè)模塊分成后端接口實(shí)現(xiàn)和前端頁面實(shí)現(xiàn)來敘述配合關(guān)鍵代碼片段和頁面截圖。別把所有代碼粘貼上去挑核心業(yè)務(wù)邏輯代碼即可比如事務(wù)扣庫存的部分、登錄鑒權(quán)的攔截器部分。8.2 論文查重與降重小技巧知網(wǎng)查重對(duì)于本科畢業(yè)論文現(xiàn)在是標(biāo)配操作。這套系統(tǒng)的業(yè)務(wù)術(shù)語很多比如“農(nóng)產(chǎn)品”“助農(nóng)”“訂單”這些詞本身躲不開但重復(fù)率高的大部分是描述性語句。我的經(jīng)驗(yàn)是寫論文前先不急著摳每一句話先保證結(jié)構(gòu)和思路自己真的要懂。因?yàn)椴橹叵到y(tǒng)會(huì)把相似內(nèi)容判定為復(fù)制你只要把“系統(tǒng)使用SpringBoot框架開發(fā)”這類客套描述換一種方式表達(dá)比如“本項(xiàng)目后端采用SpringBoot框架完成接口開發(fā)與業(yè)務(wù)處理”重復(fù)率就能降下來不少。另外系統(tǒng)設(shè)計(jì)中的概念圖、表格和代碼片段一般不算重復(fù)源頭但代碼如果從博客直接拷貝太多也建議用注釋重寫幾行。8.3 答辯高頻問題準(zhǔn)備清單答辯老師問的問題通常繞不開幾個(gè)方向提前把答案背熟你為什么選這個(gè)題目回答思路結(jié)合鄉(xiāng)村振興背景、助農(nóng)實(shí)際需求說明這個(gè)系統(tǒng)能落地解決信息不對(duì)稱、農(nóng)產(chǎn)品滯銷等問題。系統(tǒng)有哪些角色權(quán)限怎么控制的回答思路管理員、農(nóng)戶、用戶三類角色后端攔截器校驗(yàn)Token里的角色字段前端路由守衛(wèi)也跟著做限制雙重校驗(yàn)。訂單是怎么保證數(shù)據(jù)一致性的回答思路調(diào)用下單接口時(shí)使用Spring的Transactional注解如果扣庫存失敗整個(gè)事務(wù)回滾訂單不會(huì)殘留。你這個(gè)項(xiàng)目有什么創(chuàng)新點(diǎn)回答思路務(wù)實(shí)一點(diǎn)說數(shù)據(jù)可視化分析、農(nóng)產(chǎn)品審核機(jī)制、前后端分離架構(gòu)、RBAC權(quán)限模型別吹得太大。數(shù)據(jù)庫怎么設(shè)計(jì)索引回答思路業(yè)務(wù)字段加索引比如用戶ID、訂單狀態(tài)、商品分類都建了Key索引外鍵關(guān)聯(lián)字段也建了索引查詢時(shí)避免全表掃描。9. 拿源碼到手后應(yīng)該如何二次開發(fā)很多同學(xué)以為源碼到手就萬事大吉其實(shí)恰恰相反。直接用原封不動(dòng)的源碼去答辯風(fēng)險(xiǎn)很大一來老師和同學(xué)很可能在開源平臺(tái)見過同款二來你對(duì)代碼不熟被問一個(gè)細(xì)節(jié)就露餡。所以我建議收到項(xiàng)目包后至少完成三個(gè)“定制化改造”第一改一個(gè)數(shù)據(jù)庫表或加一個(gè)業(yè)務(wù)字段。比如給農(nóng)產(chǎn)品表加一個(gè)“產(chǎn)地”字段前端列表頁展示產(chǎn)地標(biāo)簽后端接口、前端表格、數(shù)據(jù)庫字段全面聯(lián)動(dòng)。這個(gè)改動(dòng)雖然不大但能讓答辯護(hù)身符多一層。第二把界面里的Logo和標(biāo)題全部替換掉。系統(tǒng)名稱改成自己學(xué)校名或者自己想的項(xiàng)目名登錄頁背景圖換成助農(nóng)主題的圖。視覺差異是老師第一眼就能感知的。第三新增一個(gè)業(yè)務(wù)模塊或者優(yōu)化一個(gè)核心流程。如果水平允許可以加一個(gè)“助農(nóng)眾籌”功能或者“溯源信息”功能工作量不用太高但一定是你自己寫出來的對(duì)代碼的熟悉程度會(huì)完全不一樣。在線修改完代碼之后回到Git把整個(gè)項(xiàng)目用Git管理起來寫清楚commit message這也是答辯時(shí)可以展示的工程素養(yǎng)。10. 項(xiàng)目運(yùn)行全流程演示腳本設(shè)計(jì)最后一個(gè)環(huán)節(jié)設(shè)計(jì)一份答辯演示腳本確保你在老師面前十到十五分鐘的演示流暢不冷場(chǎng)。演示順序推薦如下登錄頁展示輸入管理員賬號(hào)登錄后停一下簡(jiǎn)單說“這是系統(tǒng)管理端”。管理后臺(tái)首頁展示數(shù)據(jù)看板把圖表指給老師看“這能看到平臺(tái)農(nóng)產(chǎn)品銷量和訂單分布”。進(jìn)入農(nóng)產(chǎn)品模塊展示商品列表接著切到一個(gè)用戶端頁面演示瀏覽商品、加入購物車、下單這個(gè)過程盡量用上真實(shí)數(shù)據(jù)。切換到農(nóng)戶賬號(hào)演示收到訂單后修改為已發(fā)貨的流程形成閉環(huán)?;氐焦芾韱T后臺(tái)審核一個(gè)待審核商品展示流程閉環(huán)。最后如果時(shí)間充裕打開后端日志和控制臺(tái)說明接口返回JSON數(shù)據(jù)。我按這個(gè)順序演示過不下十次最順暢的節(jié)奏是第3步和第4步之間不要超過30秒切換賬號(hào)前先把頁面狀態(tài)恢復(fù)干凈登錄頁面先退出賬號(hào)再登錄下一個(gè)賬號(hào)中途不卡殼印象就穩(wěn)了。在答辯前至少完整演練三遍。第一遍熟悉流程第二遍看看哪里會(huì)卡第三遍用計(jì)時(shí)器控制總時(shí)長(zhǎng)。真正演示時(shí)如果某個(gè)請(qǐng)求突然轉(zhuǎn)圈、接口超時(shí)千萬別慌說一句“后臺(tái)服務(wù)重新拉取一下”然后重啟JAR這個(gè)動(dòng)作本身就是工程能力展示。11. 寫在最后交付物質(zhì)量反而決定項(xiàng)目體驗(yàn)上限這篇文章寫下來你可能會(huì)發(fā)現(xiàn)一個(gè)扶貧助農(nóng)畢設(shè)項(xiàng)目的難點(diǎn)不在于某個(gè)單獨(dú)的技術(shù)點(diǎn)而在于“要把所有環(huán)節(jié)打通”。SpringBoot和Vue單獨(dú)學(xué)都是常規(guī)操作MySQL建表也不難難的是它們組合在一起之后環(huán)境差異、版本沖突、聯(lián)調(diào)調(diào)試、部署排錯(cuò)這些“臟活累活”恰恰占掉了你大部分時(shí)間。我自己實(shí)操中的體會(huì)是源碼并不是項(xiàng)目最大的價(jià)值完整的數(shù)據(jù)庫腳本和部署文檔才是。因?yàn)榍罢呓鉀Q“有代碼”的問題后者解決“跑起來”的問題。如果遇到一份“源碼數(shù)據(jù)庫論文部署文檔”齊全的交付包怎么做都順如果缺了其中一環(huán)哪怕代碼寫得再漂亮你落地時(shí)也會(huì)在一堆環(huán)境錯(cuò)誤里消耗大量寶貴時(shí)間。最后分享一個(gè)小建議拿到項(xiàng)目包以后不要急著寫論文先把部署文檔從頭到尾照著做一遍把環(huán)境踩坑記錄整理成一個(gè)自己的FAQ文檔。這套流程走通了你不僅對(duì)系統(tǒng)全貌了如指掌答辯時(shí)老師問什么都接得住而且之后隨便換一個(gè)類似的SpringBootVue項(xiàng)目你都能在一小時(shí)內(nèi)搭起來這才是做畢設(shè)真正該拿到的收獲。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
熟妇熟女一区二区三区| 欧美精品99久久久**| 小说区 图片区色 综合区| 1024人妻熟女一区二区三区| 中文字幕一区av| 成人熟女区| 狠狠超| 福利在线黄片| 久久久久ab| 天天干天天操天天操夜夜操天天操 | 日韩欧美日韩| 日韩精品99999| 久久久久久久9最新免费视频观看| 免费观看一区| 99精品无码| 欧洲一区二区三区四区在线观看| 乱伦AVxx| 极品色电影院| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 国产白领连续中出在线观看| 欧美在线|亚洲| 巨爆乳一区二区爆乳区| 黄网站黄视频网站进入口| 神马久久午夜| 婷婷在线播放| 国产精品女aA片爽爽视频| 久久婷五月天| 天天上日日上日韩精品| 97在线无精品| 日韩国产在线观看av| 久久av网| 天天操夜夜操狠很操| 亚洲成人色情五月天丁香花| 欧美性爱第一区| 99re69综合| 国产亚洲99久久精品熟| 免费网色网站| 温婉少妇玩3p| 久久久久久免费电影| 亚洲高清无码AAA久久久精品| 另类专区加勒比| 深夜国产一区二区三区在线看| 夜夜操一区二区| 日韩在线一区高清在线| 亚欧美色图| 亚洲丝袜色| 免费人成毛片乱码| 欧美色图成人网一区二区| 中文字幕一区二区免费在线| 老鸭窝日丰县女人| 免費人妻夜夜爽天天爽爽一区| 操国产高清| 欧美久久婷婷| 丁香五月大香蕉| 亚洲天堂男人天堂| 久久久久久九九九九-美女久久久久久久-成人AV | 欧美人妻精品一区二区| 97操97干| 加勒比人妻综合| 亚洲精品日韩国产欧美| 亚洲不卡三级手机播放| 亚洲青色欧美| 国产 日韩 另类 视频一区爱| 伊人麻豆传媒| 日日夜夜青青草母狗| 免费观看国产不卡av| 成人天天看站长推荐| 操逼逼福利视频| 日本一区二区三区四区五区六区七区八区九区| 久久久久久大| 密臀视频一区二区三区| 男人的天堂2019AV| 国产亚州日韩欧美看片| 日语五十路和六十路亚洲国产精品| 亚洲欧洲无码97久久精品| 日本www操操操| 校园春色第一页| 日日干男人的天堂| 九色 人妻 大香蕉| 9久久精品| 国产久久成人| 亚洲男人天堂网| 操淫穴亚洲五月丁香| 婷婷综合网| 无码一区二区精品视频久久久春药 | 午夜乱轮操逼视频免费看| 欧美爱国产综合、| 久久久久久久久久久久欧美日| 色婷五月| 亚洲精品亚洲人成在线麻豆| 久综合国内精品自在自线| 丝袜视频网国产90| 欧美91精彩| 天美av在线观看| 综合在线导航一区| 欧美一二三级精品在线| 日韩欧无码一区二区三区免费不卡 | 网页导航五月天免费一二三区| 亚洲在线91| 免费精品AB| 久啪| 丝袜大香蕉| 九九九九九精品| 91麻豆天美国产欧美高潮| 91在线限制级| 亚洲码和欧洲精品激情系列| 综合一区中亚洲国产成人综合精品| 97视频网站| 97这里有精品| 亚洲无码精品AV久久久| 日韩免费a级毛片无码a∨| 日本一区二区三区四区五区六区七区八区九区| 蜜区区视频79| 午夜精品久久久久久久第一页按摩| 国产乱子伦一区二区三区免看| 黄色不卡视频| 欧美大色交| 超碰97久久观看| av东京热男人的天堂| 日韩精品99久久久久久中文字幕 | 亚洲欧美日韩偷拍色图| 蜜桃臀AV在线| 欧美亚洲丝袜人妻制服中文99| 大香蕉92| 久久九九热| 亚洲性高潮| 91美| 搡老女人老91妇女老熟女| 夫妻日逼| 激情五月综合开心五月| 亚洲成a人在线观看久| 密乳无码| 探花一区在线| 欧美淫穴| 久插综合| 91 综合 色| 丝袜视频网国产90| 中日韩一区二区三区欧美| 91春色| 亚洲中文字幕在现观看| 国产精品嫩草影院午夜两性 | 精品无人区麻豆乱码1区2区图片| 黄站在线免费观看| 亚洲人妻日日日| 婷婷色色五月天福利| 黑人白女精品一区| 欧美亚洲日本激情在线| 色99色| 久久久婷婷| 97资源免费视频| 女同性恋中文字幕| 丰满人妻-区二区三区免费| 亚洲 日韩 欧美 国产综合体| 人妻夜夜爽天天爽麻豆三区网站 | 男女激情黄色网址| 久久思思热| 婷婷三区| 男人天堂无码| 青草草免费网站av| 在线不卡视频| 大香蕉 222| 久久精品99| 蜜臀网 一区| 人妻喷水| 尤物视频一区| AV九九| 欧美色66| av网站免费看| 九九色图| 激情内射| 午夜激情成人在线观看| 国产 日韩 欧美 人妻 熟女 中文| 夜夜狼人妻| 亚洲人精品午夜不卡| 最近二区三区视频大全| 熟女人妻一区二区三区| 偷拍五区| 亚洲AV性爱电影| 亚码激情| 亚洲一区二区中文字幕| 久久亚洲AV无码专区国产精品 | 欧美高清18A片| 五月丁香婷婷色| 成人精品视频一区二区| 日韩99999| 久久久久久电影| 天天干天天日天天射黄色| 欧美日韩97在线| 日韩一区二区精彩视频| 啊啊啊啊啊啊啊国| 欧美黄色手机在线观看| 人人人人人人少妇| 亚洲黄色AV电影| 日韩不卡av一二三| 91精品导航| 色香色欲天天综合网天天来吧| 久久97资源 网| 成年人黄色| 超碰碰碰碰| 日韩电影免费网站麻豆视频| 色网在线视频观看免费| 爱欲AV| 色婷婷综合久久久久中文国产精品一区中文字幕,国产福利电影一区二区三区 | 亚洲一区二区在线观看91| 手机看片1025| 骚妻少妇精品性色无码四色A V| 亚洲一区二区三区春色| 少妇天堂网络| 人妻乱仑一区二区三区| 金典av| 97色伦97色伦国产欧美| 中文字幕人乱码中文字的预防方法| 被操高清无码视频| 国产农村妇女精品一| 91精品导航| 国产av波波国产精品| 丝袜天堂| 婷婷干黄色| 亚洲 图片 欧美 色图| 精品国产av一区二区三区四区入口| 亚洲精品男人的天堂| 精品夜夜澡人妻无码AV| 91爽啪| 青青草中文字幕| 欧美视频在线第3页| 一级性爱视频免费观看 | 色就色综合| 91性生活久久久| 亚洲日韩精品久久久久一区壹牛| 情色五月天久久久| 国模精品娜娜一二三区| 97网色| 久久精品国产精品亚洲艾通辽熟妇| 蜜臀AV一区二区三区| 啪啪综合网| 欧美色图亚洲激情| 9长久久精品| 亚洲精品日韩国产欧美| 懂色aV一区二区天美传媒| 久久国产精品一级二级三级| 久久黄色视频一区二区三区| 新91视频.cmp| 国产超碰在线一区| 十八禁成人网站在线观看| 黑人在线91| 免费看污网站| 欧美精品久久久久久久久88| 九九久久久| 色超碰综合| 人妻精品一区二区在线| 97九色| 高清肉丝中文无码| 日韩成人大片一区二区| 十八禁啪啪视频| 加勒比东京热五月天天堂网| 亚洲五月丁香花狠狠干一区二区三区 | 不卡二三区人妻少妇| 九九精品美女高溯喷水 | 中文字幕午夜精品久久久| 啪啪视频mP4| 2019久久久久久久久福利| 9 1超碰九色| 青青草在线成人视频| 郑州宾馆老熟女露脸啪啪| 久久精品国产亚洲AV先锋| 91国产精品熟女| www.亚洲成人一区| 综合网亚洲在线| 美腿色图| 日韩在线76| 91强热人妻| 精品国产乱码久久| 欧美精品三区| 日韩有码专区| 无毛精品| 蜜臀AV成人精品蜜臀AV久久| 一区二区偷拍拍视频| 亚洲字幕一区二区| ,成人免费啪啪视频| 果冻传媒一区二区三区| 少妇色综合| 91在线免费观看处女| 日韩欧美字幕亚洲一区二区| 日韩啪啪视频| 亚洲黄色| 亚洲国产综合图区中文字幕 | 亚洲天堂人人妻| 色五月婷婷五月天| 熟女乱伦二区| 国产欧美一级在线观看| 高清成年美女黄网站免费大全| 精品人妻一区二区免费蜜桃视频| 日本 情色 1区2区3区| 久9久9精品| 极品久久久久久久久久久久久久| 精品视频专区| 亚洲色欲一区二区三区| 精产国品一区二三产品| 美女的肌被草喷水视频| 天综合中文| 九九热免费视频| 色99视频| 99热精品在线观看| 特污免视频| 东京日日夜夜| 久久综合久久综合人久久夜精品| 久久久久13| 成人片在线播放| 无遮挡猛进视频免费无限观看| av天堂5| 国产又操| 亚洲无码99| 国产成人网址| 97色冈| 东北女人av| 欧美天天谢综合网| 久9久9精品| 日日嗨AV一区二区夜夜| 日本不卡中文| 白丝AV| 日韩欧美亚洲自拍偷拍| 亚洲毛片一级带毛片基地| xxx0国产在线播放| 五月婷婷爱六月丁香色| 亚洲精品丝袜-不卡成人免费……| 色五月综合网| 啊啊啊啊啊啊在线看| 热天堂一区二区| 色女99一级片在线观看| 日韩淫色网| 校园春色 亚洲| 欧美亚洲日韩人妻在线观看| 美国美女AV在线| 日日A∨| 亚洲成人在线资源| 国产熟妇 码视频户外直播 | 搡老熟女国产1000部| 人人操人人精品影片| 欧美桃色网| 国产精品香蕉| 黄骗免费网站| 3P乱轮视频| 亚洲色综合| 色性荡荡荡荡视频| 精品国产一区二区三区久久久蜜臀 | 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 亚洲人妻一区二区三区| 9久久美女首页| 4tube欧美女厕所| 91操操操操| ..日韩av毛片精品久久久| 黄片www.| 1000午夜黄色| 一区二区乱码福利| 亚洲天堂热| 男人的天堂.com| 人妻喷水| 天天谢天天干| av天天在线观看| 麻豆成人av| 日韩啊V| 伊人黄色视频免费观看| 精品久久久久黄少妇| 乱码人妻一区二区三区| 国产人妖的免费的视频| 免费观看欧美日韩操逼视频| 91亚洲丝袜| 国产精品com| 精品久久久亚洲AV成人网站| 91国产美女丝袜足交精品视频| 久久伊人东京热| 欧美18 在线观看| 日韩一级二级| 人妻第一页| 色婷婷视频| 精品国产一区二区久久| 伊人操| 四虎影院成年人片| 亚洲怡春院| 黄色香蕉视频网站一区| 校园春色亚洲欧洲| 超碰97精品| 国产呦精品一区二区三区下载| 天天舔九色婷婷| 99热在线只有精品| 亚欧性爱在线无码| 97超碰中文| 永久免费av无码网站国产app| 亚洲 日本 国产 综合| 欧美一区二区情色| 大奶啊啊好爽| 97久久超碰日韩精品| 日韩欧美国产一区二区三区四区| 超碰精品人妻狠狠干| 欧美国产精品| 亚洲综合图片在线| 2019久久久久久久久福利| 亚州再线| 白嫩国模丰满一二三区| 亚洲男人的天堂网| 国产野战露脸在线播放| 欧美 综合 亚洲| 天天躁日日躁xxxxx| 欧美色图成人网一区二区| 久久久久久99AV无码免费网站| 区日韩亚洲乱码av电影| 久久婷婷成人综合色怡春院| 国内黄色精品| 亚洲小电影免费涩涩成人在线高清| 九九久久首页| 亚洲欧美综合区自拍另类 | 亚洲欧美经典一区二区| 操人妻视频| 91 手机在线播放 绯色| 视频国产欧美在线播放| 91亚州欧美| 无码高清国产AV| 久久99草| 亚州少妇| 日本一区视频在线观看| 国内97干免费看| 精品国产www久久| 97久久久久| 欧美极品女人的天堂| www.av家庭乱伦| 国产a级精品| www.久久最新地址| 国产又粗又长又大的视频| 青青草操逼逼视频| 天堂69亚洲精品中文字| 久欲AV| 天天综合精品| 岛国1区2区3区在线观看| 另类av综合久久| 亚洲aV性爱| 91综合网站| 欧美日韩国产电影| 岛国成人av在线播放网址| 九九九久久久| 九草九九九| 67914亚洲精品| 人妻无一区二区三区| 超碰九九| 1区2区3区中文字幕日韩| 国产第25页在线观看| 欧美一区二区| 91操人| 韩国久久97| 日本免费人成视频播放120秒| avav青青草久久夜| 1二区9| 色噜噜狠狠色综无码久久合欧美| 中文字幕国产| 超碰九区| 青青在线视频免费| 国产一区二区三区,在线观看观看| 在线观看日韩av不卡| 性天堂| 99少妇| 国产精品熟妇一区二区三| 91色欧美| 91精品婷婷国产综合久久竹菊| 国产人妻精品久久久一区二区三区 | 深爱伊人影院| 加勒比综合a∨| 日本天天吊| 中文字幕jul-617人妻熟女| 国产区日韩区在线观看| 天天肏夜夜肏| 蜜桃AV天堂| 日本999精品| 国模限制级电影| 曰韩av中文字幕专区| 免费观看日本操逼视频| 哈哈操 大香蕉| 不卡一区视频| 亚洲综合影片| 青青草男人天堂| 中文伊人大香蕉视频| 精品成人av一区二区三区在线| 国产一级高跟丝袜| 欧美日韩大香蕉| 人妻丝袜美腿中文字幕| 欧美78P| 青青草好吊色| 亚洲天堂资源在线| 午夜操一视频一区| 人妻娇喘 激情视频| 国产精品午夜精品| 五月天亚洲网| 亚洲系列欧美| 青青草AV色| 青青草AV色| 偷拍亚洲情色| 91影视亚洲| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 天天性射网| 天欧美在线| 黑人精品久久97| 大屁股国产在线视频| 蜜桃视频一区二区三区| 今日头条成人一区二区三区四虎精品| 亚洲美女精品| 久久夜色一区二区| 亚洲免费97免费| 国产美女激情| 天天草AV| 久久久极品| 99热这里都是精品| 91w欧美| www.亚洲成人一区| 久久五十路熟女人妻| 中文?日韩?免费?精品| 综合国产影视三级| 91小视频| 亚洲激情综合| 好看的91视频| 亚洲性综合| 亚洲色图8| 密臀在线免费观看| 国产AV高清AV无码| 九九色综合| 熟女人妻av在线资源,黄色的资源| 美女自卫慰黄网站免费| 婷婷久热| 少妇99成人麻豆| 淫淫总合网| 东北老女人的激情视频| 啊啊啊啊啊啊啊网址在线观看| 日本精品久久久久久久| 97 国产精品| 久久超碰网| 日婷婷| 国产成年精品高清在线观看91| 天堂8在线新版官网| 色婷五月天| 污到发麻的视频 国产| 蜜臀久久久国产| 老司机香蕉久久久久| 欧美色图色综合| 精品久久久久久中文字幕三区| 特级丰满少妇一级AAAA爱毛片| 欧美第一页性| 久久久久斤小| 搡老女人老91妇女老熟女| 国产老太乱伦一区| 影音先锋乱| 殴美,日韩国产伦精品| 国产地址二三| 午夜性刺激视频免费观看| 成全在线观看免费观看| 污啪啪啪视频| 国产精品天美传媒| 久久九九精品一区二区| 日韩一级性爱无码| wwwss在线观看| 91麻豆一二三区| 国产精品操| 国内毛片婷婷六月色| 免费a在线播放v| 中文字幕超碰CAO| 丝袜 中出 制服 人妻 美腿 中文字幕| 91啦人妻| 麻豆区99999| 深爱伊人影院| 欧美日韩操操操| 少妇蜜汁| 亚洲无码视频免费在线观看网址! J?P?NESEHD熟女熟妇伦 | 91色女| 天天搞欧美| 天天弄天天操| 亚洲一本色码中文字幕| 色综合一本| AA丁香综合激情| 超碰到97情色| 女人被添高潮免费视频| 日本一天色道久久久精品视频| 色妺妺AⅤ| 小说区 图片区色 综合区| 国产一区二区三区中文字幕| 97精品一区二区视频在线观看| 国产最新小视频在线播放下载 | 色在线亚洲视频www| 免费黄色视频网址| 精品美女少妇一区二区| 黄色性爱网网| 亚洲一区制服诱惑| 在线观看中文av字幕| 精品一久久久| 啪啪啪精品| 欧美色图私拍91| 亚洲性爱电影| 亚洲天堂人人妻| 三级精品三级在线观看| 97硬碰| 人妻色偷色噜| 色爱欲亚洲| 看免费一级在线播放毛片| 伊人网在线观看| 欧美中文字幕日韩在线| 9超碰免费| 亚洲国产一区二区日韩专区| 亚洲日产专区婷婷| 亚洲国产成人精品无码专区| 视频黄站| 五月天丁香网| 欧美精品久久96人妻无码| 最新一二三区视频| 欧美性爱免费短视频| 色网1| 黄片不用下载在线观看| 91情色在线| 日韩AV电影网站| 91被操| 成人在线午夜视频一区| 日韩av在线播放不卡| 精品女同一区| 久久综合五月天| 欧美激情激情xxxx欧美专区| 亚洲视频,小说| 一级久久性爱视频| 亚洲熟女综合网| 青青草久久一区网| 亚洲日韩美女中文字幕乱| 亚洲自拍一区夜夜操| 亚洲成人性爱网站在线播放| 91精品久久久久久久久久| 国产免费永久精品无码| 亚州欧美色图| 懂色影视久久| 色妹子A V| 欧美亚洲色图另类国产| 中文一区在线日| 色色色热| 欧美激情性爱视频网站| 青草伊人网| 蜜臀99999| 极品尤物在线观看| 亚洲人妻中文在线视频| 97一区二区三区视频| 久久女婷| 天堂俺去俺来也www久久婷婷| 青青草一本道福利视频| 欧美色日本| 97五月天| 91操人| 国产精品高清2021在线| 欧美三级偷拍| 久久精品夜色国产亚洲AV| 五月婷婷基地| 操逼视频免费日韩无码| 国产拍偷精品网站| 欧美日韩人妻精品一区二区三区| 亚洲免费97免费| 日韩精品99999| 加勒比在线视频一区二区三区| 国产免费内射视频| 久久精品男人的天堂| AV天堂男人的天堂| 亚洲无码色| 国产高清免费不卡av| 日韩欧美日韩| 午夜福利 成人 91| 亚洲成人妻日韩在线| 伊人国产av| 五月天激情国产综合婷婷婷| 国产AV毛片| 亚洲天堂一区| 一区二区三区看视频| 精品九九淫乱男| 中文字幕乱碼在线| julia在线观看久久| 99视频内射三四| 亚洲一本色道中文无码aV天美| 密乳AV免费观看| 视频一区二区三区精品| 97综合在线| 色妺妺AⅤ| 久久久久久久9999| 天天舔日美女视频| 熟女高潮精品一区二区| 日本 情色 1区2区3区| 天天内射| 97资源免费视频| 亚洲自拍欧美国产首页网曝| 九九九九日本 | 午夜精品视频777| 久久精视频美日韩在线视频| 亚洲自拍天堂| 一级特级aaaa毛片免费观看| 亚州免费啪啪视频| 国产精品无码av嫩草| 日韩欧美大力操| 人妻81p| 在线国产福利网址导航| 国产精品免费日韩| 日韩中文字幕精品一区在线| 亚洲精品毛片在线观看| 强奸乱伦AV网址| 91午夜无码| 欧美v亚洲v日韩v最新在线二区| 午夜福利免费福利视频| 久久久久久久久成人av解说| 人妻精品视频一区二区| 久久这里只精品99re66图| 韩国黄色片精品久久久| 色一情一乱一乱一区91Av| 日韩人妻少妇中文字幕| 嗯……啊…嗯嗯…啊…好舒服| 中文字幕91综合| 亚洲AV无码天美传媒一区| 日夜啪电影| 欧美色图天堂网m| 欧美久久婷婷| 伊人宅男大香蕉| 亚洲国产97| AAAA欧美日韩| 91在线视频观看国产| 日韩午夜啪啪视频| 久久熟女人| 久草婷婷| 在线观看午夜婷婷久久久久清性观看| 欧美综合综合| 一级一性爱免费视频| 日韩中文字幕视频| 亚洲欧美成人在线| 亚洲 中文 女同| 天天摸天天舔天天操| 超碰97欧美日韩| 亚洲毛片基地专区| 欧美激情另类一区二区| 国产av美女被艹的乱叫| 第四色色综合91| 久久精品91| 青草成人免费视频一com| 久久久性| 婷婷五月天成人网| 偷拍超碰| 不卡视频一区蜜桃视频 | 欧美国产成人在线| 亚洲玖玖爱| 在线毛片片免费观看| 亚洲无码一区二区三区三州| 久久久久骚| 97网站在线观看| 国产丝袜美女在线一区| 日韩性爱网址| 日韩人妻少妇中文字幕| 超碰精品| 久久这里只| 精品久久久久久中文| 国产自产91区13区| 欧美最婬乱婬爆婬牲视频| 日韩性爱小视频| 男人高清无码一区二区| 偷拍网站久久男女男| 欧洲性人爱视频| 草草电影院| www久久99| 久草男人天堂| 熟妇乱伦一区二区| 久久婷婷亚洲| 亚洲精品一区二区免费在线观看| 亚洲天堂欧美| 久久久九九网站| 青青草女人天天干| 激情小说亚洲| 婷婷色中文字幕| 精品视频日日夜夜| 精品在线78| 国产乱码精品一区二区三区四川| 美日韩一卡二卡三卡免费人妻精品| 一级免费精品| 人妻精品视频一区二区三区| 国产精品电影| 色97国产69香蕉| 91人妻做a观看视频| 激情五月综合| 亚洲欧美天| 91人妻素女| 久草在| 后入式免费视频| 91丨九色丨国产打屁股| 大香蕉92| 两性色网| 久久久久久久久久久久九| 亚洲色图欧美色图日韩色图| 久9热| 国产三级中文字幕粉嫩| dy888午夜老子影视达达兔| 亚洲五月天激情| 亚州黄站| 亚洲精品三| 伊人网高清| 亚州色交| 精品99999| 亚洲色图在线视频| 久久亚洲中文字幕视频| 久热伊人99re| 啊啊啊在线观看| 中文字幕二区日韩天堂| 色噜噜国产精品视频一区二区| 色九月| 欧美性五月| 久久精品色欧美aⅴ一区二区| 亚洲凸凹超碰成人| 日韩人妻免费精品| 97 国产精品| 99re久久| 亚洲一区二区AV| 美女在线H91| 一级日本牲交大片好爽在线看| 加勒比日本在线| 成人无遮挡毛片免费看| 骚人妻少妇视频| 两女互慰AV高潮喷水在线观看| 精品视频专区| 亚洲日韩成人性爱视频| 欧美精品系列| 在线啊啊啊啊| 中文字幕一二区二三区人妻专区| 色男人色天堂东京热| 国产剧情AV不卡在线观看| 欧美,日韩,中文,另类| 亚洲激情综合| 日韩性爱啪啪视频| 啊嗯好大视频在线观看| 亚洲性爱免费电影| 国产97综合| 亚洲色图久久成人| 欧洲成人性爱视频| 人人妻人人爽一区二区三区| 伊人久久亚洲中文字幕| 天天躁日日躁成人字幕aⅴ| 啊啊啊不要嗯嗯在线观看| 成人美女av| 亚洲天堂一区二区| 91九九九逼| 中国女人内射6XXXXX| 舔人妻中文免费视频| 人人喜人人妻| 国产AV超爽| 久久久久亚洲熟妇熟女| 久久偷偷色综合蜜桃| Julia在线播放亚洲久久| 51久久夜色精品国产麻豆| 日本 情色 1区2区3区| 亚洲AO在线| 国产精品无码AV网站| 欧美人黑A片无码免视费| 嗯~啊~轻一点 视频| 天天操av懂色| 黄色高清无码无码破解免费暗网| 亚洲天堂男人天堂| 9997se| 91人妻PORNY九色大屁股| 超碰97欧美| 无码二级三级| 情侣操 逼视频99| 欧美色三级片91| 久久香蕉综合一本到3atv| 成 人 A V免费视频在线观看| 亚洲美女 晚间男人天堂 | 9久久9综合| 国产a级午夜毛片| ji熟女.com| 日本精品五区| 久久婷婷一区| 亚洲国产亚洲天堂| 欧美激情视频一区二区三区不卡| 天天色综亚洲91污| 亚洲国产精品V?在线播放| 熟妇人妻丰满久久久久久久无码 | 天堂v无码免费视频| 久久成人东京热人妻| 九热大香蕉| 欧洲综合视频| 91操碰| 嫩呦国产一区二区三区AV| 国产无码精品成人| 妇女乱色二区| 久久6热精品99视频| 60秒免费小视频| 91网亚洲| 人妻精品综合中文字幕在线| 久久99精品视频| 91精品无码人妻系列| 性在久久久久久| 亚洲无无码αⅴ每日更新| 91美女小视频| 欧美翘臀视频网站一区二区三区| 中文字幕av一区二区三区人妻少妇| 啊好大好舒服| 久久久久久久久久久久久久9999| 亚洲色欲天天人妻无码系列专区| 人人干人人操人人..com| 久草国产在线视频| 国产婷婷综合在线观看| 无码高清少妇久久| 91大神精品长腿在线观看网站| 久久一二三四| 午夜噜噜噜| 欧美在线中M| 大香蕉啪啪啪啪在线| 97免费视频网| 在线观看视频91| 久久精品高清无码一区| 欧美日韩亚洲电影| 色偷偷综合91久久噜噜| 国产精品久久久久久久免牛肉蒲团 | 中文字幕一区二区视频在线观看| 国产精品视频在线观看| 国产偷拍网站| 亚洲无码国产精品久久| 久久久久久亚洲中文| 亚洲综合一区二区| 久久色情| 水澄无码AV| 五月婷婷影院| 久久黄黄| 亚洲色性情三级| 九九九九九九视频| 成人资源中文字幕在线观看| 91蜜桃传媒精品久久久一区二区| 综合网97| 97av在线观看| 2019精品国产无码成人| 国产亚洲色停停久久99精品91| 一级婬片120分钟试看| 亚洲欧洲综合av在线| 日韩一级特黄av毛片| 黄色高清无码无码破解免费暗网| 午夜色婷婷| 91逼逼女人91| 玖玖超碰熟| 97美日韩视频| 成人一二| 国产精品视频91久久| 另类TS人妖一区二区三区| 亚洲天堂7777| 精品视频久久久久九九九九9999| 欧美—性—交—色| 国产精品美女| 亚洲国产成人精品久久久国产成人一区二区 | 99爱久久视频频| 天美传媒av一区二区| 欧美色图校园春色| 精品国产乱码| www狠狠| 日韩一级二级在线| 伊人久久亚洲色欲综合网站 | 怡红院一区二区熟女人妻| 亚洲不卡不卡中文字幕不卡 | 欧美中文字幕男人天堂久久精品| 国产福利影视| 久久秀这里有精品| 天天干1区2区在线| 91 天天综合| 日日插夜夜| 天天爽天天| 亚洲 另类 丝袜 自拍 动漫| 欧美性爱超碰97| 日本一区视频在线观看| 五月婷婷综合网| 性色av一区二区| 欧美乱欲| 国产精品久久久久久久久AV大片| 国产天美欧美| 亚洲丝袜二区在线| 囯产操逼片| 丝袜内射| 97干在线视频| 麻豆国产96在线| 91九九九逼| 精品视频一二三中文| 日本午夜久久电影| 日本大香蕉| 亚洲国产精品久久AV| 综合激情婷婷| 风骚少妇视频中文字幕| 日韩性爱小视频| 五月天精品| 60秒免费视频| 九九亚洲| 自怕偷自怕亚洲精品| 好湿好紧好爽 视频| 大香蕉中文网| 另类TS人妖一区二区三区| 看看小穴| 九九热av| 色色婷婷丁香| 美女上床网站| 成人精品在线免费视频| 99色热| 96久久久久久久| 色一色综合网| 淫乱图区| 四虎国产精品永久地址入口| 亚洲精品一二三四区| 亚洲欧美国产va在线播放频| 天天色综合图片| 超碰导航97| 骚逼高潮久久精品| 大香蕉日韩| 99无码视频| 精品人妻一区二区三区日产| 综合久久婷婷| 亚洲色欧| 看日韩美女二区三区免费操逼视频| 少妇精品久久久八区九区| av在线一区二区三区| 国产蜜臀在线| 天美麻花大全视频| 亚洲做性| 亚洲欧美精品91| 欧美中文综合| 日本特黄f c2| 性久久久| 白丝jkav| 100啪啪视频大全| 中出后入| 亚洲砖码砖专无区2023| 欧美丝袜中文字幕07在线| 99久久久99久久91熟女| 亚洲三级。日韩三级| 欧美少妇大量自拍视频在线观看| 九七超碰| 91艹逼精品| 亚洲色 国产 欧美 日韩| 久草毛片| 狠狠干狠狠干| 7777奇米影视久久| 亚洲日韩久久精品一区| 韩国三级理论在线| 91五十路| 香蕉一区二区三区在线视频| 亚洲图片欧美色| 使劲用力艹少妇视频一区二区| 3PAV乱伦视频| 美日韩一卡二卡三卡免费人妻精品| 国产9 9在线 | 亚洲| 青草园大香蕉| 夜夜影视四色| 亚洲综合草草| 艹我哪美一区无码| 精品日韩人妻精品一二三区| 欧美亚洲激情小说| 人人操人人插人人摸人人干| 欲色综合| 久久天天躁日日躁狠狠躁| 天天看天天在线精品| 欧美 亚洲| 91天天综合网,天天综合网| 尤物一级在线免费观看| 欧美精品三区| 日日夜夜模| 高清无码网址| 99精品欧美一区二区三区桃色| 97国产精选| 亚洲精品丝袜| www久久久| 丝袜综合| AV无码久久久精品| 青娱乐休闲视频在线观看| 色娱乐色呦呦夜夜夜夜av| 日韩成人性爱AV| 亚洲中文字幕精品一区| ...日韩成人一区二区三区字幕| 99色综合| 黄色大香焦1级‘′‘| 久久这里只有精品9| 日日夜夜模| 老熟女熟妇| 五月天社区| 九九综合久久中文字幕| 97国产精品| 日韩欧美三级| 欧美无圣光在线| 黑人美精品 A片| 日韩欧美女求操每天更新| 97天天爽| 韩三级a视频在线观看| 久久99国产精品| 青青伊人这里只有精品| 麻豆蜜桃视频在线观看| 五月丁香社区婷婷日韩欧美精品影院 | 一起草AV| 国产三区免费在线观看| 丝袜狠狠草尤物 91| 久久超碰98| 91女网站| 精品夜夜澡人妻无码| 性爱1区| 国产一区二区在线播放量| 久9无限国产| 欧美在线大香999| 精品人妻夜夜草| 亚洲色鬼| 久久久中文| 丁香五月激情婷婷| 国产 日韩 欧美 中文 另类,国产 欧美 另类 制服 变态,高清 日韩 欧美 中文,高 | 久久女人一区二区三区| 色婷婷丁香| 精品无码不卡视频| 被窝影院午夜看片无码| 美女91网| 东京热av影院| 一区e区三| 日韩三级在线观看mp4| 爱爱动态试试看6 0秒| 天天看少妇| 人人看人人摸人人色| 岛国片在线观看视频亚洲| 国模私拍一区二区三区神乳| 国产午夜在线观看| 男人女人18禁片免费看网站| 婷婷久久综合| 91天射| 国产欧美日韩女同性恋ww喷水精品| 久久久久久亚洲Av无码| 香港澳门日本三级网站| 国内一级精品| 欧美亚洲手机在线| 干B网| 97超碰影音| 欧美综合第一页| 人爽不卡视频| 亚洲春色欧美| 一起草在线视频| 色五月AV| 91天天综合| 情色五月天网| 性欧美第一页| 好爽免费视频| 九九碰九九爱97超| 自拍偷拍第26| 天天摸夜夜添无码小视频| 国产 亚洲 丝袜 制服| 全免费a敌肛交毛片免费| 超碰九色| 亚洲成人一二三区| 三级片大波波| 久久久18禁| 亚洲欧美国产精品久久久久久久| 日日摸天天爽夜夜欢| 色牛aV| 影音先锋视频在线| 丁香五月激情综合国产| 国产欧美美女免费观看视频| 久久精品免费| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 色玖玖| 国产一区麻豆免费观看| 伊人96在线| 欧美亚洲丝袜人妻制服中文99| 999久久久免费精品国产牛牛| 一本大道不卡一二三区| 99热综合| 中文有码第五页| 一本色道久久综合亚洲二区三区|