国产成人欧美一区二区三区vr_久久国产精品人人爽人人爽_国产精品永久免费播放_肉欲啪啪a∨无码精品一区二区_国产超短裙jk丝袜在线_亚洲AV片高清资源在线观看_国模无码一区二区三区久久_国产成年人未进视频_中文字幕无码精品夜_一区二区三区在线视频免费看_亚洲成AV人片在线观看网址_日本激情视频高清综合久久_亚洲午夜视频福利_国内大量揄拍人妻精品視_久久国产精品福利二区三区

ARTICLE DETAIL

資訊詳情

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

宿舍報(bào)修管理系統(tǒng)完整復(fù)現(xiàn):SpringBoot+Vue+MySQL全棧實(shí)戰(zhàn)

宿舍報(bào)修管理系統(tǒng)完整復(fù)現(xiàn):SpringBoot+Vue+MySQL全棧實(shí)戰(zhàn) 簡介面向高校畢業(yè)設(shè)計(jì)、課程實(shí)踐或崗位實(shí)訓(xùn)的宿舍報(bào)修管理系統(tǒng)項(xiàng)目資料適合需要完成同類課題的計(jì)算機(jī)專業(yè)學(xué)生與開發(fā)者參考。系統(tǒng)采用Java語言與SpringBoot框架構(gòu)建后端搭配Vue前端與MySQL數(shù)據(jù)庫涵蓋用戶管理、維修員管理、宿舍信息管理、配件設(shè)備管理、報(bào)修接單、配件申請和維修進(jìn)度跟蹤等完整業(yè)務(wù)模塊能夠支撐校園宿舍后勤報(bào)修的日常流程。資源為1個(gè)docx文檔大小4.78MB內(nèi)容包括背景分析、國內(nèi)外研究現(xiàn)狀、相關(guān)理論與技術(shù)、系統(tǒng)分析、功能設(shè)計(jì)與測試驗(yàn)證等章節(jié)并給出了基于IDEA、Navicat、Tomcat等環(huán)境的開發(fā)與運(yùn)行思路。已有433人學(xué)習(xí)下載通過查閱這篇論文可以較快梳理出宿舍報(bào)修系統(tǒng)的數(shù)據(jù)庫表結(jié)構(gòu)、核心接口劃分與前后端交互邏輯對畢業(yè)設(shè)計(jì)答辯、系統(tǒng)二次開發(fā)或?qū)W習(xí)SpringBootVue項(xiàng)目都有直接的參考價(jià)值。1. 宿舍報(bào)修管理系統(tǒng)從論文到可運(yùn)行源碼的一次完整復(fù)現(xiàn)做后勤類管理系統(tǒng)的人應(yīng)該都有感觸報(bào)修流程看起來簡單但一旦涉及多角色協(xié)同業(yè)務(wù)狀態(tài)流轉(zhuǎn)就會迅速膨脹。這份基于 Java 的宿舍報(bào)修管理系統(tǒng)資源是一個(gè)把「報(bào)修」這件事做得很完整的畢業(yè)設(shè)計(jì)項(xiàng)目技術(shù)棧是 SpringBoot Vue MySQL角色分管理員、用戶、維修員三種覆蓋了從宿舍分配、配件申請到維修進(jìn)度追蹤的完整閉環(huán)。論文部分把系統(tǒng)分析、數(shù)據(jù)庫設(shè)計(jì)、功能實(shí)現(xiàn)和測試用例都寫清楚了源碼部分則能直接跑起來做二次開發(fā)。適合正在做類似課題的學(xué)生或者想把校園報(bào)修場景數(shù)字化、需要一套基礎(chǔ)代碼的開發(fā)者。我拆完這套資源最大的感受是它的價(jià)值不在某個(gè)高深算法而在于把報(bào)修業(yè)務(wù)里那些容易被忽略的狀態(tài)節(jié)點(diǎn)設(shè)計(jì)得很完整這對課程設(shè)計(jì)和實(shí)際小規(guī)模部署都夠用。2. 技術(shù)棧選型拆解為什么是 SpringBoot Vue MySQL2.1 后端框架SpringBoot 在報(bào)修系統(tǒng)里的真實(shí)定位這套資源后端用 Java SpringBoot 搭建SpringBoot 在這里解決的核心問題不是高性能而是「開發(fā)效率」。報(bào)修管理這類業(yè)務(wù)系統(tǒng)本質(zhì)上是圍繞數(shù)據(jù)庫表的增刪改查加上一點(diǎn)業(yè)務(wù)狀態(tài)流轉(zhuǎn)SpringBoot 的自動配置和約定優(yōu)于配置特性能極大減少 XML 配置和模板代碼讓開發(fā)者把精力集中在業(yè)務(wù)邏輯上。資源里的實(shí)現(xiàn)方式走的是典型的前后端分離思路。后端提供 RESTful API前端用 Vue 通過 HTTP 請求調(diào)用接口數(shù)據(jù)以 JSON 格式交互。這種模式的優(yōu)點(diǎn)是前端頁面調(diào)整不會影響后端邏輯對后續(xù)要擴(kuò)展移動端或者小程序端也比較方便。在一個(gè)典型的報(bào)修信息查詢接口里你可以看到這樣的 Controller 層代碼RestController RequestMapping(/baoxiu) public class BaoxiuInfoController { Autowired private BaoxiuInfoService baoxiuInfoService; GetMapping(/page) public Result queryPage(RequestParam(defaultValue 1) Integer pageNum, RequestParam(defaultValue 10) Integer pageSize, RequestParam(required false) String baoxiuren) { QueryWrapperBaoxiuInfo wrapper new QueryWrapper(); if (StringUtils.isNotBlank(baoxiuren)) { wrapper.like(baoxiuren, baoxiuren); } wrapper.orderByDesc(addtime); PageBaoxiuInfo page new Page(pageNum, pageSize); baoxiuInfoService.page(page, wrapper); return Result.success(page); } }這里需要說明幾個(gè)關(guān)鍵點(diǎn)。QueryWrapper是 MyBatis-Plus 提供的條件構(gòu)造器用like方法實(shí)現(xiàn)模糊查詢orderByDesc按時(shí)間倒序排列——報(bào)修信息通常需要展示最新記錄。分頁用的是 MyBatis-Plus 的Page對象前端傳入 pageNum 和 pageSize 兩個(gè)參數(shù)就能控制每頁數(shù)據(jù)量。Result.success是統(tǒng)一響應(yīng)封裝把返回?cái)?shù)據(jù)包一層前端就能根據(jù) code 判斷請求是否成功。資源里的后端結(jié)構(gòu)不是簡單的單文件堆砌而是分包明確controller 層處理請求路由service 層寫業(yè)務(wù)邏輯mapper 層負(fù)責(zé)數(shù)據(jù)庫操作entity 層定義實(shí)體類。這種分層做法在應(yīng)對報(bào)修業(yè)務(wù)里那些多表關(guān)聯(lián)查詢時(shí)很有用比如報(bào)修信息要關(guān)聯(lián)用戶表查姓名、關(guān)聯(lián)宿舍表查位置、關(guān)聯(lián)維修員表查分配情況。2.2 前端與數(shù)據(jù)庫Vue 組件化開發(fā)和 MySQL 表設(shè)計(jì)思路前端的 Vue 部分資源里用的是 Vue 2 Element UI 組件庫。Element UI 的表格、表單、彈窗組件能快速搭建管理后臺界面對做課設(shè)或者內(nèi)部管理系統(tǒng)來說是最省力的方案。頁面結(jié)構(gòu)上登錄頁、注冊頁、用戶報(bào)修頁、管理員后臺頁、維修員任務(wù)頁是分開的通過 Vue Router 做路由跳轉(zhuǎn)。數(shù)據(jù)庫設(shè)計(jì)是這套資源里比較扎實(shí)的部分。MySQL 數(shù)據(jù)庫配合 Navicat 可視化工具管理核心表包括管理員表 users、用戶表 yonghu、維修員表 weixiuyuan、宿舍信息表 sushexinxi、報(bào)修信息表 baoxiuxinxi、配件設(shè)備表 peijianshebei 等一共十幾張表每張表的字段設(shè)計(jì)都和業(yè)務(wù)場景對應(yīng)。以報(bào)修信息表為例字段設(shè)計(jì)基本覆蓋了報(bào)修業(yè)務(wù)流程的所有節(jié)點(diǎn)字段名類型說明備注idbigint主鍵自增baoxiubianhaovarchar報(bào)修編號唯一baoxiurenvarchar報(bào)修人關(guān)聯(lián)用戶賬號baoxiuneirongtext報(bào)修內(nèi)容故障描述baoxiushijiandatetime報(bào)修時(shí)間默認(rèn)當(dāng)前時(shí)間weixiuyuanvarchar維修員接單后回填weixiuzhuangtaivarchar維修狀態(tài)待接單/維修中/已完成wanchengshijiandatetime完成時(shí)間狀態(tài)變更時(shí)更新這套表設(shè)計(jì)的巧妙之處在于它把報(bào)修業(yè)務(wù)的狀態(tài)流轉(zhuǎn)直接體現(xiàn)在表的字段變更上。報(bào)修單創(chuàng)建時(shí)只有報(bào)修人和報(bào)修內(nèi)容維修員接單后回填維修員字段維修過程中更新狀態(tài)完成后再寫入完成時(shí)間。這個(gè)思路比額外建一張狀態(tài)流轉(zhuǎn)表要簡單直接對業(yè)務(wù)規(guī)模不大的場景完全夠用。2.3 權(quán)限控制三種角色在資源里是怎么落地的角色權(quán)限是管理系統(tǒng)的核心這套資源在登錄接口里實(shí)現(xiàn)了基于角色的路由控制。登錄成功后后端根據(jù)不同角色返回不同菜單權(quán)限前端再根據(jù)權(quán)限渲染對應(yīng)的導(dǎo)航欄。PostMapping(/login) public Result login(RequestBody Users user) { QueryWrapperUsers wrapper new QueryWrapper(); wrapper.eq(username, user.getUsername()) .eq(password, user.getPassword()); Users loginUser usersService.getOne(wrapper); if (loginUser null) { return Result.error(用戶名或密碼錯(cuò)誤); } String token UUID.randomUUID().toString().replace(-, ); redisTemplate.opsForValue().set(token, loginUser.getUsername(), 2, TimeUnit.HOURS); MapString, Object data new HashMap(); data.put(token, token); data.put(role, loginUser.getRole()); data.put(username, loginUser.getUsername()); return Result.success(data); }這段登錄邏輯有幾個(gè)地方值得注意。密碼校驗(yàn)用的是最簡單直接的等值查詢這是很多課設(shè)項(xiàng)目的常見做法但生產(chǎn)環(huán)境必須換成加密存儲。UUID.randomUUID()生成的隨機(jī)字符串作為 token存到 Redis 里并設(shè)置 2 小時(shí)過期時(shí)間這樣能控制會話有效期。返回的 role 字段告訴前端當(dāng)前用戶是什么角色前端拿這個(gè)字段控制菜單顯示。資源里的權(quán)限控制粒度是「角色-菜單」級別的也就是不同角色看到不同菜單但同角色內(nèi)沒有更細(xì)分的操作權(quán)限區(qū)分。對于課程設(shè)計(jì)和小型后勤系統(tǒng)來說這個(gè)粒度夠了但如果要做更嚴(yán)格的權(quán)限管理可以考慮引入 Spring Security 或者 Shiro 做細(xì)粒度控制。3. 數(shù)據(jù)庫物理設(shè)計(jì)從 E-R 圖到建表 SQL 的落地細(xì)節(jié)3.1 核心表關(guān)系用戶、宿舍、維修員、報(bào)修單怎么關(guān)聯(lián)這套資源的數(shù)據(jù)庫設(shè)計(jì)遵循了第三范式的基本要求各表之間通過外鍵邏輯建立關(guān)聯(lián)。用戶表 yonghu 和宿舍分配表 sushefenpei 通過用戶賬號字段關(guān)聯(lián)宿舍信息表 sushexinxi 和宿舍分配表通過宿舍名稱關(guān)聯(lián)報(bào)修信息表 baoxiuxinxi 同時(shí)關(guān)聯(lián)用戶表和維修員表。有一個(gè)設(shè)計(jì)細(xì)節(jié)值得展開說說。宿舍信息表和宿舍分配表是分開的宿舍信息表記錄的是靜態(tài)數(shù)據(jù)——宿舍名稱、類型、樓棟、房間號、可住人數(shù)、已住人數(shù)、床位數(shù)量宿舍分配表記錄的是動態(tài)數(shù)據(jù)——誰住在哪個(gè)宿舍的哪個(gè)床位、分配日期、備注。這種拆分避免了一個(gè)學(xué)生換宿舍時(shí)要去修改宿舍表的問題只需要在分配表里更新記錄。建表 SQL 里能看到一些常見的設(shè)計(jì)約定。所有表都有 id 主鍵和 addtime 時(shí)間戳字段id 用 bigint 類型自增addtime 默認(rèn)值設(shè)為CURRENT_TIMESTAMP。這類約定在 MyBatis-Plus 的自動填充功能下很好用插入數(shù)據(jù)時(shí)不用手動維護(hù)創(chuàng)建時(shí)間字段。CREATE TABLE baoxiuxinxi ( id bigint(20) NOT NULL AUTO_INCREMENT, addtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, baoxiubianhao varchar(20) NOT NULL, baoxiuren varchar(20) DEFAULT NULL, baoxiuneirong longtext, weixiuyuan varchar(20) DEFAULT NULL, weixiuzhuangtai varchar(20) DEFAULT 待接單, PRIMARY KEY (id) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4;這里有幾個(gè)細(xì)節(jié)要注意。longtext類型用于報(bào)修內(nèi)容字段因?yàn)楣收厦枋隹赡鼙容^長。weixiuzhuangtai字段設(shè)置了默認(rèn)值 待接單這樣創(chuàng)建報(bào)修單時(shí)不用顯式傳這個(gè)字段。字符集用utf8mb4而不是utf8原因是utf8mb4支持完整的 Unicode 字符包括 emoji 表情避免用戶在報(bào)修內(nèi)容里輸入特殊字符時(shí)出現(xiàn)亂碼。3.2 權(quán)限表的 token 處理機(jī)制管理員表 users 和 token 表的設(shè)計(jì)有一個(gè)值得學(xué)習(xí)的地方。token 表和用戶表是一對一關(guān)系token 表里有 userid、username、tablename、role、token、expiratedtime 字段。這里的 tablename 字段有點(diǎn)意思它記錄的是當(dāng)前 token 對應(yīng)哪個(gè)用戶表的表名。為什么需要這個(gè)字段因?yàn)橄到y(tǒng)有三類用戶——管理員、普通用戶、維修員——他們可能存儲在三張不同的表里。token 表里的 tablename 字段就是為了區(qū)分這個(gè) token 是哪個(gè)登錄主體的。這種設(shè)計(jì)在課設(shè)項(xiàng)目里比較常見雖然用統(tǒng)一的用戶表加角色字段也能實(shí)現(xiàn)但對于已有三張表的數(shù)據(jù)庫結(jié)構(gòu)這種擴(kuò)展方式改動最小。過期時(shí)間expiratedtime的處理邏輯也需要留意。資源里的實(shí)現(xiàn)是在登錄時(shí)生成過期時(shí)間在攔截器里校驗(yàn)當(dāng)前時(shí)間是否超過過期時(shí)間。如果你把這套代碼用于生產(chǎn)建議把這個(gè)校驗(yàn)邏輯統(tǒng)一放到攔截器或者過濾器里避免在每個(gè) Controller 里重復(fù)寫。3.3 常用查詢場景的索引視角從檢索能力角度看這套表設(shè)計(jì)報(bào)修信息表的 baoxiubianhao 字段值得建唯一索引因?yàn)闃I(yè)務(wù)上需要通過報(bào)修編號快速定位單子。用戶表的 yonghuzhanghao用戶賬號字段在登錄時(shí)做等值查詢也應(yīng)該建索引。宿舍信息表的 sushemingcheng 字段在宿舍分配時(shí)做關(guān)聯(lián)查詢加普通索引就夠了。資源里的 SQL 腳本已經(jīng)包含了一些索引定義但在 Navicat 里導(dǎo)入后建議再檢查一遍重點(diǎn)看那些經(jīng)常出現(xiàn)在 WHERE 條件和 JOIN 條件里的字段是否建了索引。實(shí)際操作中我遇到過這種情況數(shù)據(jù)量小的時(shí)候感覺不到區(qū)別一旦報(bào)修記錄累積到幾千條全表掃描的查詢延遲就會明顯增加。4. 核心功能實(shí)現(xiàn)報(bào)修閉環(huán)的三個(gè)關(guān)鍵模塊4.1 報(bào)修流程從用戶提單到維修員接單的狀態(tài)機(jī)報(bào)修管理是這套系統(tǒng)的核心業(yè)務(wù)流整個(gè)流程可以抽象成一條狀態(tài)鏈用戶提交報(bào)修 → 管理員審核或直接進(jìn)入待接單池 → 維修員接單 → 維修中 → 完成。資源里的實(shí)現(xiàn)方式是用戶在前端填寫報(bào)修內(nèi)容提交報(bào)修單進(jìn)入待接單狀態(tài)維修員在待接單列表里查看所有未接單的工單接單后狀態(tài)變?yōu)榫S修中維修完成后更新狀態(tài)為已完成。后端的接單接口是流程的關(guān)鍵節(jié)點(diǎn)代碼大致是PostMapping(/jiedan) public Result jiedan(RequestBody BaoxiuInfo baoxiuInfo) { BaoxiuInfo info baoxiuInfoService.getById(baoxiuInfo.getId()); if (info null) { return Result.error(報(bào)修單不存在); } if (!待接單.equals(info.getWeixiuzhuangtai())) { return Result.error(該報(bào)修單已被接單); } info.setWeixiuyuan(baoxiuInfo.getWeixiuyuan()); info.setWeixiuzhuangtai(維修中); info.setJiedanshijian(new Date()); baoxiuInfoService.updateById(info); return Result.success(接單成功); }這段代碼體現(xiàn)了一個(gè)容易被忽視的業(yè)務(wù)約束接單前的狀態(tài)校驗(yàn)。如果在更新狀態(tài)前不檢查當(dāng)前報(bào)修單是否已經(jīng)是「待接單」?fàn)顟B(tài)就可能出現(xiàn)兩個(gè)維修員同時(shí)搶同一張單子后提交的人把前一個(gè)人的信息覆蓋掉。這種并發(fā)問題在這個(gè)資源里用的是「先查再改」的方式雖然不做數(shù)據(jù)庫層面的樂觀鎖但對課設(shè)場景夠用。如果你想做得更穩(wěn)可以在表里加一個(gè) version 字段在更新 SQL 里加WHERE version #{oldVersion}的樂觀鎖條件。4.2 宿舍分配用戶、宿舍、床位三者關(guān)聯(lián)的精確度問題宿舍分配模塊解決的核心問題是「哪個(gè)學(xué)生住在哪個(gè)宿舍的哪個(gè)床位」。資源里的實(shí)現(xiàn)邏輯是管理員在后臺選擇宿舍再選擇用戶接著填入床位號保存后生成一條分配記錄同時(shí)更新宿舍表的已住人數(shù)。這里有一個(gè)容易踩坑的業(yè)務(wù)點(diǎn)宿舍的容量校驗(yàn)。分配宿舍時(shí)應(yīng)該校驗(yàn)該宿舍當(dāng)前已住人數(shù)是否小于可住人數(shù)否則會出現(xiàn)超員分配。我在拆解資源時(shí)看了一下這個(gè)校驗(yàn)邏輯在源碼里并不完整需要自己補(bǔ)上。補(bǔ)上這個(gè)校驗(yàn)的代碼邏輯如下// 查詢宿舍當(dāng)前狀態(tài) Sushexinxi sushe sushexinxiService.getById(sushefenpei.getSusheId()); if (sushe null) { return Result.error(宿舍不存在); } int yizhu Integer.parseInt(sushe.getYizhurenshu()); int kezhu Integer.parseInt(sushe.getKezhurenshu()); if (yizhu kezhu) { return Result.error(該宿舍已住滿); } // 執(zhí)行分配 sushefenpeiService.save(sushefenpei); // 更新已住人數(shù) sushe.setYizhurenshu(String.valueOf(yizhu 1)); sushexinxiService.updateById(sushe);這里有個(gè)細(xì)節(jié)值得注意yizhurenshu和kezhurenshu在表設(shè)計(jì)里用的是 varchar 類型而不是 int。這在數(shù)據(jù)庫設(shè)計(jì)里其實(shí)不算最佳實(shí)踐因?yàn)橐鰯?shù)值比較時(shí)必須先轉(zhuǎn)型。這個(gè)資源這么設(shè)計(jì)可能是因?yàn)閷?shí)體類里為了方便前端展示用了字符串類型。如果你在二次開發(fā)時(shí)要把這塊做嚴(yán)謹(jǐn)建議把這兩個(gè)字段改成 int 類型Mapper 層做一層類型轉(zhuǎn)換即可。4.3 配件申請與庫存聯(lián)動維修員領(lǐng)料的后臺邏輯配件申請模塊的連接點(diǎn)在維修員和配件設(shè)備之間。維修員接單后如果發(fā)現(xiàn)維修需要更換配件可以在線提交配件申請管理員審核通過后配件庫存數(shù)量需要相應(yīng)減少。PostMapping(/shenqing) public Result shenqing(RequestBody Peijianshenqing peijianShenqing) { Peijianshebei peijian peijianshebeiService.getById(peijianShenqing.getPeijianId()); if (peijian null) { return Result.error(配件不存在); } int kucun Integer.parseInt(peijian.getKucun()); int shenqingshu Integer.parseInt(peijianShenqing.getShenqingshu()); if (kucun shenqingshu) { return Result.error(庫存不足); } // 減少庫存 peijian.setKucun(String.valueOf(kucun - shenqingshu)); peijianshebeiService.updateById(peijian); // 記錄申請單 peijianShenqing.setZhuangtai(已發(fā)放); peijianshenqingService.save(peijianShenqing); return Result.success(申請成功); }這個(gè)接口是「先扣庫存再保存申請單」的順序按正常事務(wù)語義來說應(yīng)該在一個(gè)事務(wù)里執(zhí)行否則如果保存申請單失敗庫存已經(jīng)被扣掉了。資源里沒有顯式加Transactional注解這是一個(gè)潛在隱患。你在二次開發(fā)時(shí)建議加上這個(gè)注解讓這兩個(gè)數(shù)據(jù)庫操作處于同一事務(wù)中保證數(shù)據(jù)一致性。配件模塊還有一個(gè)值得提的設(shè)計(jì)配件分類表和配件設(shè)備表分離。分類表存配件類型設(shè)備表存具體配件通過分類 ID 關(guān)聯(lián)。這種設(shè)計(jì)的好處是新增配件時(shí)不用改表結(jié)構(gòu)選擇已有分類就行。4.4 維修進(jìn)度查詢用戶端的狀態(tài)可視化維修進(jìn)度模塊是用戶體驗(yàn)的加分項(xiàng)。用戶在提交報(bào)修單后可以在「維修進(jìn)度查詢」頁面看到自己所有報(bào)修單的當(dāng)前狀態(tài)。這里的實(shí)現(xiàn)思路很簡單就是按照當(dāng)前登錄用戶的賬號查詢該用戶所有報(bào)修單按時(shí)間倒序展示狀態(tài)字段。進(jìn)度展示的字段設(shè)計(jì)覆蓋了報(bào)修全生命周期提交時(shí)間、當(dāng)前狀態(tài)、維修員姓名、維修完成時(shí)間。用戶在列表里能直觀看到自己的單子處于什么環(huán)節(jié)是待接單、維修中還是已完成。這塊功能實(shí)現(xiàn)不復(fù)雜但它是用戶視角里感知系統(tǒng)價(jià)值最直接的地方。需要注意的是維修進(jìn)度查詢在資源里的實(shí)現(xiàn)是按報(bào)修單狀態(tài)字段實(shí)時(shí)讀取的不是寫一條進(jìn)度日志表記錄每次狀態(tài)變更。如果你需要做「完整操作留痕」比如記錄誰在什么時(shí)間把狀態(tài)從 A 改成了 B那就需要額外建一張狀態(tài)變更日志表在每次狀態(tài)變化的代碼邏輯里插入一條日志記錄。5. 避坑指南五個(gè)讓系統(tǒng)在演示現(xiàn)場翻車的常見問題5.1 端口被占用導(dǎo)致 Tomcat 啟動失敗現(xiàn)象在 IDEA 里啟動 SpringBoot 項(xiàng)目控制臺直接報(bào)Port 8080 was already in use整個(gè)應(yīng)用起不來。原因本機(jī)之前有別的程序占用了 8080 端口或者上一次運(yùn)行項(xiàng)目的進(jìn)程沒被完全殺掉。這在課設(shè)演示前最容易發(fā)生越急越找不到是哪個(gè)程序占的。解決Windows 系統(tǒng)用netstat -ano | findstr 8080查出占用端口的 PID然后到任務(wù)管理器里結(jié)束對應(yīng)進(jìn)程或者直接改application.properties里的server.port配置把端口換掉。我一般建議直接用后者省事改完重啟就行。5.2 MySQL 時(shí)區(qū)問題導(dǎo)致時(shí)間字段相差 8 小時(shí)現(xiàn)象系統(tǒng)里新增報(bào)修記錄的時(shí)間在頁面上顯示比當(dāng)前時(shí)間晚了 8 小時(shí)。原因MySQL 8.0 版本之后的連接驅(qū)動對時(shí)區(qū)敏感如果 JDBC URL 里沒有指定 serverTimezone 參數(shù)默認(rèn)使用服務(wù)器本地時(shí)區(qū)而國內(nèi)環(huán)境經(jīng)常會匹配到 UTC 標(biāo)準(zhǔn)時(shí)間。解決在數(shù)據(jù)庫連接 URL 里明確加上?serverTimezoneAsia/ShanghaiuseUnicodetruecharacterEncodingutf8。這個(gè)問題在資源配套的數(shù)據(jù)庫連接配置文件里其實(shí)已經(jīng)處理過但如果你自己重裝了 MySQL 或者改了連接串很容易重新踩進(jìn)去。配置改完重啟應(yīng)用時(shí)間就正常了。5.3 登錄頁驗(yàn)證碼或密碼校驗(yàn)不走攔截器現(xiàn)象未登錄狀態(tài)直接訪問后端接口地址居然能拿到數(shù)據(jù)登錄功能形同虛設(shè)。原因SpringBoot 項(xiàng)目里的攔截器只對部分 URL 生效如果配置 WebMvcConfigurer 時(shí)攔截路徑寫得不對比如只攔截了/admin/**漏掉了/api/**或者登錄接口本身就在攔截名單里就會導(dǎo)致鑒權(quán)邏輯不生效。解決先看資源里的攔截器配置類把不需要登錄就能訪問的接口路徑全部加到放行列表里比如/login、/register其余接口全部攔截。放行列表怎么寫可以看一下攔截器的實(shí)現(xiàn)一般是在excludePathPatterns()方法后面追加。把攔截器的匹配規(guī)則改成/**再排除掉白名單路徑是最穩(wěn)妥的。5.4 Navicat 導(dǎo)入 SQL 腳本時(shí)外鍵約束失敗現(xiàn)象把資源里的數(shù)據(jù)庫腳本用 Navicat 導(dǎo)入過程中報(bào)錯(cuò)提示Cannot add foreign key constraint導(dǎo)致部分表創(chuàng)建失敗。原因腳本里建表的順序可能有問題先創(chuàng)建了有外鍵的子表后創(chuàng)建了被引用的父表或者是兩張表的字段類型不完全匹配比如一邊是 bigint 另一邊是 int。解決不用 Navicat 直接導(dǎo)整份腳本改成先執(zhí)行建表語句創(chuàng)建所有表再單獨(dú)執(zhí)行外鍵約束的修改語句?;蛘吒纱喟涯_本里所有外鍵約束刪掉表結(jié)構(gòu)建好之后手動在 Navicat 里補(bǔ)外鍵關(guān)系。課設(shè)評審階段外鍵約束是否完整影響不大關(guān)鍵是表能建成功、數(shù)據(jù)能存進(jìn)去。5.5 前端頁面請求跨域?qū)е陆涌谀貌坏綌?shù)據(jù)現(xiàn)象前端 Vue 項(xiàng)目啟動后頁面能打開但所有數(shù)據(jù)都是空的瀏覽器控制臺報(bào)Access to XMLHttpRequest has been blocked by CORS policy錯(cuò)誤。原因前端運(yùn)行在 8080 端口后端運(yùn)行在 8081 端口瀏覽器出于同源策略限制禁止跨端口發(fā)起 AJAX 請求。解決后端加一個(gè)跨域配置類實(shí)現(xiàn) WebMvcConfigurer 接口并重寫 addCorsMappings 方法。代碼如下Configuration public class CorsConfig implements WebMvcConfigurer { Override public void addCorsMappings(CorsRegistry registry) { registry.addMapping(/**) .allowedOriginPatterns(*) .allowedMethods(GET, POST, PUT, DELETE, OPTIONS) .allowedHeaders(*) .allowCredentials(true) .maxAge(3600); } }注意allowedOriginPatterns和allowCredentials(true)要配合使用否則有的瀏覽器版本會報(bào)錯(cuò)。6. 從課程設(shè)計(jì)到能用二次開發(fā)時(shí)我最先動刀的五個(gè)位置拿到這套資源如果你是拿來交作業(yè)跑通就完事了。但如果你想讓這個(gè)系統(tǒng)真正能放進(jìn)一個(gè)宿舍樓里用我建議按下面的優(yōu)先級做改造。第一處是密碼加密。資源里的密碼是明文存儲的登錄也是直接WHERE username ? AND password ?查詢。現(xiàn)實(shí)場景里哪怕只是內(nèi)部系統(tǒng)明文密碼也是不可接受的。用 Spring Security 的 BCryptPasswordEncoder也就是一個(gè)加密工具類注冊時(shí)對密碼做哈希登錄時(shí)用matches方法做比對改動量在注冊接口和登錄接口兩個(gè)地方半小時(shí)能改完。第二處是報(bào)修單狀態(tài)的并發(fā)控制。之前提到接單接口的「先查再改」邏輯存在并發(fā)覆蓋風(fēng)險(xiǎn)加樂觀鎖是最省事的方案。在報(bào)修信息表加 version 字段更新時(shí)用UPDATE baoxiuxinxi SET weixiuzhuangtai 維修中, version version 1 WHERE id ? AND version ?受影響行數(shù)為 0 就說明有人搶先改過了提示用戶刷新后重試。第三處是文件上傳和圖片展示。報(bào)修單里如果能附帶現(xiàn)場照片會大幅減少溝通成本。資源里沒有實(shí)現(xiàn)圖片上傳需要自己補(bǔ)一個(gè)上傳接口把文件保存到服務(wù)器本地目錄訪問時(shí)通過一個(gè)映射路徑直接讀取。注意上傳目錄要放在應(yīng)用外部不然重新部署的時(shí)候文件會丟。第四處是數(shù)據(jù)備份。很多課設(shè)系統(tǒng)跑著跑著數(shù)據(jù)庫就崩了崩了就沒有后悔藥。至少配置一個(gè) MySQL 定時(shí)任務(wù)每天凌晨用mysqldump把整個(gè)庫導(dǎo)出一份 SQL 文件到備份目錄。這個(gè)操作不寫代碼一行 crontab 就能解決。從那以后我每次接手這類系統(tǒng)都強(qiáng)制自己先讀一遍數(shù)據(jù)庫表設(shè)計(jì)文檔再動手改代碼。表結(jié)構(gòu)理順了業(yè)務(wù)邏輯八九不離十就能看懂。這套資源的表設(shè)計(jì)雖然不是完美的但它把報(bào)修業(yè)務(wù)的關(guān)鍵實(shí)體和狀態(tài)都覆蓋到了適合做基礎(chǔ)再去改。希望這篇拆解能幫你在自己的項(xiàng)目里少走幾步彎路。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
女同在线视频一区| 成人免费不卡在线视频| 国产熟女精品区| 丁香婷婷九月| 国产精品自产拍在线观看社区| 91影视亚洲| 久久线上视频免费看| 五月婷婷综合在线| 粉嫩不卡一区二区性爱 | 国产真乱mangent| 小骚逼被操的爽不爽| 激情看片网站| 黄色性爱网网| 日本视频一区二区三区| 成年人网站在线免费观看| 麻豆一区二区三区在线看| 精品人妻一区春色| 九九热精品视频六| 91无摭挡| 日1区2区3区2020| 美女网站黄页| 亚洲精品不卡一二三区| 欧美老妇女内射网址| 污啪啪啪视频| 精品无码一区二区| 久久国产精品91| 91婷婷| 最新中文字幕在线亚洲| 日本丝袜人妻内射| 欧美人人AAA| 国产午夜无码片在线观看影视| 女人与公拘交酡2020视频| 天美传媒AV在线| 精久久久| 操碰97| 国产精品白丝| 人人弄人人摸| 最新的亚洲无吗| 人人射人人操人人摸| 亚洲欧洲精品视频发布| 日韩不卡毛片Av免费高清| 免费簧片在线观看| 免费一级毛片在线视频观看| 亚洲天堂 视频你懂的| 十八禁啪啦拍视频无遮挡| 欧美久久伊人| 日韩在线AB| 精精夜夜| 九九九久| 青娱乐国产剧情av一区| 国产一级高跟丝袜| 成人午夜小视频手机在线看| 制服乱伦| 男人天堂站| 嫩草 人人网精品| 亚av顶级裸体一区二区三区四区五区| 99999re| 欧美男人天堂| aaaa黄片| 久久婷婷一区二| 九九热免费国产视频婷婷伊人五月 | 日韩欧洲操屄视频| 欧美日韩一区二区三区四区蜜桃| 巨爆乳肉感一区二区三区竹菊影视 | 国产性感骚丝袜在线| 中文字幕91综合| 久久超碰亚洲人| 狠狠亚洲| 天天上日日上日韩精品| 91精品久久久久久综合五月天| 中文字幕加勒比海高清无码免费视频| 欧洲精品久久| 午夜美女福利视频| 日本中文字幕在线视频| 综合网亚| 欧美超碰97| 久草网站免费在线观看| 国产亚洲人妻综合日韩 久久| 中文字暮97| 精品一久久久| 92一区二区| 久久黄色性爱视频| 日韩国产十八禁| 美女十八禁| 久久国产在线一区二区| 日韩另类色图| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 91女优在线观看| 舔足天天操天天射| 欧美日韩性爱视屏免费看了| 少妇99| 加勒比伊人| 亚洲国产欧美中文永久| 欧美天堂超碰97| 69XX一中文字幕人妻91| 有码免费观看| 日韩小电影| 在线强奷到舒服的无码视频 | 婷婷激情四射| 日本色婷婷| 亚洲图片 激情小说| 九九九九国产| 日本欧美成人片AAAA| 色天堂综合| 手机看片91人妻| 欧美久久伊人| 一本色道久久综合狠狠操| 日韩av免费一级电影| 婷婷五月综合激情| 岛国天天午夜影院传媒网| 五码视频在线观看| 91国产大片| 欧美亚洲综合高清在线| 久操99| 亚洲狠| 懂色AV蜜臀无码精品APP | 1024人妻熟女一区二区三区| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 中文字幕88av在线| 韩国三级一线观看久| 久久麻豆一区二区| 国产熟女精品一区二区| 啪啪视频mP4| 91天天综合日韩欧美| 欧美视频在线视频免费va| 色麻豆AV| 国内三级自拍小视频在线观看 | 亚洲四虎熟女精品| 懂色Av一区二区三区| 桃色五月天| 久久亚洲欧美一区二区三区-亚洲国产精品第一区二区 | 成人av影院在线观看| 欧美综合第一| 一级@啪啪视频| 久久久久久久久九九久孕交| 久思思热视频在线观看| 在线情色电影 91大 | 成人av影院在线观看| 男人天堂综合| 无码伊人久久大杳蕉中文无码| 欧美日韩亚洲少妇寂寞影院正在播放| 五月丁香大香蕉| 91热热色| 久热伊人99re| 亚洲欧洲综合av在线| 亚州 综合 色图| 人妻系列无码专区中文有码| av天堂电影网| 精品国产乱码久久久久久日本公司| 久久九九网| 成人羞羞视频国产| 亚洲。天堂。日本在线观看| 高凊专区人人操| 青娱乐福利99| 天天肏夜夜肏| 啊嗯嗯啊好大好爽| 国产欧美日韩女同性恋ww喷水精品 | 素人一区二区三区日韩| 亚洲在线A| 天美精品av| 黄色片一区二区三区四区五区| 五十路熟女,国产欧美精品区一区二区三区 | 人妻少妇三级| 中文字幕艹艹| 五月天综合在线| 97超碰色| 久久99干一本高清| 东京热精品97综合网| 午夜福利成人免费视频| 乱伦一区二区三区‘| 91碰碰| 精品少妇一区二区三区免费观看| 色网在线视频观看免费| 白丝被操91| 欧美在线|亚洲| yazhousetuoumei| 97干在线视频| 日本在线不卡v二区| 久久国产在线一区二区| 色淫网站优优视频| 91亚洲最新在线| 夜夜嗷嗷一区二区| 国产超碰国产97| 最新国产亚洲精品精品国产亚洲综合| 欧美人与动性人交a| 九九九九九九综合| 中文字幕免费在线观看| 91男女| 九九国产| 国产天美传媒精品| 天天操天天日天天干| 久操高青| 色妹子A V| 天天色综合天天操| 少妇高潮对白在线观看| 乱论91| 免费的黄片有限公司| 国产精品久久久久婷婷二区次| 国产99999久久精品| 99色婷婷中文字幕乱色| 7月婷婷综合| 亚州伊人色综台| 精品-91人妻子系列| 黄网色一区二区三区四区精品| 26uuu国产亚洲综合| 五十路熟女人妻一区二区在线观看| 成人一级二级| 欧美丝袜亚洲| 999综合网| 日韩本不卡视频在线观看 | 吖在线不卡一区二区国产剧情| 新亚洲无码| 中文视频在线观看| 精品人妻一区二区三区四区石在线| 精品日日人妻| 久久久久夜夜夜夜| 亚洲无码 国产无码| 亚洲美女AV无码| 九久精品| 亚洲欧美高清无码| 国产美女销魂在线观看不卡| 性久久| 黄片国产精品一区二区| 青青伊人这里只有精品| 欧美黄色大香蕉一区二区| 久久久成人国产精品无码| 成人精品在线| 好淫网一二三视区| 久久这里只精品| sewuyueav| 亚洲丝袜少妇在线| 一二三区操逼国产91| 偷拍精品一区二区三区| 国产精品爱欲| 99热这里只有精品地址| 91九久| 宗合情欲网| 91老熟女老女人国产老太 | 另类在线| 欧美国产成人在线| 亚洲乱妇p22| 人人操人人插 - 百度 - 百度| 成年女人黄网站| 亚洲aV性爱| 国产精品老熟女一区二区| 少妇毛片久久| 亚洲丨在线| 色欲久久久久综合网| 国产高清26uuu| 五月天婷婷久久| 97色爱| 天天影视综合色| 国语av狠狠色丁香婷婷综合激情| 51一区二区三区| 欧美精品四区| 91九九九吃| 久久专区| 自慰白浆在线观看| 久久欧洲| 日本操逼视频在线| 欧美在线播放aaaa| 夜精品久无码| 影音先锋新男人| 大香蕉AV在线| 综合网亚洲在线| 眼镜人妻101.com| 激情五月天婷婷| 亚洲天天影视综合网| 啊啊啊免费| 玖玖玖玖精品国产剧情| 人妻熟女一区二区| 激情五月天插| 精产国品一区二三产品| 美女啊啊啊啊啊| 五月天玖玖资源站| 丝袜视频网国产90| 欧美黄片欧美黄片xxx| 亚洲限制级在线| 3PAV乱伦视频| 婷婷五月天丁香| 精品中文日韩字幕视频| 中国一级操逼视频| 国产人伦精品一区二区三区| 国产极品馒头逼| 97福利视频| 啊啊啊啊啊啊啊啊啊在线观看| 强奸乱伦 亚洲一区| 精品四五区| 免费人成毛片乱码| 国产精品极品美女视频| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 欧美日韩丝袜| 日韩电影天堂视频一区二区| 久久久久久精| 久久这里精品国产99丫e6| 少妇天堂| 天堂精品在线| 嗯嗯啊啊啊啊轻点视频| 免费精品无码一级毛片牛牛影视| 日本色婷婷| 啊啊啊轻点在线观看| 国产精品视频一区二区三区八戒| 亚州综合AⅤ| 污色区网站| 欧美综合站| 亚洲欧美999| 五月综合久久| 超碰97亚洲| 青青草密桃在线播放| 精品人妻一区二区免费蜜桃视频| 欧美毛片在线网| 麻豆久久精品亚洲精品88| 人人喜人人妻| 日韩激情无码影院| 色www精品视频在线观看| 国产性爱在线视频一区二区| 91久久18禁| 最新制服中文第一页| 五月激情在线| 凹凸视频在线一区二区| 怡春苑东京热| 韩国一级做A片免费的| 99超碰网| 综合久欧洲| 亚洲乱色熟女一区| 91九色丰满高潮| 99爱在线视频| 另类TS人妖一区二区三区| 91精产一区二区三区| 在线观看综合精品亚洲| 免费精品国偷自产在线在线 | 欧美日韩亚洲国产中文永久天天看 | 91在线色综合| 亚洲日韩美国人妻| 日韩啪啪视频| 丝袜狠狠草尤物 91| 人妻AV 中文字幕的| 精品久久久久久AV无码| 大白逼三四级| 亚洲精品欧洲精品| 色狠狠综合| 日韩有码 一区二区三区| 亚洲日韩熟女人妻高清在线| 97九色人妻| 乱伦av麻豆| 色图四区| 精品女同一区| 肉丝无码中文高清| av九九| 无码99| 中文字幕乱亚洲美女精品一区| 日本人体九九九九九九| 啊灬快c我灬啊灬用力灬啊灬-国产精品性做久久久久久-成人AV | 亚洲美女AV无码| 亚洲熟妇AV日韩熟妇在线| 精品国产污一区二区三区| 国产一区二区视频在线播放| 久久9精品视频| 97色色网| 国产激情在线| 偷拍综合亚洲| 亚洲美女 晚间男人天堂 | 无遮挡又黄又刺激的视频| 黑丝少妇| 亚洲有码第一页| 91社区拍啪人妻| 精品妇操一区二区三区| 东京热天堂网| 国产第二页| 欧美性爱第1 页| 国产小黄片在线免费观看| 亚洲无码成人精品| 十八岁啪啪视频免费看| 亚洲天堂人妻熟妇视频| 伊人激情| 国产精品自拍xxxx| 91精品少妇搡搡搡| 国内外内射高清视频| 久久在线观看免费视频| 色综合尤物| 神马久久久久久久久久| 精品国产一区二区三区香蕉欧美 | 黄色免费网| 2019午夜福利视频| 男人午夜天堂| 青青草AV色| 国产亚洲日本精品在线| 69视频福利导航| 色女女女导航| 日韩免费a级毛片无码a∨| 日韩精品人妻| 亚欧国产无码精品在线| 国产乱码精品一区二区三区四川| 乳欲人妻办公室奶水| 九七超碰| julia在线观看久久| 中文字幕激情小说| 久久精品99久久久久久| 黄色av网站在线播放| 天堂网亚洲区手机版| 综合色区偷拍| 无码91| julia ann久久| 91色综合| 超碰超碰超碰超碰的大鸡吧操黑丝袜| 尤物网址| 国语av最新自产拍在线观看| 麻豆天天躁天天揉揉AV| 精品久久久一本一道| 天天插夜夜操| 欧美情色贴图| 日本色日夜干| 久久久内射良家| 97在线精品观看视频| 校园春色家庭伦理欧美激情| 99999这里都精品| 中文乱码字幕观看视频| 久久午夜鲁丝片| www.超碰| 亚洲诱惑天堂 | 欧美精品久久久久久久丰满| 伊人骚琪琪亚洲天堂网站| 蜜桃网熟妇| 91激情国产| 久久婷婷苹果| 欧美欲色| 超碰久在线天天做| 久久久爆乳翘臀一线天伦理视频| 亚洲欧美91| 亚洲三区视频| 欧美少妇性乱| 日欧毛片久久| 五月婷婷激情综合| 猛猛干| 久久精品一区二区| 久久91精品国产9丨久久分亭| 欧美日韩人妻精品系列一区二区三区| 天天日天天色| 欧美色网| 国产成人欧美一区二区三区的国产| 天天视频网站黄| 精品国产乱码久久久久久网站入口| 97超级久久强资源| 国产伦精品一区二区三区在线观| 欧美日韩97| 96国产精品| 91欧美偷拍| 啊啊啊啊好爽好舒服一区二区易域| 啊好爽快点-国产一区二区三区撒尿在线-成人AV| 日日噜噜夜夜狠狠视频无| 日韩综合97p| 91痴汉| 男人a天堂手机在线版| 日日夜夜天天| 色综合美国| 色97国产69香蕉| 国产一级αv免费看片| 蜜桃不卡一区二区| 亚洲欧美一区二区网址| 日韩精品一区二区日韩| 亚洲无码超碰免费| 丰满高潮18xxxx| 人人玩人人添人人澡免费| 日本淫乱女一区二区三区视频| 岛国不卡超碰护士AV在线播放| 超碰97久久| 中文字幕乱偷人妻久久艾草网| 老熟妇一区二区三区啪啪| 性生活无遮挡纯毛片在线看| 桑老女人九区| 欧美黄色大香蕉一区二区| 国产精品白丝www| 国产精品原创巨作?v网站| 亚洲人在线成线成人| 99热婷婷| 飘花国产午夜精品不卡| 99国产在线绯色一区| 亚州综合AⅤ| 97这里只精品| 欧美熟妇精品黑人巨大91| 91精品久久久久久| 欧美精品xxxwww| 涩涩五月天| 日本三级网页| 国产精品suv一区| 嗯嗯啊啊操我| 国产极品一区二区三区三州| 久久女婷| 亚欧成人中文字幕一区| 欧美黑人168页欧美黑人167| 97少妇人妻中文字幕久久| 97久精品| 一二视频神马久久传媒| 亚洲美女黄色| 天天影视色香色欲| 久久 国产 无码| 美女黄频a美女大全免费皮| 99在线啪| 日韩资源网| 秋霞网无码| 襙一襙| 日本不卡五区| 一个色导综合| 超碰三级秋霞| 熟女乱3伦999| 欧美色图 人妻| 91强热人妻| 亚洲图片婷婷五月天| 97超碰中文在线| 久久超碰亚洲人| surenchaopeng| 日本伦乱九九九综合| 97久久久| 噜噜噜在线视频| 国产蜜臀精品一区二区尤物| 五月激情小说| 国语国产操逼伊人AV网| 国产精品久久久久久 百度| 婷婷15月天青娱乐| 久久久9999| 欧美一级在线观看成人| 婷婷色一区| 亚洲综合小视频小说在线观看| 日本操逼无码| 91女优在线观看| 综合网久久| 裸体美女久久久| 天天色踪合| 精品女人999| 91国产大片| 中文字幕丝袜国产第一页不卡| 麻豆区99999| 嗯啊不要啊啊在线观看视频| 久久久久成人蜜桃精品| 国产中出内射一区二区| 亚洲欧美综合网站| 四虎影视欧美| 亚洲超碰综合网| 日本日逼视频网| 蜜臀久久99精品久久久久久成人小说 | 性爱乱伦网址| 女性91网站| 青操影院| 久久透逼视频| 欧美日本中字另类在线| 920日本午夜免费| 91 丝袜在线观看| 懂色Av一区二区三区| 800zy一区二区| 欧美性夜| 日韩丝袜二区| 亚洲欧美天堂在线| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 亚洲欧美色图| 超碰97亚洲| 清纯唯美亚洲| 婷婷五月天激情网| 五月天黄色av| 日韩国产成人自拍视频| 亚洲精品国产AV天美传媒| 翔田千里无码一区| 在线岛| 大香樵伊人网| 精品中文字幕一区二区l - 百度| 久艹99| 亚洲A曰本VA欧美VA视频| 91熟女视频| 自拍偷拍第26| 中亚精品极乱| 天久久久噜噜噜久久国产精品爽爽| 久9久9精品| 10000部十八禁看电影| 蜜臀在线免费观看在线免费观看| 99re9| 九九热免费视频| xxx亚洲午夜天堂| 日韩天天综合| 极品欧美一区二区三区| 操B久久| 无码精品久久久久久亚洲| m欧洲一级午老| jazzjazz国产精品麻豆| 国产精品白丝AV| 日少妇视频| 超碰超碰超碰超碰的大鸡吧操黑丝袜 | 不卡人妻少妇精品毛片一区23区视频| 亚洲日本韩国极品一区二区| 欧美性夜| 亚洲天堂AV在线播放| 久久9精品网站| 一类av片在线看| 中文字幕在线观看第二页| 国产精品久久久蜜臀| 0755午夜福利视频| 国产深喉视频一区二区| 丁香六月激情综合| renqi久久久久久久久久久久| 草B在线| 日本性一区| 色区久久| 午夜福利精品| 亚卅熟女乱色| 97人人干| 黄色av一区二区在线| a片 xxxx受爽视频| 91强在线播放| 亚洲精品男人的天堂| 久久加勒比| 激情小说日韩无码| 黄色污污污污污污网站| 日韩久草| 日本不卡一区| A级片一区| 九九精品美女高溯喷水| 欧美性爱精品七区| 欧美嗯啊……在线观看视频免费| 久热伊人| 一区二区三区不卡视频| 日韩精品一区二区人人人| 亚洲男人的天堂va亚洲男人社| 91蜜臀在线久久久久| 六月丁操逼| 狠狠超| 日本视频一区二区三区| 1769精品一区二区三区| 眼镜人妻101.com| 亚洲成人网站在线观看| 东北少妇高潮zzzz| 久久亚洲日韩国产欧| 黄片免费视频2019| 色妺妺AⅤ| 成人夜夜爽| 97这里有精品| 日韩无码专区| 伊人女女资源在线观看| 男人的天堂2019AV| 日日夜夜草草草| 久操99| 九九热在线视频| 亚洲熟女乱色一区二区三区久久久 | 校园春色中文字幕AV| 国产精品日日摸天天碰| 亚洲精品少妇| 大香伊人在线一区| 久9re热视频这里只有精品| 人人操人人舒服| 日本性爱欧美性爱| 特级特黄一级毛片免费| 免费国产电影一区二区| 中文字幕奈奈美被公侵犯| 亚洲欧美综合网 | 亚洲 自拍偷拍 欧美| 久草热制服丝袜在线观看| 神马久久久久久| 老子午夜伦不卡影院| 26uuu性| 亚洲天堂中文字幕无码男同| 五月天激情小说网| 1024亚洲中文字幕久在线看片你懂的 | 久久久久久久性爱| 欧美日韩情色一区二区| 亚洲视频精选| 亚洲精品三| 亚洲精品毛片在线观看| 天天日天天舔东京热 | 午夜电影在线观看无码专区| 精品-91人妻子系列| 英伦大奶子熟妇吊带| 999 久久久| 日韩性爱一级片| 国产肏逼网站| 99久久婷婷丁香| 91被操| 亚热日本熟女| 精品一二三区女同| 婷婷九月丁香| 男女性无套 免费九一| 加勒比在线观看一区二区| 偷窥自拍亚洲天堂网爆| 91久久婷婷| 欧美性暴力猛交XXXX | 精品乱码在线观看| 五月激情天| 久久久久久久久久久久久久9999| 日韩精品高清资源在线| 神马精品视频| 成人性爱av.com| 青娱乐日韩无码| 久久九七| 免费精品国偷自产在线在线| 日韩人妻少妇 一区二区三区| 超碰国产精品无码| 人妻加勒比东京热| 亚洲熟女一区| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 爱爱动态120秒| 多毛小伙内射老太婆| 日韩综合97P| 欧美论理片| 亚洲欧美一区二区三区一猛片| 任你干在线视频| 亚洲色性| 亚洲欧美国产中文视频| 神马麻豆福利院| 美女久久久久久久| 六月婷婷综合| 91老熟女| 久久久久96| 国产精品久久久视频| 大香网伊人久久综合网eew| 欧美国产精品久久九九| 精品亚洲国产成人AV制服丝袜| 狠狠综合| 亚洲男人天堂网久久| 精品人妻av在线播放| 亞洲久久直播| 久久亚洲国产成人| 人妻熟妇一区二区三区| 99热免费| 色鬼在线综合| 超碰一区二区| 日韩三级性| 女人综合网| 久久久久熟女| 欧美日韩国产男人| 天天日天天干天天色| 男人天堂一区二区| 亚洲91射| 国产精品扒开腿做爽爽爽视频| 狠狠 91| 大屁股xxxxx| 免费αV在线视频| 欧美人体性爱互联网第一页婷婷日本| 日韩亚洲中文有码视频| 久久精品熟妇丰满人妻99| 欧美日韩精品一区二区三区高清| 欧美中文字幕一区 | 欧美78p| 99热色这里只有精品| 蜜色网色哟哟| 国产欧美日韩女同性恋ww喷水精品 | 亚洲超碰在线| 人妻AV 中文字幕的| 99久久久| 亚洲色图A| 欧美线天码中字| 91小视频| 一区二区三区亚洲| 黄色十八禁网站| 嗯嗯啊啊的视频| 天天干夜夜操一区二区| 亚洲精品电影| 91综合站| 日韩中文字幕人妻视频| 亚洲熟女乱色| 亚洲AV无码乱码在线观看性色| 日韩15p| 试看福利| 少妇与黑人高潮在线| 日韩欧美成人午夜福利| 日韩美女操b| 精品十八在线观看| 91少妇| 黄色AV免费| 免費黃色視頻觀看一| 国产成人无码网站在线视频| 人妻人久久精品中文字幕| 99视频这有这里有精品| 亚洲男人天堂2013| 青青在线视频日韩欧美| 久久国产在线一区二区| 永久免费发布性爱网| 国产又猛又粗又爽又黄| 百度百度日本操逼| 五月丁香大香蕉| 舔足天天操天天射| 操逼日韩无码| Julia Annxxxxx| 国内毛片欧美香蕉精品| 中文字幕一区 二 区 三 四 五 区日 日 骚 | 日韩成年人性爱视频| 美女骚尻视频| 欧美色图偷拍另类| 97色视频在线| 中文字幕一区二区无码成人| 欧美日韩在线视频网站| 色九九九九| 在线观看成人性爱免费小视频| 久久激情网| 日韩午夜精品一区二区三区电影| 中韩中文字幕在线观看| 欧美综合站| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 色一色综合网| 亚洲欧美日产国产91毛片| 秋霞视频一区二区| 黑人娇小av在线播放 | 蜜乳成人AV| 熟女这里只有精品6| 91粉嫩萝控精品福利网站_精品影音先锋国 | 日韩97超碰| 在线97在线| 丰满人妻一区二区三区四区| 九九夜精品九九在线| 精品亚洲黄色片 国产精品导航一区二区 | 校园春色第一页| 玖玖资源中文字幕制服丝袜| 2017,超碰| 久妇网| 91社区伊人| 东京热一区二区中文字幕| 亚洲va有码在线天堂| 亚洲成a人在线观看久| 中文字幕一二区二三区人妻专区| 亚洲人妻久久久| 天堂资源站| 激情五月婷婷| 天天综合网站| 牛黄色久午久| 欧美日韩情色一区二区| 国产一区二区精品久久99| 中国黄色特级精品一区二区三区片| 插入逼91| 日本999精品视频| 3P丝袜熟女 色综合| 欧美性天天影视| 五月天九九日国产精品一区二区三区| 亚洲一区二区三区久久 亚洲一区二区| 亚洲乱码尤物193YW| 亚洲婷婷综合网| 亚洲少妇视频| 国产久久成人| 97久精品| 天堂伊人久久| 国产黄色视频久久| 日日超碰亚洲| 国内毛片四区| 操曰本熟女| 一牛影视成人片免费| 91欧美另类| 青青免费在线视频一区| 97人人干人人操| 夜夜爽33333| laoshunv91| 偷拍超碰| 日韩精品一区,二区 九九...老司机| 亚洲中文字幕av | 国产农村一一级特黄毛片| 色诱avtt| 日韩人成网站在线播放| 美女啊啊啊啊啊啊| 密臀视频三区免费网站| 成人美女av| 黑丝自慰喷水网站| 老司机天天操| 亚洲国产欧美日韩精品一区二区三区,国产一区二区三区在线看片,欧美性猛交 XXX | 日韩精品人妻中文字有码在线| 屁股久久久久久久| 操www| 99视频只有精品| 天天做天天爱天天爽AV| 国产女人9999| 人人妻人人爽 97人人看碰人免费公开视频 | 国内亚洲精彩视频在线| 亚洲 欧美 日本 国内 首页| 夜夜騷av、一區二區| 国产尤物AV尤物在线观看不卡| 51一区二区三区| 91精品丝袜久久久久久| 国产精品一区二区三区,亚洲综合 性开放中文AV高清无码免费看 | 欧美Aⅴ| 亚洲一级特黄大片在线播放91| 最新岛国大片| 久草久日| 97人妻免费中文字幕| 欧日韩一二三f区| 67194无码不卡| 在线中文字幕视频| 伊人991| 91网站在线播放| 一区二区视频在看| 精品国产精品一区二区| 每日更新AV| 密乳无码| 欧美视频一区二区在线| 91激情国产| 婷婷五月天社区| 欧美色图自拍| 中国一区二区亚洲人妻| 欧美综合自拍亚洲综合图| 中国探花熟女| 国产精品久久久久999| 白丝AV网站| 精品176精品2| 亚州九九九精品视频| 2017超碰| 大香蕉伊人亚洲| 免费伦费视频在线观看| 欧美日韩亚洲一区二区在线观看| 18禁精品网站在线看| 婷婷成人久久久精品| 狠狠热这里都是精品| 色在线综合| 韩国一级做a久久久久| 欧美熟女丝袜| 91一区二区| 欧美激情视频在线一区| 人人人摸人人| 午夜偷拍久久熟女| 日韩一级二级三级免费看完整版| 久久人妻| 久久婷婷五月综合| 大香蕉乱伦视频网| 黄色av网站在线播放| 日韩人妻操B| 精吧天堂| 韩国手机不卡无码三级视频| 色色色网站| 玖玖爱免费观看视频| 亚洲精品aa久久伊人| CCYY草草影院地址入口| 青青草五月份天| 动漫av中文| 91男人天堂网| 精品视频久久区| 99热在线播放| 操逼国产免费| 大粗鳼巴久久久久| 青椒国产97在线熟女| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 欧美曰韩国产精品| 五月综合激情| 涩爱AV在线| 国产成自自拍在线观看| 亚洲清纯唯美| 夜夜国产一区| 九九九九免费| 蜜臀AV一区二区三区激情综合| 中文子幕一二三| 丰满熟妇大乳做爰| 97任你吞精| A级毛片在线看免费| 久久久夜夜夜| 亚洲人精品久久久| 色婷五月| 天天草天天日| 91综合国产精品| 国产尹人在线视频免费| 99热综合在线| 久久↗↗| 激情小说图片亚洲首页| 国产精品美女久久久久久网站| 亚洲成人免费中文字幕| 99久re热视频精品98| 粘花网06av视频| 青青草中文字幕| 黄色网址久久精品欧美喷水| 激情四射五月天| 久久性爱视频免费看| 超碰久久网| 日产狠狠干| 激情网色| 亚洲资源站| 黑人性欧美| 凌辱美少妇久久aV| 国产精品在线一区二区| 一级性爱视频免费观看 | 色黄色美女大长腿午夜视频| 欧美性,色九九| 一本大道青青| 神马久久久久久久久久| 久九九九九九九热| 久久久成人精品| 午夜亚洲| 欧美一级二级三级| 无套后入双马尾| 在线情色电影 91大| 欧美日韩国产人人| 九九九九免费高| 99视频精品| 三级AV入口| 大香蕉琪琪日本女优不卡| 国产免a费看黄片在线| 国产精品成人无码av| 一区二区三区在线日韩影院观看| 2018天天日天天日| 久久久久久久极品香蕉视频| 日本精品五区| 日韩专区久久久| 久久久久人妻二区精品叶可怜| 新亚洲无码| 香蕉热人人精品| 日本一级婬片试看三分钟| 日韩九区| 亚洲情色婷婷五月天| 伊人久久亚洲中文字幕不卡| 天天看夜夜看日日干| 亚洲无码免费看| 亚洲男人电影天堂| 偷拍片久久| 五月天久久久| 久久午夜鲁丝片| 嫩草 我啊~嗯~在线| 青青草原人妻| 在线国产探花| 9 7超碰在线免费观看| 国产精品老熟女一区二区| 丰满高潮18xxxx| 一区二区三区四区免费视频| 欧洲射精91| 日韩在线性爱免费视频| 久热99999| 亚洲?V高清一区二区三区尤物| 午夜乱轮操逼视频免费看| 久久婷婷五月天| 少妇高潮九九九九九九九| 日韩激情毛片一级久久久| 18禁超污无遮挡无码免费网| 国产无码一二三区| 久热九九| 亚洲九九夜夜| 日韩精品 资源| 第一高清av中文字幕| 思思热久久成人| 欧美性爱另类综合| 婷婷91| 日产国产精品中文久久婷婷| 色偷偷综合91久久噜噜| 亚洲AV成人无码一区二区三区在线观看| 久久网亚洲| 亚洲图片欧洲图片aⅴ| 日日日大屁股骚女人精品| 亚洲精品自拍| 日日天天久久啊啊aaa| 久久男人的天堂| 加勒比AV网| 免费看美国人人爽,人人操 | 人人妻人人爽 97人人看碰人免费公开视频| 亚洲毛片基地专区| 亚洲一区日韩精品中文字幕 | 日本性感人妻91| 婷婷五月色| 亚洲视频中文一区| 精品人妻一区二区三区-国产精品 一个人在线看的黄色电影网站 | 凹凸视频在线一区二区| 99热亚洲天堂| 亚洲成人免费中文字幕| 白嫩妹子国产骚| 99国内精品| 成人无遮挡毛片免费看| AV天黑人| 亚洲一区二区三区不卡国产欧美| 欧美色图私拍91| 欲色综合| 亚洲综合色婷婷| 欧美97av| 欧美一级国产一级| 亚洲欧美中日韩| 国产人妻久久精品一区二区三区| 在线强奷到舒服的无码视频 | 蜜臀人妻少妇久久在线观看| 大香蕉av在线| 屁屁影院一区二区三区国产| 一本色道综合久久欧美日韩精品| 蜜臀久久久国产| 久久婷婷在线观看视频| 中文字幕 国产区| 色香色欲天天综合网天天来吧| jizz啪啪| 黄片不用下载在线观看| 国产成人自拍视频视频| 99热线麻豆| 99热成人| 人妻9117c| 黄色十八禁网站| 成人免费不卡在线视频| 少妇99| 欧美劲爆视频一区二区| 99热8| 诱惑人妻欧美一区在线播放| 激情文学网伊人| 色色婷婷五月天| 插入逼91| 欧美激情黑人| 欧美性爱一区二区三区| 男人的天堂成人的社区| 日韩欧美天天爽爽爽天天爽爽| 五月丁香拍拍激情综合三级| 亚洲中文sv| 网友自拍第1页| 中文字幕欧美丝袜07资源| 在线看的av| 人人人人插| 牛牛aV| 日本天天吊| 亚洲熟妇熟在线电影视频| 又摸又舔在线观看网站| 偷拍综合亚洲| 久九色| 欧美亚洲一级在线观看| 四虎影视在线| 一二三卡欧美日韩人妻免费精品| 二级久久网| 亚洲国产精品久久久久婷婷青年| 偷窥自拍A片| 欧美日韩国内不卡| 免费岛国一级片| 97国产|免费| 啊啊啊啊啊啊啊在线| 久久25| 国产欧美第五页| 国产人伦精品一区二区三区| 日本天堂在线播放| 俺也射| 欧美最婬乱婬爆婬牲视频| 亚洲精品蜜桃久久久| 久久精品—区二区三区内射| 美国一区二区免费视频| 四虎在线免费视频| 波多野结衣先锋影音| 啊啊啊啊好大好硬啊啊啊啊啊| 在线看的av| 欧洲精品久久| 强奸乱伦αv片| 激情小说亚洲图片| 国产精品干干干| 亚洲人码13| 视频黄色国产一级| 巨爆乳肉感一区二区三区竹菊影视| 午夜呻吟欧美| 爱丝福利| 91成人无码| 18禁网站在线播放| 色噜噜人妻丝袜a∨先锋影| 精品视频久久久久九九九九9999| 99青青草国产视频| 超碰97导航| 久久这里只精品免费福利| 无码天天操| 丝袜综合| www熟女乱伦com| 国产超碰欧美| 第二页中文字幕| 国产一区二区三区久久久精品| 亚洲欧洲视频小说在线观看| Sekablack无码一区| 亚洲丝袜二区在线| 久久婷婷五月| 又大又大又大又粗爽高潮观看| 亚码激情| 熟女字幕| 亚洲人妻中文高清| 丰满人妻-区二区三区免费看 | 国产吹潮女在线观看| 一个色导综合| 日韩久久艹| 欧美黑人精品一区二区| 97日视频| 2019久久久久久久久福利| 亚洲码和欧洲精品激情系列|