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

ARTICLE DETAIL

資訊詳情

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

基于Java的家務(wù)服務(wù)平臺畢設(shè):Spring Boot訂單狀態(tài)機與部署避坑

基于Java的家務(wù)服務(wù)平臺畢設(shè):Spring Boot訂單狀態(tài)機與部署避坑 簡介這是一套基于Java技術(shù)棧的家政服務(wù)平臺完整項目采用SpringBoot搭建后端適合作為計算機相關(guān)專業(yè)畢業(yè)設(shè)計、課程設(shè)計或工程實訓(xùn)的參考模板。資源涵蓋全套源碼、數(shù)據(jù)庫SQL腳本及論文文檔能夠幫助學(xué)習(xí)者快速搭建可運行的系統(tǒng)并理解前后端交互、權(quán)限管理、訂單流轉(zhuǎn)等典型業(yè)務(wù)模塊的實現(xiàn)思路。壓縮包內(nèi)共949個文件以java、js、vue、html等前端與后端代碼文件為主同時包含svg、gif、jpg等靜態(tài)資源以及sql數(shù)據(jù)庫文件、配置文件和說明文檔整體體積僅17.71MB便于下載傳閱。目前已有87人學(xué)習(xí)使用項目經(jīng)過測試可直接運行適合不同起點的學(xué)習(xí)者按需取用。除了直接復(fù)刻功能外還可以基于現(xiàn)有代碼擴展預(yù)約服務(wù)、評價管理或數(shù)據(jù)可視化等模塊既滿足畢設(shè)驗收要求也為后續(xù)深入開發(fā)提供了清晰的技術(shù)骨架。1. 為什么“基于Java的家務(wù)服務(wù)平臺”是高分畢設(shè)項目的常青樹畢設(shè)季一到各種“高分項目”資源包就開始流通。這類“基于Java的家務(wù)服務(wù)平臺的系統(tǒng)包含全套源碼 數(shù)據(jù)庫sql 論文.rar”是其中最典型的一種Java 寫的完整工程、能直接導(dǎo)入的數(shù)據(jù)庫腳本、一篇配套論文三者打包成一個壓縮包。它背后是一個完整的業(yè)務(wù)閉環(huán)——用戶預(yù)約保潔、阿姨接單、管理員管上下架和派單比傳統(tǒng)圖書管理系統(tǒng)多出訂單狀態(tài)流轉(zhuǎn)、時間沖突檢查、評價結(jié)算這些能拿上臺面的內(nèi)容。適合正在找 Java 畢設(shè)或課設(shè)參考的人也適合想從純 CRUD 走向業(yè)務(wù)閉環(huán)的初學(xué)者。但解壓只是開始“解壓成功、啟動失敗”才是這類資源最常見的歸宿。Java 環(huán)境、數(shù)據(jù)庫版本、端口沖突、依賴缺失任何一環(huán)都能讓一個看起來完美的項目卡死在控制臺。下面按我實際做這類家政平臺的路徑把打開壓縮包到能演示、能答辯的全過程拆開講。2. 壓縮包背后是一套什么系統(tǒng)技術(shù)棧選型與模塊邊界2.1 為什么是 Spring Boot MyBatis MySQL這套技術(shù)棧好在哪標題里只寫了“基于 Java”但家政服務(wù)平臺在畢設(shè)圈里的主力組合其實非常固定Spring Boot 負責把配置瑣事處理掉MyBatis 負責寫關(guān)聯(lián)查詢和動態(tài) SQLMySQL 存數(shù)據(jù)前端用 JSP Bootstrap 或 Thymeleaf 渲染頁面。選這套不是因為它新而是它在“代碼量可控”和“能講清楚”之間最平衡。Spring Boot 的核心價值是自動配置和起步依賴。一個家政平臺最常用到的無非 web、mybatis、mysql 驅(qū)動這幾個 starterpom.xml 里依賴不沖突IDE 一刷新就能拉完。這對新手很友好不需要像 SSH 時代那樣手動拼一堆 XML 配置。MyBatis 的優(yōu)勢在于預(yù)約這類業(yè)務(wù)有大量“按條件查詢”的場景查某阿姨某天有沒有空、查某用戶所有狀態(tài)的訂單、按時間區(qū)間統(tǒng)計營收。MyBatis 的 XML 里寫動態(tài) SQL比 JPA 的派生方法更直觀也更容易讓答辯評委看懂。說白了它把 SQL 從黑匣子重新變成了你手里的籌碼。MySQL 則是 Java 畢設(shè)中的默認選項免費、資料多、圖形客戶端多。搭配 Navicat 或 DBeaver 就能完成建庫、導(dǎo)數(shù)據(jù)、看表結(jié)構(gòu)的全部操作。壓縮包里的“數(shù)據(jù)庫sql”絕大多數(shù)也是針對 MySQL 寫的拿到手先確認腳本頭部的建庫語句別一上來就往 SQL Server 或 PostgreSQL 里塞。2.2 三個角色、四個模塊先看業(yè)務(wù)邊界再去看代碼拿到這類壓縮包第一件事不是解壓后盲目 import而是在腦子里建立系統(tǒng)邊界。家政平臺再花哨也逃不出三個角色管理員、雇主用戶、服務(wù)人員阿姨。圍繞這三個角色業(yè)務(wù)上一般拆成四個模塊用戶與權(quán)限、服務(wù)目錄、預(yù)約與訂單、評價與結(jié)算。角色典型功能用戶注冊登錄、瀏覽服務(wù)項目、填寫上門時間與地址、下單支付、查看訂單、評價服務(wù)人員查看分配給我的單、開始服務(wù)、完成服務(wù)、查看收入記錄管理員服務(wù)項目上架/下架、阿姨信息維護、訂單查看與派單、統(tǒng)計報表理解這個邊界有什么用第一是有目的地讀源碼先找 controller 層看路由前綴就知道每個模塊落在哪個包。第二是被問到“為什么這樣設(shè)計”時有話可答訂單不直接掛在用戶表下而是獨立成表因為訂單是核心實體它同時關(guān)聯(lián)用戶、服務(wù)人員、服務(wù)項目和時間。配套論文通常會把系統(tǒng)設(shè)計放一整章里面有 ER 圖、用例圖。我一般建議先看論文里的 ER 圖把它抄到草稿紙上再對著去找表。從數(shù)據(jù)庫入手讀一個未知項目比從 controller 一層層往下摸快得多也更容易在論文答辯時講出“我對這個系統(tǒng)有整體把握”的感覺。2.3 改好 application.yml 里這幾行項目才有機會啟動解壓后的第一道門檻是 Java 版本與 Maven 能否對上。常見的是 JDK 8 配 Spring Boot 2.x這類項目多半能在 JDK 8 上跑。進 IDEA 后先等 Maven 把依賴下完再改配置文件。要改的第一個文件幾乎必然是 src/main/resources/application.yml 或 application.properties。spring: datasource: url: jdbc:mysql://localhost:3306/housekeeping?useSSLfalseallowPublicKeyRetrievaltrueserverTimezoneAsia/ShanghaicharacterEncodingutf8 username: root password: 123456 driver-class-name: com.mysql.cj.jdbc.Driver mvc: view: prefix: /WEB-INF/jsp/ suffix: .jsp mybatis: mapper-locations: classpath:mapper/*.xml type-aliases-package: com.housekeeping.entity configuration: map-underscore-to-camel-case: true這段配置里最值得解釋的是 URL 上的三個參數(shù)serverTimezone 不設(shè)MySQL 8 會報時區(qū)錯誤allowPublicKeyRetrievaltrue 不設(shè)連接時會報 Public Key Retrieval is not allowedcharacterEncodingutf8 不設(shè)中文會變成問號。驅(qū)動類名也分版本MySQL 8 對應(yīng) com.mysql.cj.jdbc.Driver5.x 是 com.mysql.jdbc.Driver寫錯就直接 ClassNotFound。MyBatis 部分有個容易被忽視的開關(guān)map-underscore-to-camel-case。表字段 create_time 要自動映射到實體類的 createTime靠的就是它。不打開查詢結(jié)果里這些字段全是 null訂單時間顯示為空排查起來非常像玄學(xué)問題。如果原來是手寫 resultMap 的項目這一行開不開都行但大多數(shù)畢設(shè)項目都依賴這個自動映射。注意這里的 password 要改成你自己本機的 MySQL 密碼庫名 housekeeping 要和第三章導(dǎo)入的庫名一致。如果項目用了 JSP 視圖mvc.view 里的 prefix 和 suffix 決定了控制器返回的字符串如何對應(yīng)到 jsp 文件路徑配錯的表現(xiàn)是“頁面 404 但接口正常”。3. 初始化家政平臺數(shù)據(jù)庫SQL 腳本導(dǎo)入與關(guān)鍵表結(jié)構(gòu)拆解壓縮包名字里“數(shù)據(jù)庫sql”占了三個字但很多人恰恰在這一步翻車。腳本本身可能沒問題問題出在導(dǎo)入方式、字符集選擇以及 MySQL 版本差異上。3.1 用命令行導(dǎo)入 SQL 的正確姿勢拿到 .sql 文件后我一般不用圖形客戶端去“運行 SQL 文件”一個大文件整體執(zhí)行因為一旦中間某條語句報錯后半段全部作廢出錯信息還容易被界面吞掉。更穩(wěn)妥的方式是命令行分步做先建庫再選庫最后 source。mysql -uroot -p # 進入 MySQL 命令行后逐條執(zhí)行 CREATE DATABASE IF NOT EXISTS housekeeping DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; USE housekeeping; SET NAMES utf8mb4; SOURCE /path/to/housekeeping.sql;如果不想進交互式命令行也可以直接用一行命令完成建庫和導(dǎo)入mysql -uroot -p -e CREATE DATABASE IF NOT EXISTS housekeeping DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; mysql -uroot -p housekeeping --default-character-setutf8mb4 housekeeping.sql這里建庫必須用 utf8mb4 而不是 utf8。家政平臺的服務(wù)名稱、地址、評價內(nèi)容里都可能出現(xiàn)生僻字或表情符號utf8mb4 是 MySQL 里真正能存下四字節(jié)字符的字符集utf8 在某些版本下只能存三字節(jié)一旦插入含表情的內(nèi)容就報錯。COLLATE 選 utf8mb4_unicode_ci 是為了排序和比較行為更符合常規(guī)預(yù)期。導(dǎo)入后立刻驗證表數(shù)量和數(shù)據(jù)量別急著啟動項目USE housekeeping; SHOW TABLES; SELECT COUNT(*) FROM appointment;如果表數(shù)量對不上多半是腳本執(zhí)行到一半中斷。此時不要盲目重跑整個文件先看第一次報錯停在哪張表修復(fù)后再重來。重復(fù)執(zhí)行完整腳本通常是無害的因為建表語句前面往往有 DROP TABLE IF EXISTS但前提是你已經(jīng)知道這個約定。3.2 六張核心表搞懂它們才敢說“這個系統(tǒng)拿下了”家政平臺的表數(shù)量一般在十幾張上下但核心不出下面這六張。先把它們的職責和關(guān)聯(lián)關(guān)系理清再去看具體的 CREATE TABLE效率會高很多。表名作用關(guān)鍵字段user三個角色共用一張用戶表id, username, password, role, phoneservice_category服務(wù)分類如日常保潔、深度清潔id, name, sortservice_item具體的服務(wù)項目掛在分類下id, category_id, name, price, detailappointment預(yù)約/訂單主表全系統(tǒng)的心臟id, order_no, user_id, worker_id, status, service_date, slot_start, slot_endevaluation用戶的評價記錄id, order_id, user_id, score, contentadmin_log管理員操作日志答辯加分項id, admin_id, action, create_time以訂單主表為例一個典型的建表語句長這樣CREATE TABLE appointment ( id INT AUTO_INCREMENT PRIMARY KEY, order_no VARCHAR(32) NOT NULL COMMENT 訂單號支付回調(diào)的唯一依據(jù), user_id INT NOT NULL COMMENT 下單用戶, worker_id INT NOT NULL COMMENT 服務(wù)人員ID, service_item_id INT NOT NULL COMMENT 服務(wù)項目ID, service_date DATE NOT NULL COMMENT 服務(wù)日期, slot_start TIME NOT NULL COMMENT 預(yù)約開始時間, slot_end TIME NOT NULL COMMENT 預(yù)約結(jié)束時間, address VARCHAR(255) NOT NULL COMMENT 上門地址, amount DECIMAL(10,2) NOT NULL COMMENT 訂單金額, status TINYINT NOT NULL DEFAULT 0 COMMENT 0待付款 1待服務(wù) 2服務(wù)中 3待確認 4已完成 5已取消, create_time DATETIME DEFAULT CURRENT_TIMESTAMP, update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, UNIQUE KEY uk_order_no (order_no), KEY idx_worker_date (worker_id, service_date), KEY idx_user_status (user_id, status) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COMMENT家政預(yù)約訂單表;這個表的結(jié)構(gòu)信息量很大。order_no 必須有唯一索引它是支付回調(diào)時的冪等依據(jù)后面第四章會展開。status 用 TINYINT 而不是字符串省空間、查詢快代價是代碼里必須有一一對應(yīng)的枚舉否則狀態(tài)含義全靠猜。復(fù)合索引 idx_worker_date 直接支撐“查阿姨某天有沒有單”這個高頻查詢?nèi)绻┙ㄓ唵瘟恳簧先ナ醉摬榭臻e阿姨的接口就會明顯變慢。3.3 字段冗余和索引設(shè)計評委最愛追問的兩個細節(jié)家政平臺的訂單表特別適合做字段冗余。什么是冗余就是把 service_item 里的服務(wù)名稱、單價以及 user 表里的阿姨姓名在下單那一刻直接復(fù)制一份存到訂單表里而不是下單后每次都去關(guān)聯(lián)查詢。原因很簡單服務(wù)項目的價格和名稱會變阿姨也可能改名。如果訂單表只存 service_item_id三個月后改一次價歷史訂單的金額就對不上了。冗余之后訂單表自帶“當時的服務(wù)叫什么、多少錢、誰來做”審計和售后都有依據(jù)。答辯時把這個點講出來評委通常會認可你有真實業(yè)務(wù)意識。索引方面除了 order_no 唯一索引和 worker_id service_date 復(fù)合索引還建議給 status 加普通索引。管理端列表頁最常見的就是“按狀態(tài)查訂單”和“按用戶查訂單”這兩個查詢在數(shù)據(jù)量上來之前看不出差別但索引的成本很低順手加上不吃虧。有一點要提醒別迷信外鍵。常見做法是表與表之間只靠邏輯關(guān)聯(lián)不建物理外鍵。物理外鍵在導(dǎo)入 SQL 時對執(zhí)行順序有要求刪除數(shù)據(jù)時也容易受阻對畢設(shè)項目的演示和答辯反而是一種負擔。用代碼保證數(shù)據(jù)一致性外鍵只畫在論文的 ER 圖里這是這個體量下的務(wù)實選擇。4. 預(yù)約到結(jié)算的完整閉環(huán)訂單狀態(tài)機與時間沖突家政平臺和電商系統(tǒng)的本質(zhì)區(qū)別在于商品是標準化的服務(wù)是發(fā)生在特定時間、特定地點的。因此訂單狀態(tài)機和時間沖突檢查是這個系統(tǒng)真正值錢的地方。4.1 訂單狀態(tài)從 0 到 5狀態(tài)機怎么設(shè)計操作邊界在哪一個家政訂單從創(chuàng)建到結(jié)束通常會經(jīng)歷六個狀態(tài)。狀態(tài)用數(shù)字存庫但代碼里必須用枚舉管住不能讓業(yè)務(wù)代碼隨便 setStatus。public enum OrderStatus { PENDING_PAY(0, 待付款), PAID(1, 待服務(wù)), SERVING(2, 服務(wù)中), CONFIRM(3, 待確認), FINISHED(4, 已完成), CANCELLED(5, 已取消); private final int code; private final String desc; OrderStatus(int code, String desc) { this.code code; this.desc desc; } public static boolean canChange(int from, int to) { switch (from) { case 0: return to 1 || to 5; // 待付款可支付或取消 case 1: return to 2 || to 5; // 待服務(wù)可開始服務(wù)或取消 case 2: return to 3; // 服務(wù)中只能進入待確認 case 3: return to 4 || to 5; // 待確認可完成或取消 default: return false; // 已完成/已取消是終態(tài) } } }這個枚舉的價值是讓“非法跳轉(zhuǎn)”在代碼層面就沒有入口。比如從“服務(wù)中”跳到“已完成”繞過用戶確認這一步系統(tǒng)就不允許。演示時如果有人從數(shù)據(jù)庫手工改狀態(tài)或者接口被重復(fù)調(diào)用狀態(tài)機能把異常狀態(tài)攔在業(yè)務(wù)邏輯之外。每個狀態(tài)變化的操作者是誰也要明確待付款→待服務(wù)是用戶點擊支付后觸發(fā)待服務(wù)→服務(wù)中是阿姨點擊“開始服務(wù)”服務(wù)中→待確認是阿姨點擊“完成服務(wù)”待確認→已完成是用戶點擊“確認并評價”。管理員可以查看所有訂單但不應(yīng)該能隨意改狀態(tài)頂多在異常情況下做人工取消和退款操作。這里強烈建議再加一張 order_status_log 表記錄每次狀態(tài)的 from、to、操作人、操作時間。它本身不復(fù)雜但能讓你在答辯時回答“訂單從下單到完成經(jīng)歷了哪些步驟”這個問題時拿出真實數(shù)據(jù)展示而不是空口描述。4.2 阿姨同一時段被搶兩次單沖突檢查 SQL 怎么寫家政平臺最容易出現(xiàn)、也最容易被忽略的業(yè)務(wù) bug就是同一阿姨在同一時段被預(yù)約兩次。很多初版代碼的做法是下單時查一下當天有沒有訂單沒有就插入。這個邏輯在單用戶測試時沒問題但系統(tǒng)一開放給多人使用立刻就會翻車。正確做法是在插入訂單前做一次真正的時間重疊檢查SELECT COUNT(*) FROM appointment WHERE worker_id #{workerId} AND status IN (1, 2, 3) -- 待服務(wù)、服務(wù)中、待確認這些單占用了阿姨的時間 AND service_date #{serviceDate} AND slot_start #{slotEnd} -- 新時段開始時間 已有預(yù)約結(jié)束時間 AND slot_end #{slotStart}; -- 已有預(yù)約開始時間 新時段結(jié)束時間這個 SQL 的核心是后面兩個重疊條件。直觀理解新預(yù)約 [09:00, 10:00) 和已有預(yù)約 [09:30, 10:30) 是否沖突要看新開始時間是否早于已有結(jié)束時間并且已有開始時間是否早于新結(jié)束時間。兩個條件同時滿足說明兩個區(qū)間確實有交集。為什么要用這種寫法而不是“分別在開始和結(jié)束時刻各查一次”因為那兩種寫法都存在漏判。比如已有預(yù)約是 09:00 到 11:00新預(yù)約是 10:00 到 10:30只查開始時刻會認為 10:00 沒單但如果查結(jié)束時刻 10:30 落在別人區(qū)間里就能攔住。反向同理。用區(qū)間重疊判斷才是無死角的。status IN (1, 2, 3) 的過濾也很講究。待付款訂單還不確定是否成立不應(yīng)該占住阿姨的時間已取消和已完成的單更不用管。但這里有個隱藏問題如果用戶下單后一直不付款時間被別人搶走了怎么辦常見做法是加超時取消機制比如下單后 30 分鐘未支付自動把訂單置為已取消釋放時間占用。這個邏輯不用做成定時器用戶下單時查一下自己的待付款單是否超時順帶清理即可。4.3 支付回調(diào)的冪等處理唯一約束 樂觀鎖更新線上支付的回調(diào)接口是家政平臺另一個隱藏考點。哪怕只是模擬支付也應(yīng)該按真實支付回調(diào)的姿勢來寫支付平臺會多次通知結(jié)果你的接口必須保證“同一個訂單被回調(diào)一百次效果等同于一次”。Transactional public PayResult handlePayCallback(String orderNo, BigDecimal amount) { // 1. 冪等前置檢查查當前狀態(tài) Appointment appointment appointmentMapper.selectByOrderNo(orderNo); if (appointment null) { return PayResult.fail(訂單不存在); } // 2. 已經(jīng)處理過的回調(diào)直接返回成功不重復(fù)處理 if (appointment.getStatus() ! OrderStatus.PENDING_PAY.getCode()) { return PayResult.success(重復(fù)回調(diào)已處理); } // 3. 樂觀鎖更新只有狀態(tài)為待付款時才能變?yōu)榇?wù) int rows appointmentMapper.updateStatusByOrderNo(orderNo, OrderStatus.PENDING_PAY.getCode(), OrderStatus.PAID.getCode()); if (rows 1) { return PayResult.success(支付成功); } return PayResult.fail(狀態(tài)更新失敗請重試); }對應(yīng)的 MyBatis 更新語句只有一條UPDATE appointment SET status #{to}, update_time NOW() WHERE order_no #{orderNo} AND status #{from};這條 UPDATE 的關(guān)鍵在于 WHERE 條件里帶著舊狀態(tài)。兩個并發(fā)請求同時進來只有一個能匹配到 status 0 的記錄另一個影響行數(shù)為 0直接按“重復(fù)回調(diào)”處理。這就是樂觀鎖的思路——用一條帶條件的 UPDATE 替代“先查再改”避免競態(tài)。為什么說這個設(shè)計值得做因為幾乎所有家政平臺的簡歷項目里都會寫“對接了支付流程”面試官一聽支付接踵而來的就是三個問題怎么保證回調(diào)不重復(fù)處理、怎么處理金額校驗、怎么處理訂單狀態(tài)一致性。能用“order_no 唯一約束 條件更新”答清第一問就已經(jīng)超過很多只會在 controller 里寫 CRUD 的候選人了。5. 從源碼到能演示家政平臺 5 個常見部署踩坑與排查5.1 端口被占點啟動按鈕沒反應(yīng)日志尾部寫著 already in use現(xiàn)象IDEA 里點啟動控制臺打到一半就退出來最后一行通常是 Port 8080 was already in use。有時候連提示都不給只在日志里淺淺帶過。原因本機有別的 Java 進程或開發(fā)工具占了 8080。最常見的是你自己之前跑過另一個 Spring Boot 項目沒關(guān)掉或者是某個工具自帶的服務(wù)占了這個端口。解決先看誰占了端口。Windows 上執(zhí)行 netstat -ano | findstr 8080macOS/Linux 上執(zhí)行 lsof -i:8080找到 PID 后按需結(jié)束進程。如果那個進程不能殺就改項目的 server.port同時全局搜索前端頁面或 JS 里寫死的 localhost:8080把端口一起換掉。# Windows netstat -ano | findstr 8080 taskkill /PID 12345 /F # macOS / Linux lsof -i:8080 kill -9 12345這個坑看似簡單但我在協(xié)助別人跑類似項目時見過太多次“只改后端端口、忘記前端硬編碼”結(jié)果頁面打開了一堆接口 404。改端口務(wù)必把前端資源和頁面里的地址一次改齊。5.2 MySQL 8 連接失敗Public Key Retrieval is not allowed 與驅(qū)動版本現(xiàn)象項目啟動時報 Failed to configure a DataSource或者連接報 Public Key Retrieval is not allowed偶爾還有 ClassNotFoundException: com.mysql.jdbc.Driver。原因兩個疊加在一起。MySQL 8 默認的認證插件是 caching_sha2_password客戶端第一次連接需要向服務(wù)端請求公鑰同時 pom.xml 里的 MySQL 驅(qū)動版本太老不認識這個流程或者驅(qū)動類名寫的是 5.x 的舊名字。解決把依賴替換為 MySQL 8 對應(yīng)的驅(qū)動坐標mysql-connector-java 或 com.mysql:mysql-connector-jJDBC URL 里加上 allowPublicKeyRetrievaltrue 和 useSSLfalse驅(qū)動類名寫成 com.mysql.cj.jdbc.Driver。dependency groupIdcom.mysql/groupId artifactIdmysql-connector-j/artifactId scoperuntime/scope /dependency這里的版本號不用手動寫死Spring Boot 2.x 的依賴管理會自動選一個匹配 8.x 的版本。如果項目用的是更早的 Spring Boot那就直接在 pom 里寫一個較新的 8.x 版本號讓 IDE 重新導(dǎo)入即可。5.3 SQL 文件導(dǎo)入中文亂碼記事本打開過就廢了一半現(xiàn)象導(dǎo)入 SQL 后表里的中文注釋全是亂碼或者包含中文的字段值插不進去報錯。原因最常見的是有人用 Windows 記事本打開過 .sql 文件再保存時被轉(zhuǎn)成了 ANSI 編碼。另一種是導(dǎo)入時客戶端連接的字符集和文件編碼不一致。解決先用 VS Code 或 Notepad 這類能識別編碼的編輯器重新保存為 UTF-8。導(dǎo)入時在 MySQL 命令行先執(zhí)行 SET NAMES utf8mb4再用 source 導(dǎo)入。命令行導(dǎo)入時可以顯式指定字符集mysql -uroot -p housekeeping --default-character-setutf8mb4 housekeeping.sql判斷文件編碼的小技巧看注釋里的中文是否正常。如果正?;究梢源_定編碼沒問題。如果文件頭是亂碼先轉(zhuǎn)碼再導(dǎo)入不要指望數(shù)據(jù)庫層面能兜住所有編碼問題。另外用 DBeaver 連接 MySQL 后如果表列表不顯示先檢查連接配置里選擇的 schema 是不是 housekeeping很多時候是默認連到了別的庫。5.4 登錄后立刻被踢回登錄頁Filter、Session、context-path 三連現(xiàn)象登錄頁能打開賬號密碼也正確但跳轉(zhuǎn)后馬上又回到登錄頁或者頁面樣式全丟、CSS 加載不出來。原因這類系統(tǒng)通常有一個登錄攔截 Filter 或攔截器判斷 Session 里有沒有用戶信息。常見問題有三個攔截器把所有請求都攔了包括 /css、/js、/images 這些靜態(tài)資源登錄成功后 Session 寫入的 key 和攔截器檢查的 key 不一致項目部署帶了 context-path頁面里的跳轉(zhuǎn)鏈接卻是寫死的根路徑。解決先看攔截器注冊時排除了哪些路徑。常見做法是放行登錄頁、注冊接口和所有靜態(tài)資源registry.addInterceptor(new LoginInterceptor()) .addPathPatterns(/**) .excludePathPatterns(/login, /register, /api/user/login, /css/**, /js/**, /images/**);如果靜態(tài)資源放行了還跳回登錄頁多半是登錄成功后 Session 沒寫對。登錄接口里寫入 session.setAttribute(loginUser, user)攔截器里也必須是同一個 key大小寫、下劃線都不能差。至于 context-path 問題最簡單的驗證方法就是改配置后全局搜一下源碼里有沒有寫死 /xxx/ 的跳轉(zhuǎn)統(tǒng)一改成相對路徑或從 request 里拿上下文路徑。5.5 并發(fā)下單導(dǎo)致重復(fù)預(yù)約事務(wù)隔離讓“先查后改”形同虛設(shè)現(xiàn)象兩個人幾乎同時提交同一個阿姨同一時段的預(yù)約數(shù)據(jù)庫里出現(xiàn)了兩條記錄而頁面提示都顯示預(yù)約成功。原因把 4.2 的沖突檢查 SQL 放在“查詢再插入”的普通邏輯里在高并發(fā)下會有競態(tài)。兩個請求都先執(zhí)行了 SELECT COUNT(*)都發(fā)現(xiàn)沒有預(yù)約然后都執(zhí)行 INSERT。MySQL 默認的隔離級別是 REPEATABLE READ兩個事務(wù)互相看不到對方未提交的插入于是各自認為“空閑”。解決根據(jù)項目進度二選一。最直接的是在檢查時分兩步把“檢查時間”變成“鎖住時間”在事務(wù)里對阿姨某天的某個時段加鎖SELECT id FROM appointment WHERE worker_id #{workerId} AND service_date #{serviceDate} AND slot_start #{slotStart} FOR UPDATE;如果查詢返回空說明沒人預(yù)約可以安全插入如果有人預(yù)約這條 SELECT 會等鎖插入操作自然被阻塞。另一種更徹底的方案是加唯一索引讓數(shù)據(jù)庫在物理層面拒絕重復(fù)ALTER TABLE appointment ADD UNIQUE KEY uk_worker_slot (worker_id, service_date, slot_start);唯一索引方案需要注意它要求用戶下單時就把這個時段“占住”也就是先插入一條 status0 的待付款單付款成功后再更新為待服務(wù)。這樣同一個阿姨的同一個開始時間只能存在一條訂單重復(fù)插入直接被數(shù)據(jù)庫拒絕。代價是待付款的超時釋放邏輯必須跟著做好。6. 把“高分項目”變成“自己的項目”答辯前驗收與改造6.1 跑通不等于能用四個功能閉環(huán)先驗一遍拿到項目后不要急著改代碼先把四個閉環(huán)走完走到每一步都符合預(yù)期為止。用戶側(cè)閉環(huán)注冊新賬號登錄瀏覽服務(wù)項目選一個阿姨和時間提交訂單模擬支付看到訂單狀態(tài)從待付款變成待服務(wù)服務(wù)完成后確認并評價。這一步能驗收 80% 的前后端聯(lián)通問題。服務(wù)側(cè)閉環(huán)用阿姨賬號登錄看到分配過來的訂單點擊開始服務(wù)再點擊完成服務(wù)。這里重點看狀態(tài)變化是否符合第四章的狀態(tài)機尤其是“服務(wù)中”能不能直接跳到“已完成”——能跳就說明代碼繞過了用戶確認屬于需要修的 bug。管理側(cè)閉環(huán)管理員賬號登錄新增一個服務(wù)項目修改價格把項目下架查看全部訂單按狀態(tài)篩選如果有派單功能把訂單指派給指定阿姨。數(shù)據(jù)側(cè)閉環(huán)檢查訂單表里的金額、狀態(tài)、時間字段沒有明顯異常評價表的 order_id 和訂單能對上服務(wù)項目的價格修改沒有影響到歷史訂單的金額。這一條檢驗的就是第三章說的冗余設(shè)計有沒有真正落地。6.2 性價比最高的三個改造一天內(nèi)可以完成第一把 4.2 的沖突檢查從普通查詢改成事務(wù) FOR UPDATE 或唯一索引。這是最值得做的改造因為它直接消滅一個邏輯 bug還能在簡歷上寫“通過數(shù)據(jù)庫約束解決服務(wù)時段超賣問題”。配合一段測試過程演示效果極好。第二加訂單狀態(tài)日志表。每張表的操作都記錄操作人、時間、舊狀態(tài)、新狀態(tài)和備注并在用戶端訂單詳情頁展示一條狀態(tài)時間線。這個功能不復(fù)雜卻是很多項目缺失的答辯時點開一看評委就知道你做的不只是增刪改查。第三把模擬支付接口改成“回調(diào)式”?,F(xiàn)在很多項目是用戶點一個“模擬支付”按鈕直接把訂單改成已付款這個流程拿不上臺面。改造思路生成訂單后調(diào)一個模擬支付頁點擊“確認支付”后請求層的 /api/pay/callback 接口回調(diào)里帶上訂單號和金額后端按第四章的方式做冪等處理。我做這類系統(tǒng)時吃過一次大虧演示當天現(xiàn)場兩個賬號同時下單同一個阿姨的九點到十一點時段被預(yù)約了兩次訂單列表里兩條單并排躺著氣氛非常尷尬。后來我把唯一索引和狀態(tài)機補齊才真正體會到——所謂高分項目拼的不是頁面多漂亮而是這些邊界條件有沒有被堵死。后來帶新人跑通類似項目時我都會讓他們先把訂單狀態(tài)機畫出來再動手寫代碼。這個教訓(xùn)直接讓我在之后做任何管理系統(tǒng)時都把“狀態(tài)流轉(zhuǎn)是否合法”當成第一優(yōu)先級的檢查項。希望這些步驟和坑能幫你把這個壓縮包變成一個真正敢在答辯時打開的系統(tǒng)。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
欧美人妻一区| 偷拍自拍在线视频观看| 亚熟hd视频在线| 久久久国产三级黄色片| 国产探花精品在线| 久久性爱视频99| 亚洲青青草| 99热免费| 91少妇通奸网站| 岛国成人av在线播放网址| 伊人麻豆传媒| 欧美骚少妇| 久久熟女人| 久久美女福利是上海美女| 亚欧高清| 大香蕉狠狠爱| 大白逼三四级| 久久久999日本大片| 国产精品网址| 国产精品白丝在线播放| 96麻豆精品一区二区三区| 吉川爱美98堂在线| 99热自拍| 秋霞免费AV| 2025年A片视频精品| 天堂亚洲精品久久老牛| 日韩紧密久久| 欧美另类色| 日本在线不卡v二区| 午夜爽爽爽| 校园春色 亚洲| 狠狠中文字幕| 97综合在线| 午夜福利精品| 一级片在线观看高清无码| 另类天堂| 亚洲宅男天堂| 色九区| 亚洲熟妇一,二,三期| 亚洲欧美骚| 天堂亚洲精品| 丝袜 中出 制服 人妻 美腿 中文字幕| 九九九偷拍| 超碰人人色| 一级久久久久久久久久久| 久久国产性爱| 91丨九色丨国产打屁股| 自拍大香蕉乱插| 久久毛卡| 狠狠操夜夜| 看大黄色大片原件| 日韩人成网站在线播放| 亚洲女毛多水多21P| 户外裸露刺激视频第一区| 人人人人插| 日逼国产| 精品久久99| 91丨九色丨大屁股| 色噜噜国产在线| 青青草原人妻| 欧美桃色网| 男人天堂毛片| 欧美一级二级三级| 麻豆国产视频精品观看| 中国小夫妻勾搭露脸淫荡对白| 3p国产欧美99热| 久久性爱大全| 日韩人妻资源在线看| 色99视频| 激情小说亚洲视频| 国产搭汕a级片| 抽插亚洲无码| 91艹B视频| 无码人妻丰满热妇又大又粗| 中文字幕 人妻不满 在线视频| 天天日日夜夜| 啊啊啊啊啊啊啊啊啊啊在线观看| 精品人妻一区春色| 亚洲欧洲日本精品中文a∨| 久久久久久久强迫| 黄色av片三级三级三级免费看| 家庭乱伦网站国产| 在线97在线| 日韩伦理视频| 亚洲熟妇白浆无码AV| 2017天天插| 亚洲日韩在线a不卡99精品| aa片毛片| 日韩性爱播放| 日韩欧美女优电影| 啊嗯嗯啊好大好爽| 亚洲网站一区二区在线| 加勒比性爱成人在线| 5252色欧美在线男人的天堂| 天天日天天操天天射河南省| 五月丁香网站| 91男同| 亚洲欧洲激情卡通另类文学四射小说网站 | 亚洲第一黄色av网站 | 国产精品欧美激在线| 久久久国产护士丝袜美腿一| 五月天婷精品激情| 另类亚洲图色| 果冻传媒A片一二三区| 91精品久久久久久| 婷婷五月天久久久| 天天综合站| 7777奇米影视久久| 天堂在线一区二区| 视频国产成人精品日本亚洲18| 国产高清视频无码在线| 加勒比综合九九99视频在线播放| 91内射| 美国一区二区免费视频| 另类av天堂| 国产乱子伦久久精品综合一区二区三| 秋霞无码av鲁丝片一区| 欧美成人色| 婷婷九月丁香| 久久久草成人网站久久久草成人久久久草久久久 | 国产真乱mangent| 日韩精品 欧美激情| 久久69| 亚洲免费成人在线高清无码视频| dy888午夜老子影视达达兔| 欧美日韩传媒| AV一起草在线| 天天干天天日天天射黄色大片| 97操B| 中国zzijzzijzzwww精品| 四季AV综合网址| 中文字幕av片| 美女午夜福利免费视频| 中文一区在线日| 20cm女自慰在线日韩欧美| 丁香六月婷婷| 久久久涩| 一区二区偷拍拍视频| 欧美黄片免费在线观看视频| 久久久99久9| 国产精品一二三区福利| 超碰 欧美| 日本一区二区三区精品| 色www精品视频在线观看| 国产女人高潮嗷嗷嗷叫小说| 大香蕉欧美国产日韩高潮| 影音先锋每日最新资源在线观看| 性生活久久久久久久久久| 啊啊啊男女| 99热思思| 凹凸视频在线一区二区| 黄网站黄视频网站进入口| 高清有码一区二区| 草草电影院| 性感女人网页在线观看视频| 日韩欧美三级| 3571色综合一区二区二区| 中文字幕熟女人妻丝袜| 宗合情欲网| av最新免费中文字幕| 老司机午夜福利视频一区二区| 国产精品久久天天干| 操亚州| 国产精品视频麻豆入口| 亚洲色图国产另类| 日韩成人色图| 懂色av色欲av蜜臀av| 欧美综合自拍亚洲综合图| 免费一级视频特黄色大片| 欧美色九九| 日本免费亚洲欧美| 欧美碰碰综合色| 嗯嗯啊啊用力视频免费| 亚洲黄色网址视频| 一起草三级AV电影在线观看 | 久久久久斤小| 国产熟女少妇一区| 欧亚乱色熟女一区二区| 97超碰日韩| 99热免费| 婷婷爱五月| TS人妖另类精品视频系列| 毛片麻豆91糖心精品毛情片| 狠狠狠狠狠狠| 超碰成人最新最好看| 欧美姓爱综合网| 四虎视频在线观看| 国产67194| 情趣丝袜无码操逼视频| 亚洲a色| 97天天插| 精品国产乱码| 久久女人| 亚洲97网站| 欧美中文字幕男人天堂久久精品| 五月天激情网站| 国产成人91一区二区三区| 国内一级精品| av2014 日韩在线中文字幕| 国产精品国产拍高清AV| 亚洲制服aⅴ中文字幕| 国产女同在线观看视频| 久久精品国产Aⅴ| 亚洲AV不卡在线观看| 99国产在线绯色一区| 91chinese在线| 多乙久久久久久| 黄片视频,下载| 可免费观看的av毛片中日美韩| 日韩内| 国产午夜福利合集| 老鸭窝成人| 人妻碰碰碰碰碰碰| 精品女人999| 国产亚州高清国产拍精| 天堂俺去俺来也www久久婷婷| 日韩性爱免费观看视频| www亚洲免费| WWW操逼| 欧美性爱第一页久久| 99热99re超碰精品| 99久久久久久亚洲精品不卡| 久久久久幕乱码| 国内三级自拍小视频在线观看| 福利操逼| 美日韩男女操屄视频| 国产精品一二三| 国产精品爱欲| 少妇的嫩逼图片| 国产精品国产自产拍高清AV| 亚洲av无码成人精品国产| 黄色网址在线免费观看| 91丨九色丨43老版熟女| 久久综合国产精品国产| 精品成人久久久人人亚洲| 亚洲 图片 欧美 色图| 国产浮力影院第1页| 天天干人妻视频| 水滴偷拍| 久久99草| 亚洲瓯美色图| 啊啊啊啊啊在线观看网址| 日韩精品在线观看观看| 女性91网站| 欧美极品少妇| 青青草十区九区爱夜| 国产av高清版| 超碰在线成人| 丁香激情网| 这里都是精品在线观看| 国产人妻天天干精品| 亚洲啪啪视频一区二区| 成人免费福利在线观看| 日韩在线观看中文字幕视频| 亚洲熟妇极品| 欧美图片色综合| 99re3这里只有精品| 天天操天天舔| 熟妇女人妻呻吟久久AV| 亚洲不卡av在线| 久久大线蕉一区| 精品亚洲国产成人av网站| 色综合V| 极品销魂美女一区二区| A级在线视频| 中文字幕人妻资源在线| 欧美日本国产日韩激情视频| 秋霞成人一级在线观看| 色色色色电影网| 人妻天堂综合网| 亚州久久9| 东方亚洲在线操逼天堂| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 97草草| 大香蕉色欲AV| 999热这里只有精品| 天天日熟妇| 国产午夜在线观看| 人人做人人妻人人夜视频| 99re8超碰| 91精品人妻一品二品三品| 亚洲一区二区三区不卡国产欧美| 国内91熟女人妻丝袜天天精品视频在线 | 久久久无码精品人妻二区| 久久久久久久强迫| 日韩专区数据列表-第3230页-精品国产一区二区三区香蕉 久久99熟女人妻中文字 | 色噜噜人妻丝袜AV资源| 台湾佬中文娱乐自偷自拍| 欧美亚洲国产91在线| 久久精品人人做人人看| 大香蕉国产中文自拍| 国产午夜福利电影免费在线观看 | 天天精品| chaopen97久久| 欧亚性爱啪啪| 婷婷15月天青娱乐| 亚洲一级特黄大片在线播放91| 天堂8在线新版官网| 婷婷九月国产| 人妻乱仑一区二区三区| 久久一区二区蜜桃| 日韩国产品视频中文字| 大香蕉一级黄色片久久| a片亚洲一本通视频| 久草国产在线视频| 91久久国产精品| 人人乐大香蕉| 91丝袜美女视频| 8050午夜少妇无码| 亚洲性少妇| 91精品无码人妻系列| 欧美日日人人天天| 9久久9综合| 一起草日韩| 亚洲 在线| 99热久| 国产精品久久久久久久久久二区三区| 亚洲一欧洲中文字幕在线| 97超碰超欧美。| 五月天综合网| 亚洲无992tv| 在线黄色污污网站| 色色色色网站| 久久久穴999| 亚洲九月丁香| 国产美女销魂在线观看不卡| 亚洲综合69| 另类图片亚洲加勒比另类图片亚洲加勒比另类图片亚洲加勒比 | 免费日韩黄片| 自拍六区| 久草看看看| 无码人妻精品一区二区三区九九| 国产一区二区三区中文字幕| www.99在线| 99老司机精品视频在线观看| 男啪女色黄无遮挡免费观看| 欧美综合网| 日韩97精| av2014 日韩在线中文字幕| 密臀在线免费观看| 日本三级韩三级99久久| 2023天天操夜夜操| 无码高清少妇久久| 亚洲啪啪视频免费| 十八禁啪啪视频| 日本乱人伦片中文三区| 一区二区三| 人妻少妇精品久久久久久| 劲爆欧美人妖三区91| 夜夜操av亚洲一区二区| 好吊色一区| 日日干日日操五月天伦理视频| 国产毛片精品一区二区色欲黄A片| www…国产操逼| 激情五月综合网| 91在线免费观看处女| 亚洲有码 视频一区| 97超碰jingpin| 内射黑人| 91亚洲丝袜熟女| 91天堂网| 97在线观看播放视频| 亚洲欧美国产成人综合不卡| 91黑丝露脚| 国产盗摄美女如厕大神作品在线观看| 9长久久精品| 亚洲狠狠入| 亚洲精品久久久久毛片A片拉屎 | 天美传媒AV在线播放| 久久久精品久久| 久久久999国产精品| 亚洲在线| 性色av婷婷久久一区二区点复制| 91成人在线| 久艹视频在线| 中文字幕成人理论在线| 日韩精品人妻中文字有码在线| 91精品无码久久久久久久| 五月天激情网站| 久久无码精品| 97免费在线视频在线观看| 欧美亚洲首页| 精精夜夜| 一级日本牲交大片好爽在线看| 一牛影视久久久一区二区三区| 丰满人妻一区二区三区| 日韩乱码Av| 免费岛国一级片| 一区二区三区日韩欧美| 家庭乱伦国产| 噜噜瑟| 91久久精品国产| 26uuu最新| 日韩 女同 综合| 婷婷丁香六月天| 试看日韩黄片| 91 国产丝袜在线播放-百度| 丁香五月天堂网| 日韩激情小说一区二区| 青青网三级视频| 精品无码久久久| 亚洲有薄码区日本系列中文字幕| 97超级色碰碰| 酒色综合网| 十八禁黄色成人网站观看| 中文字幕亚洲在线一区| 欧美性爽xyxOOOO| 亚洲国产青青| 美腿丝袜高跟网免费视频免费视频| 国产尤物AV尤物在线观看不卡| 中文字幕午夜精品久久久| 亚洲国产剧情少妇激情| 欧美久久伊人| 免费看国产曰批40分钟怎么下载| 青草精品视频日本久久久久网站在线| 伊人网在线观看| 97亚洲一区| 五月丁香网站| 五月婷婷久久综合| 小日子操bb在线看| 在线视频亚洲无码| 少妇淫妇久久久久久久| 夜夜夜夜爽| 麻豆天美在线喷水AV| 青青草伊人久久| 亚洲熟女国产综合另类| 丁香六月激情综合| 五月天婷婷基地| 日韩不卡在线一区二区| www.色婷婷| 色色九区| 97在线青| 色色五月天婷婷| 射欧美综合| 九X超碰| 精品人妻一区二区三区免费视频| 欧美91久久久久| 久都青青视频| 国产激情av女片自拍| xxx亚洲午夜天堂| 久肏视频字幕| 欧美强奸一区二区诱惑| 婷婷丁香人妻 | 国产精品96久久久久久| 欧美久热| 中文字幕91综合| 综合网97| 国产v亚洲v日韩v欧美v片另类| 成人一道本免费视频| 伊人久久大香大香线蕉中文| 一区二区精品更新提醒| 午夜福利合集| 国产高清免费不卡av| 日韩人妻资源在线看| 日韩人妻精品中文字幕| 精品久久久久久久| 综合色99| 日韩亚洲97| 中国AAAAAA黄色片| AV九九| 欧美 牲| 男人天堂网址| 91麻豆va国产精品| 国产又大又粗又色生活片亚洲国产精品成人久久久综合免费 | 国产日韩人人| 亚洲天堂男人网| 高清无码 国产精品| 国产在线不卡导航| 制服丝袜第二页| 少妇熟女1区2区3区| 中文字幕性感少妇av| 色爱欲亚洲| av草草在线电影| 18禁止看精品中文字幕| 青草视频在线看看看看看看看看看| 天天看特黄的免费网站| 尤物网站91| 狠狠干婷婷| 天天在线91| 精品国产无码中文| 国产av青草| 欧美美女视频| 一块操欧美| 青青草无码视频| 成人一级性爱| 国产精品久久久久久夜夜夜| 人妻一区二区三区熟女| 婷婷五月天在线观看| 免费自拍三级综合| 亚洲另类色图片| 黄片www视频免费| 色婷五月天| 国产精品丝袜在线| 九九九九久久久| 大粗鳼巴久久久久| 久99久视频精选| 中文字幕在线免费观看| 亚洲天堂男人在线| 97AV在线观看| 日本天堂网| 99久久精品国产系列| 欧美日韩丝袜| 黄色成人网久久久久久| WWW.加勒比人妻一区不卡.com| 欧美福利视频啊啊啊啊| 内射白嫩美女| 色综合国产在线观看| 国产午夜福利视频在线| 无码精品人妻一区二区三区妖精| 鸥美极品| 欧美精品另类人妖xxxx| 午夜福利一区二区影院| 激情婷婷丁香| 久久人妻丝袜一区二区三| 国产主播福利| 九99久久| 最新一二三区视频| 亚洲精品一二牛牛| 国产一区二区在线播放,久久亚洲精品中文字幕第一区,亚洲精品在线中文字幕视频 | 岛国爱情动作片在国产AV无码专区亚洲AV漫画| 欧美超碰9798| 欧亚性爱在线视频| 丝袜美腿丝袜| 大奶啊啊好爽| 中文字幕日韩电影人妻| 综合五月天| 嗯嗯啊啊亚欧精品| 九月婷婷久久| 操婢日韩| 久久日韩肥臀| 毛片视频白嫩| 国产动漫操逼视频| 亚洲精品久久久久毛片A片拉屎| 日韩中文字幕2020| 日本天天吊| 国产亚洲精品美女久久久久久2021| 午夜九九九九九九| 久久草视频污视频| 热久久91婷婷| 成人av动漫在线观看| 欧美A片中文字幕| 久草男人天堂| 啊啊啊啊啊操我视频| 欧美十八禁在线看| 日日操丁香五月天| 我要去看2个日本美女.com曹逼 | 2019天天干天天操| 日韩一卡二卡三卡| 大香蕉中文aV在线| 夜夜嗨一区二区| 国产精品久久久久久久久久梁医生| 国产精品白丝www| 一个人在线看的黄色电影网站| 高清无码国产亚洲| av在线观看不卡网站| 亚洲中文字幕熟女| 91日韩国产欧美亚洲另类精盘州至城都 | 四虎影视在线| 啊…啊…操我用力操我| 久久久精品成人国产| 超碰成人公开| 国产成人精品必看 | 69少妇一区二区| 亚欧免费观看视频| 狠狠干91| 欧美组图日韩亚洲中文字幕| 777超碰| 天天躁日日躁狠狠狠躁| 欧美日韩国产色五月综合在线| 91黑丝少妇| 亚洲 欧美 中文 日韩超碰 | 小草三级久久观看| 四虎影院成年人片| 亚洲中文一区二区三区视频| 国产 三级自拍| 黄色人人| 国产精品久久久久中文字幕| 国产亚洲精品农村妇女 | 天美传媒一二三区永久网站| 亚洲色吧网| 伊人网av| 啊啊啊啊啊操我视频| 男人下部插入女人下部| 91国产大片| 日本九九久久99播| 国产天天看| 天天天天天天天天综合| 欧美大色交| 999久久芭蕾| 91亚洲人| av强奸乱轮| 日本污ww视频网站| 蜜臀av中字字幕网站| 久久久不卡区一区二区三区久久久| 精品中文日韩字幕视频| 日本亚洲嫩草影院啪啪| 久久性生大片免费观看性| 精品无码秘 人妻一区二区| 国产精品又黄又猛又粗| 国产呦精品系列在线观看| 人人操人人摸人人看人人插| 久久久精品无码亚免费| 性爱av在线免费观看| 开心激情站| 人人污日韩一区二区| 中文字幕人乱码中文字的预防方法 | 伊人国产视频| 五月天久久人妻| 久久综合久色欧美综合狠狠 | 日本一二三免费久久| 日韩精品字幕| 婷婷导航| 亚洲偷91色| 麻豆国产97在线| 日韩午夜啪啪视频| 少妇内射www在线观看视频| 人人操人人肉久久精品| 人人摸人人干人人拍97| 亚91亚洲网| 国产综合久| 国产探花精品在线| 97欧美精品综合| 天天射夜夜骑| 欧美很很操视频| 2019午夜福利视频| 久久欲| 日韩情色视频| 97久久国产精品女不卡| 欧美东京热精品A∨| 久久亚洲人妻| 99久久亚洲精品无码毛片潘甜甜| 久热这里| 97在线视频免费看| 777奇米影视777四色| 久日91在线| 天天爽夜夜爽夜夜爽精| 欧美日韩国产中文精品字幕自在自线,| 91精品大奶人妻| 极品后入免费视频| 久热精品在线国产| 青青草亚洲一区| 农村女一级毛卡片| 久久香蕉国产传媒一区剧情天美| 国产在线激情| 狠狠色丁香| 精品玖九九久| 狠狠五月天| 夜夜欧美| 国产免费一区二区三区最新不卡| 精品免费囯产一区二区三区 | 热G综合热G中文| 夜夜影视四色| 人伦四五区| 女人被添高潮免费视频| 骚熟女AV网| 国产毛片精品一区二区色欲黄A片| 99热线麻豆 | 九九九九免费高| 夜夜影视四色| 中文字幕一二三av| 激情婷婷五月天| 屁股久久久久久| 大香蕉在线视频15| 国产不良强奸视频免费看| 久草色悠悠在线视频| 国产中文大片资源中文字幕| 欧日韩在线观看| 欧美成人一级免费电影| 人妻熟女一区二区三区视频| 九九热精品| 在线播放成人高清免费视频| 欲香欲色天天天综合和网| av日韩手机在线影视| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 亚洲av噜噜噜噜噜噜| 超碰97玖玖爱| 夜嗨影院| 97爱综合| 亚洲999综合| 婷婷五月天成人网| 一级成人性爱| 91天堂丝袜美腿| 在现视频女上位好爽| 亚洲精品乱码线路中文字幕 | 国产成人午夜视频网址| 青青草一本道福利视频| 欧美久久婷| 凹凸视频在线观看伊人| 熟妇色99| 午夜精品久久999热蜜桃介男人用| 精品人妻美妇91job| 五月亭亭六月丁香| 九九av| 亚洲情色91| 久久精品国产亚洲AV嘿嘿| 91 天天综合| 91高跟美女在线播放| 色婷婷基地| 性暴力欧美猛交在线直播| 91欧美情色| 美女主播色欲91抠b在线播放| 日本污ww视频网站| 国产人妖的免费的视频| 亚洲色人阁| 九九av| 色鬼在线综合| 日日操天天操| 国内毛片国产专区二| 国产精品久久aV| 国产蜜臀精品一区二区尤物| 欧美国产成人在线| 三级片大波波| 五月色综合| 乱论91| av爱爱爱| 少妇久久久| 91痴汉| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师 | 一类无码操逼视频| 玖玖爱在线视频免费观看| 九九热精品视频六| 欧美日韩97在线| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师 | 久久国内| 国产理论视频在线播放| 20cm女自慰在线日韩欧美| 欧洲综合色| 在线观看啊啊啊啊啊| 97伪v| 狠狠夜色午夜久久综合在线| 国产怡红院| 久操B网| 人妻激情另类| 这里只有精品久久| 91碰碰碰| 床上啊啊啊一区二区三区| 日韩一级片在线看| m欧洲一级午老| 97色冈| 中国探花熟女| h色99999| 99性爱| 狠狠色婷婷| 激情五月综合网| 91丨九色丨东北熟女| 日韩AV熟女乱伦| 激情接吻视频久久久久久| 国产精品极品美女视频| 91在线视频观看国产| 亚洲国产精品9999在线观看| 国产日产精品久久快鸭的功能介绍| 日韩免费三级黄片电影| 日韩性爱视频在线免费观看| 九九综合久久中文字幕| 国产一区二区精品久久99| 无色无码| 色情综合网| 96精品在线| 国产夜夜操| 男人久久精品| 久久精品女同亚洲女同13| 夜夜嗨TV| 久久久蜜桃臀无码视频| 亚洲自拍偷拍视频在线 | 日本99久久| 天美国产精品| 歐美性天天| 97一区二区三区视频| 亚洲欧洲综合成人av一区| 中文字幕天天天天天| 青青操在线亚洲视频观看欧美在线| 精品无码一二三四区| 中文久久96| 久久久久久十| yw尤物av无码点击进入麻豆| 大学生口爆吞精| 国产视频一区二区免费| 黑操B| 久久综合女优| 久久精品无码熟妇一区二区三区视频导航| 激情小说五月天| 偷拍 精品另类 凸凹了四区| 成人综合视频久久| 国产黑白丝在线| 一区二区乱码福利| 无码高清专| 1024久久高清视频| 日韩97视频| 精品国产Av无码久久久伦古装| 久久受www免费人成| 亚洲色诱惑| 亚洲男人的天堂AV| 99热婷婷一区二区三| 无码操逼视频一下| 大香蕉五月天婷婷| 欧美中文狠| 熟女人妻一区二区三区免费看 | 国产久久av| 电影69乱码96| 密臀国产在线| 久久国产性爱| 东北夫妻性偷拍| www.av在线视频| 久久理论字幕视频| 天天干夜夜操一区二区| 自拍偷拍国产欧美日韩韩| 97福利视频| 中文字幕av丝袜| 久久亚洲中文字幕视频| 91久久久久久久久18| 极品粉嫩少妇视频| 人妻天天爽天天爽三区| 亚洲中文字幕网| 97爱碰| 91看黄片| 夜夜狼人妻| 亚洲丝袜少妇在线| 亚洲中文字幕三级在线| 麻豆精品三区视频| 一级片视频啪啪| 殴美,日韩国产伦精品| AV中文字幕三四五| 国模无码一区二区三区在线| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 91欧| 91超级碰| 理论久久婷婷网8| 99操逼| 欧美激情 一区| aaa一级黄片| 97超碰国产亚洲精品| 久干9操| 亚洲男人的天堂在线看| www.yeyecao| 国产成人AV麻豆| 久久丁香久草综合网| 97超碰国产精品| 91天天综合网| 久久久工口| 91黑人狂躁丰满熟妇| 极品色社| 天天综合网日韩| 天天干一区二区| 一中国女人毛片水真多| 久久久999网站| 日韩电影在线观看网址| 精彩视频日韩| 特级特黄一级毛片免费| 啊啊啊不要啊啊受不了了视频在线| 在线毛片片免费观看| 日日夜夜国产综合| 在线观看高清AV| 欧美国产操逼| 中国亚洲呦女专区| 97网色| 嗯嗯啊啊操死我| 欧美成人A√在线一区二区| 69精品人人人人| 多毛小伙内射老太婆 | 中文字幕交换人妻| 精品丰满熟妇人妻一区| 天天日夜夜爽| 小说区 图片区色 综合区| 嗯嗯啊啊亚欧精品| 国产精品探花视频| 成人九九| 亚熟在线| 无码精品蜜桃一区二区三区ww| 亚洲性综合11| 国产美女自拍视频| 亚洲人精品久久久喷水| 人妻一二三区| 亚洲综人| 色噜噜国产在线| 国模不卡| 热热色91| 2026国产精品视频| 91丨九色丨东北熟女| 欧美性爱第一页久久| 日本超碰色精品| 日韩在线76| 欧美一区二区三区另类精品| 亚洲一区二区中文字幕| 富二代亚洲精品99| 日韩性爱视频免费在线 | 一区麻豆 高清中文字幕| 探花熟女,姿勢到位,體驗感也到位| 日韩成人小视频| 97色97好| 91粉芽高清在线一区二区| 天天操人人操狠狠插| 国产免费小视频| 熟妇高潮精品一区二区三区下载| 人妻丝袜无 码视频专区| 久久五十路熟女人妻| 91天天综合日韩欧美| 97精选久久| 不卡超碰护士AV在线免费播放| 强奸乱伦av电影| 国产亚洲精品久久久久小| 男人的天堂99| 精品中文日韩字幕视频| 天天干一区二区| 日韩啪啪网| 日韩欧美中文日韩欧美色| 东京热一区二区中文字幕| 黑人精品欧美一区二区蜜桃| 91爱做| 91亚洲影院综合| 九九九九九九九精品视频| 亚洲九月丁香| 久久riav中文精品| 男女啪啪啪18禁网站| 免费在线视频97| 九九九只有精品| 长久操视频| 六月婷婷一区二区三区| 夜夜夜夜夜夜夜夜夜狠狠狠狠狠狠狠| 久热婷婷| 色色色综合网| 免费啪啪啪网站18岁| 香蕉久久AⅤ...| 韩三级a视频在线观看| 久久久久久久久999| 国产免费内射视频| 91亚洲黄色网| 91男人综合| 91精品国产长腿丝袜美女| 曰韩少妇无码| 热的中文 热的有码 热的国产| 91五月天| 久久久99999久网站| 啊啊啊啊二区好大| 天堂精品小草| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 偷拍精品一区二区三区| 丁香九月婷婷| 日韩在线国产字幕| 一起草三级AV电影在线观看 | 欧美欲色| 超碰97色色| 黑丝日韩av丝袜av| 天天天天天超碰| 天天躁狠狠躁av| 久久久久96| 亚洲女优有码无码高清| 亚洲 欧美综合| 淫荡网址| wwwxxx日本爽| 国产中文精品一区二区在线观看| 熟女人妇一区二区三区| 9999免费精彩视频| 天天操天天插| 99久久无色码| 97公开久久| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 九九九九国产| 亚洲国产成人7777| av无码av无码专区| 日本熟女中文| 欧美一区91大爱| 97视频网站在线观看| 99国内精品| 97超碰资源网| 一本大道青青| 男人天堂新在线| 日韩有码 一区二区三区| 亚洲一区二区三区播放在线| 操逼国产免费| 久久人妻精品| av麻豆啪啪| 欧美在线 亚洲| 加勒比综合88| 国产精品女生av| 乱欲一区二区| 亚洲色图91欧美日韩| 91久久18禁| 欧美色自拍| 野狼福利社区| 免费一级黄色录像影片| 五月综合婷婷久久网站| 天美国产精品| 久久久久久久久久久久久女过产乱-少妇高潮一区二区三区喷水-成人AV | 校园春色亚洲欧洲| 欧洲站一级二级三级h| 国产无码成人无码| 国产91啪| 99热综合在线| #NAME?| 女人天堂av在线播放| 先锋激情∨在线视频播放| 精品性爱一二三区| 欧美黑人XXXⅩ高潮交| 男人 天堂 日 亚洲| 欧美亚洲首页| 中国乱伦一区二区 | 伊人天天久久动态图| 成年人性爱日韩| 欧美劲爆第一页| 亚洲本色精品一区二区久久| 狠狠图片青青草| 黄色高清久久无码依人| 国产农村妇女毛片精品久久| 日本高清视频在线观看黄已三辽| 人人干人人操人人..com| 日韩欧美偷拍美女视频| 久久久久久日韩| 日日日色色色色色| 立川理惠无码一区二区| 国语精品av| 人妻少妇久久久| 欧美色97| 亚洲。日韩。欧美| 欧美特大AA级黄片| 超碰夫妻97| 精品毛片久久久精品毛片| 91色堂| 亚洲色欲天天人妻无码系列专区| 欧美色97| 欧美 中文字幕 一区| 久操操AV电影| 中文字幕女同在线| 无遮挡h肉动漫在线观看| 美女t无毒不卡不卡| 蜜臀av在线播放一区二区三区| 亚洲色综合| 伊蕉97蜜桃97狠狠综合干| 国产 日韩 欧美高清| 久久噜噜噜精品国产亚洲综合| 美日韩成人| 粉嫩av平台| 97网址97| 亚洲AV永久无码一区仙野| 日韩一二三区| 久久久久久久久久久久久久久久9| 精品毛片久久久精品毛片| 欧美的精品的视频| 第二页中文字幕| 在线岛| 欧美色97| 97免费免费视频网| 久久美女福利是上海美女| 看全色黄大色大片免费视频| 亚洲 图片 欧美 色图| 黄色区免费观看中文字幕| 中国少妇啪啪视频| 久久精9| 丁香五月影院| 国产人妖的免费的视频| 久久精品男人的天堂| 亚洲色图殴美色图激情乱伦| juliaann欧美丝袜办公室| 偷拍 精品 另类 四区| 国产久久av| 天天看天天日| 久操视频在线| 干b在线性社区| 国内三级自拍小视频在线观看| 色欧美综合| 日韩丨制服丨中文|在线| 亚洲熟妇丝袜在线观看| 999国产精品999| 乱抡国产91| 国产美女精品| 人妻熟女字幕一区二区| 亚洲97久久精品亚洲| 久久AV无码AV| 欧美另类丝袜熟女| 亭亭在线资源| 欧美78p| 久久98| 女同性恋久久| 99国产在线 精品 视频| 男人天堂2017| 清纯唯美第一页| 国产丰满熟夫69mpp| ′ !γ}丶。。久久精品欧美一区二区三区| 日本精品九九九| 78综合网| 91丨九色丨东北熟女| 久久久免费的精品| 日本韩高清无砖码22o| 天堂精品| 亚洲自拍欧美国产首页网曝| 99热精品在线播放| 亚洲精品国产精品成人| 超碰九九| 超碰97首页| 亚洲色五月| 岛国黄色大片网站| 国产又色又粗又黄又爽| 四虎AV影视国产精品亚洲精品| 大茄子熟女AV导航| 9997se| 精品无码一区二区人妻久久蜜桃| 国产精品。| 夜夜中出国产| 国产精品一二三区福利| 大香蕉啪啪网| 亚洲天堂 视频你懂的| 乱伦图一区| 超碰成人公开| 日本成人免费一区二区三区| 韩国一级做a久久久久| 欧美日韩在线小说| 久热最新在线杭州| 久久人妻熟女一区二区| 欧美人妻制服| 超碰色美女| 一本大道青青| 99少妇| 久一区久久蜜桃| 欧美日韩中文视频播放| 麻豆久久精品亚洲精品88| 97AV在线观看| 天堂成人网| 91丝袜在线观看| 秋霞Av理论一级在线| 国产午夜精品理论片a大结局| 中文操逼字幕| 日韩欧美中文| 一本一道vs波多野结衣| 欧美综合区| 色久综合| 18一区二区三区| 日韩钢筋无码高清啾啾啾| 热久久99999| 亚洲色图综合网| 啊啊啊啊啊好舒服视频| 男人的天堂三级| 久久国产精品m码| 国产精品人妻免费精品| 国产欧美日本亚洲精品 | 日本不卡三级网在线播放| 超碰在线974| 超碰天天操| 亚洲国产97在线精品一区| 青青草好吊色| 久久的免费性爱视频| 9国产超碰| 国产乱码精品一区二区三区四川| 丁香五月激情婷婷| 日韩在线AB| 亚洲超碰综合网| 精品免费囯产一区二区三区| 久久亚洲天堂| 欧美人妻少妇| 亚洲国产精品9999在线观看| 免费a在线播放v| 亚洲天堂色图| 久久婷婷欧美| 成人性交午夜免费片| 97爱爱爱| 国产www色在线观看| AV 少妇 人妻 偷拍| 九X超碰| 国产丁香精品露脸视频| 久久国产在线一区二区| 老司机射| 四色永久成人网站|