久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

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

SpringBoot+Vue+MySQL學(xué)院個(gè)人信息管理系統(tǒng):從源碼到運(yùn)行全流程解析

SpringBoot+Vue+MySQL學(xué)院個(gè)人信息管理系統(tǒng):從源碼到運(yùn)行全流程解析 每到畢業(yè)設(shè)計(jì)或者課程設(shè)計(jì)截止前的那個(gè)月我收到最多的私信就一句話“有沒(méi)有一個(gè) SpringBoot Vue 的項(xiàng)目數(shù)據(jù)庫(kù)、后端、前端都配好拿到手就能跑的那種” 說(shuō)實(shí)話市面上流傳最廣、被用得最多的正是“學(xué)院個(gè)人信息管理系統(tǒng)”這一類——SpringBoot 提供后端接口Vue 寫(xiě)管理頁(yè)面MySQL 負(fù)責(zé)數(shù)據(jù)存儲(chǔ)幾乎成了畢設(shè)和課設(shè)的標(biāo)準(zhǔn)模板。這篇就針對(duì)這套源碼做一次完整拆解內(nèi)容包括它到底有哪些功能模塊、數(shù)據(jù)庫(kù)大概長(zhǎng)什么樣、從零開(kāi)始怎么一步步把前端后端數(shù)據(jù)庫(kù)全部跑通以及我在本地調(diào)試這類項(xiàng)目時(shí)踩過(guò)的那些真實(shí)坑。不管你是準(zhǔn)備拿它當(dāng)畢設(shè)、課設(shè)還是單純想學(xué)習(xí)前后端分離項(xiàng)目的標(biāo)準(zhǔn)寫(xiě)法照著這篇走能省下不少時(shí)間。1. 項(xiàng)目整體設(shè)計(jì)與技術(shù)棧選型邏輯1.1 為什么偏偏是 SpringBoot Vue MySQL很多人在選題時(shí)會(huì)糾結(jié)“我這個(gè)系統(tǒng)用什么技術(shù)好”。以學(xué)院個(gè)人信息管理系統(tǒng)這種典型后臺(tái)管理場(chǎng)景來(lái)說(shuō)SpringBoot Vue MySQL 不只是流行而是它確實(shí)匹配這類業(yè)務(wù)的特點(diǎn)。先說(shuō)為什么不是更老的 JSP Servlet。以前的傳統(tǒng)項(xiàng)目里Java 代碼和 HTML 混在一起業(yè)務(wù)邏輯稍微復(fù)雜一點(diǎn)改一個(gè)頁(yè)面可能要翻遍幾十個(gè) JSP 文件前后端分工也分不清楚。后來(lái) SSMSpring SpringMVC MyBatis雖然把分層做好了一些但 XML 配置一堆光配置文件就能勸退新手。SpringBoot 的核心價(jià)值在于“約定大于配置”。它把原來(lái) SSM 里復(fù)雜的 XML 配置收斂成了application.yml幾個(gè)關(guān)鍵項(xiàng)內(nèi)嵌 Tomcat最后java -jar就能啟動(dòng)。對(duì)信息管理系統(tǒng)這種 CRUD 比重很大的項(xiàng)目來(lái)說(shuō)SpringBoot 的自動(dòng)配置和生態(tài)支持能省掉大量樣板代碼。前端這邊Vue 的組件化開(kāi)發(fā)方式和后臺(tái)管理頁(yè)面的需求天然契合——左側(cè)菜單、頂部導(dǎo)航、表格、表單、彈窗都能拆成組件復(fù)用。Vue 的上手曲線也比較平緩只要會(huì) JavaScript 基礎(chǔ)看幾天就能開(kāi)始寫(xiě)頁(yè)面。MySQL 就更不用說(shuō)了免費(fèi)、跨平臺(tái)、資料多安裝也是傻瓜式。有人會(huì)問(wèn)“為什么不加 Redis 做緩存為什么要用微服務(wù)架構(gòu)”對(duì)這種規(guī)模的系統(tǒng)來(lái)說(shuō)沒(méi)有必要。個(gè)人信息管理系統(tǒng)的核心是登錄認(rèn)證、增刪改查、分頁(yè)搜索單庫(kù)單表完全夠用強(qiáng)行引入復(fù)雜技術(shù)反而增加出問(wèn)題的概率答辯時(shí)還可能被問(wèn)住。技術(shù)選型不是越炫越好而是匹配業(yè)務(wù)規(guī)模能穩(wěn)定交工才是首要目標(biāo)。1.2 系統(tǒng)功能模塊拆解這類學(xué)院個(gè)人信息管理系統(tǒng)往下拆就是一套標(biāo)準(zhǔn)的后臺(tái)管理模板。我順手整理一下典型模塊方便你對(duì)號(hào)入座不同源碼的命名可能不同但思路是一樣的登錄與權(quán)限模塊區(qū)分管理員、教師、學(xué)生三種角色不同角色登錄后看到不同菜單、執(zhí)行不同操作。核心點(diǎn)在于用戶表、角色字段和路由守衛(wèi)。學(xué)生信息管理新增、編輯、刪除學(xué)生檔案按學(xué)號(hào)、姓名、專業(yè)等關(guān)鍵字模糊查詢分頁(yè)展示列表。教師信息管理結(jié)構(gòu)和學(xué)生管理類似管理教師工號(hào)、職稱、所屬院系、聯(lián)系方式等。院系與專業(yè)管理維護(hù)學(xué)院、系部、專業(yè)的層級(jí)關(guān)系給其他模塊提供下拉選項(xiàng)。課程管理可選課程名稱、學(xué)分、任課教師以及課程與教師、選課學(xué)生之間的關(guān)聯(lián)。公告管理后臺(tái)發(fā)布學(xué)院公告前端在首頁(yè)或公告列表展示。個(gè)人信息中心登錄用戶修改自己的基礎(chǔ)資料、修改密碼。把模塊再往底層拆幾乎都是同一套操作表格展示、表單提交、刪除確認(rèn)、條件查詢、分頁(yè)。這也是為什么這類項(xiàng)目適合用來(lái)學(xué)習(xí)它把一個(gè)后臺(tái)管理系統(tǒng)最通用、最典型的開(kāi)發(fā)套路完整演示了一遍。1.3 數(shù)據(jù)庫(kù)表結(jié)構(gòu)與設(shè)計(jì)思路數(shù)據(jù)庫(kù)設(shè)計(jì)是整個(gè)項(xiàng)目的地基。我以最常見(jiàn)的表結(jié)構(gòu)為例說(shuō)明設(shè)計(jì)邏輯。用戶登錄相關(guān)的數(shù)據(jù)會(huì)單獨(dú)建一張sys_user表存用戶ID、賬號(hào)、密碼、角色、狀態(tài)字段。為什么要單獨(dú)拆出來(lái)因?yàn)榈卿浶畔⒑蜆I(yè)務(wù)信息比如學(xué)生姓名、住址的更新頻率不一樣賬號(hào)密碼屬于高安全敏感數(shù)據(jù)把它和業(yè)務(wù)表分開(kāi)在做權(quán)限控制、修改密碼時(shí)能避免動(dòng)到其他字段。業(yè)務(wù)表一般包括tb_student學(xué)生信息表學(xué)號(hào)、姓名、性別、出生日期、籍貫、手機(jī)號(hào)、所屬專業(yè)、班級(jí)、入學(xué)年份。tb_teacher教師信息表工號(hào)、姓名、性別、職稱、學(xué)歷、所屬院系、手機(jī)號(hào)。tb_department院系列表院系ID、院系名稱、院系編碼。tb_course課程表課程ID、課程名稱、學(xué)分、開(kāi)課院系、任課教師ID。關(guān)聯(lián)關(guān)系上tb_student.department_id指向tb_department.idtb_course.teacher_id指向tb_teacher.id。這種外鍵關(guān)聯(lián)在查詢時(shí)通過(guò) JOIN 或 MyBatis 關(guān)聯(lián)查詢拿完整信息。設(shè)計(jì)要點(diǎn)是“業(yè)務(wù)表盡量不存冗余名稱字段只存關(guān)聯(lián)ID”否則以后院系改名所有學(xué)生數(shù)據(jù)里的舊名稱都成了臟數(shù)據(jù)。還有個(gè)安全細(xì)節(jié)必須提密碼字段絕對(duì)不要存明文。我看過(guò)不少課程設(shè)計(jì)源碼sys_user表里直接明文密碼作為演示沒(méi)問(wèn)題但如果是畢業(yè)設(shè)計(jì)答辯老師問(wèn)一句“項(xiàng)目里密碼怎么存的為什么這么做”你總不能說(shuō)“為了方便測(cè)試”。正確做法是用 BCrypt 加密或者至少 MD5 鹽。這類項(xiàng)目源碼里通常會(huì)帶一個(gè) SQL 初始化腳本里面預(yù)置了管理員賬號(hào)導(dǎo)入數(shù)據(jù)庫(kù)后默認(rèn)密碼是加密后的值注意區(qū)分。2. 環(huán)境準(zhǔn)備與版本匹配啟動(dòng)前先解決四個(gè)關(guān)鍵問(wèn)題2.1 JDK 和 Maven 版本選擇最常見(jiàn)的第一道坎你會(huì)發(fā)現(xiàn)很多源碼在本地跑不起來(lái)不是代碼問(wèn)題而是環(huán)境版本不對(duì)。最典型的就是 SpringBoot 版本和 JDK 版本不匹配。SpringBoot 2.x 要求 JDK 8 及以上而 SpringBoot 3.x 強(qiáng)制要求 JDK 17。如果你下載的源碼是 SpringBoot 2.x 系列但電腦上裝的是 JDK 17 甚至 JDK 21啟動(dòng)時(shí)大概率會(huì)報(bào)類似Unsupported class file major version或java.lang.NoSuchMethodError的錯(cuò)。反過(guò)來(lái)也常見(jiàn)你裝了新版本 JDK又想強(qiáng)行把項(xiàng)目的 SpringBoot 從 2.x 升級(jí)到 3.x結(jié)果導(dǎo)致各種依賴不兼容改到懷疑人生。我的建議很務(wù)實(shí)如果是拿這個(gè)項(xiàng)目交作業(yè)、做畢設(shè)不要追求環(huán)境最新直接用 JDK 8 Maven 3.6.3 最穩(wěn)妥這套組合能覆蓋絕大多數(shù) SpringBoot 2.x 的老項(xiàng)目。Maven 這塊裝完以后第一件事不是建項(xiàng)目而是改conf/settings.xml把中央倉(cāng)庫(kù)換成阿里云鏡像。否則第一次執(zhí)行mvn clean install時(shí)下載 Spring 全家桶的依賴可能等上半小時(shí)還超時(shí)。鏡像配置很簡(jiǎn)單找到mirrors標(biāo)簽補(bǔ)充一段直接把倉(cāng)庫(kù)地址指向https://maven.aliyun.com/repository/public就行。2.2 Node.js 與 Vue 版本對(duì)應(yīng)先分清是 Vue2 還是 Vue3前端啟動(dòng)前先打開(kāi)前端目錄下的package.json看dependencies里vue字段的版本號(hào)版本號(hào)是2.x.x這是 Vue2 項(xiàng)目建議用 Node.js 14 到 16 版本。版本號(hào)是3.x.x這是 Vue3 項(xiàng)目建議用 Node.js 16 到 18 版本。Node 版本太高或太低都會(huì)引發(fā)問(wèn)題。尤其是老項(xiàng)目用到的node-sass在 Node 17 環(huán)境下經(jīng)常編譯失敗報(bào)錯(cuò)信息五花八門(mén)最后定位到都是環(huán)境不兼容。所以我建議機(jī)器上裝一個(gè) nvmNode Version Manager隨時(shí)切換 Node 版本。這是投入產(chǎn)出比極高的工具一個(gè) nvm 能省下無(wú)數(shù)重裝 Node 的時(shí)間。還有 npm 下載依賴的問(wèn)題。國(guó)內(nèi)直接 npm install 大概率卡在reify階段或者報(bào)網(wǎng)絡(luò)超時(shí)這不是項(xiàng)目的問(wèn)題是 registry 源的問(wèn)題。執(zhí)行一行命令切到淘寶鏡像npm config set registry https://registry.npmmirror.com設(shè)置完后再執(zhí)行npm install速度會(huì)快得讓你懷疑人生。2.3 MySQL 安裝與初始化密碼、字符集、時(shí)區(qū)三大坑數(shù)據(jù)庫(kù)部分我用過(guò) 5.7 和 8.0 兩個(gè)大版本對(duì)這類項(xiàng)目來(lái)說(shuō)都能跑。真正坑人的是細(xì)節(jié)。第一個(gè)坑MySQL 8.0 默認(rèn)的密碼加密規(guī)則是caching_sha2_password如果你用的數(shù)據(jù)庫(kù)驅(qū)動(dòng)版本偏老連接時(shí)會(huì)報(bào)Public Key Retrieval is not allowed。解決辦法有兩個(gè)要么換新版本的 mysql-connector-java要么在連接串上顯式加上allowPublicKeyRetrievaltrue。第二個(gè)坑時(shí)區(qū)。后端啟動(dòng)后連接數(shù)據(jù)庫(kù)如果報(bào)The server time zone value ?D1ú±ê×?ê±?? is unrecognized大概率是連接串沒(méi)指定時(shí)區(qū)。URL 里加上serverTimezoneAsia/Shanghai就解決了。第三個(gè)坑建庫(kù)和建表時(shí)字符集。很多老 SQL 腳本是不帶建庫(kù)語(yǔ)句的需要你手動(dòng)創(chuàng)建數(shù)據(jù)庫(kù)。如果數(shù)據(jù)庫(kù)默認(rèn)字符集不是 utf8mb4中文字段能插進(jìn)去但是查詢結(jié)果有可能變成問(wèn)號(hào)或者亂碼。穩(wěn)妥做法是建庫(kù)時(shí)指定CREATE DATABASE IF NOT EXISTS school_info DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;在數(shù)據(jù)庫(kù)初始化階段把這些底子打好后面啟動(dòng)項(xiàng)目的體驗(yàn)會(huì)順暢很多。3. 源碼運(yùn)行全流程從解壓到頁(yè)面出現(xiàn)的實(shí)操記錄3.1 后端啟動(dòng)正確姿勢(shì)拿到源碼后目錄通常分成兩大部分一個(gè)后端目錄一個(gè)前端目錄。優(yōu)先啟動(dòng)后端因?yàn)榍岸隧?yè)面登錄時(shí)依賴后端接口返回?cái)?shù)據(jù)。打開(kāi) IDEA選擇File - Open選中后端目錄等待 Maven 自動(dòng)解析依賴。首次加載時(shí)間取決于網(wǎng)絡(luò)速度和機(jī)器性能正常情況 3 到 10 分鐘。如果 IDEA 識(shí)別不了項(xiàng)目檢查是不是把 Maven 項(xiàng)目的 pom.xml 文件正確導(dǎo)入了注意別手滑選了“當(dāng)作普通文件夾打開(kāi)”。依賴加載完成后找到src/main/resources/application.yml重點(diǎn)改三塊內(nèi)容spring: datasource: url: jdbc:mysql://localhost:3306/school_info?useUnicodetruecharacterEncodingutf8serverTimezoneAsia/Shanghai username: root password: 你的數(shù)據(jù)庫(kù)密碼數(shù)據(jù)庫(kù)用戶名密碼一定要改成你本地 MySQL 的實(shí)際賬號(hào)。然后確認(rèn)數(shù)據(jù)庫(kù)是否已經(jīng)建好并導(dǎo)入 SQL。一般源碼目錄里會(huì)有一個(gè)sql/或db/文件夾里面放著.sql文件。用 Navicat、MySQL Workbench 或者命令行執(zhí)行mysql -u root -p school_info.sql或者進(jìn)入 MySQL 后執(zhí)行source命令導(dǎo)入。一切就緒后找到啟動(dòng)類類名通常帶Application后綴比如SchoolInfoApplication.java。右鍵運(yùn)行看到控制臺(tái)輸出Tomcat started on port(s): 8080后端就起來(lái)了。這里有一個(gè)實(shí)測(cè)的經(jīng)驗(yàn)IDEA 運(yùn)行時(shí)如果報(bào) Lombok 相關(guān)的錯(cuò)誤比如java: package lombok does not exist先確認(rèn)你有沒(méi)有安裝 Lombok 插件并且檢查Settings - Build, Execution, Deployment - Compiler - Annotation Processors是否勾選了Enable annotation processing。這個(gè)問(wèn)題對(duì)新手極其常見(jiàn)。3.2 前端啟動(dòng)正確姿勢(shì)前端目錄打開(kāi)后第一步同樣是看package.json的scripts字段確認(rèn)啟動(dòng)命令。Vue CLI 項(xiàng)目通常是npm run serveVite 項(xiàng)目通常也是類似寫(xiě)法。安裝依賴npm install這一步如果報(bào)錯(cuò)不要急著反復(fù)重試。先看報(bào)錯(cuò)日志的最后幾行定位是網(wǎng)絡(luò)問(wèn)題、node-sass 編譯問(wèn)題還是依賴版本沖突問(wèn)題。把 node_modules 目錄刪除換 Node 版本后再試往往比繼續(xù)在當(dāng)前環(huán)境下硬扛更有效。依賴裝完后啟動(dòng)npm run serve控制臺(tái)會(huì)顯示本地訪問(wèn)地址常見(jiàn)的是http://localhost:8080或者h(yuǎn)ttp://localhost:8081。瀏覽器打開(kāi)后能看到登錄頁(yè)面就算前端 OK。如果頁(yè)面打開(kāi)是空白的或者控制臺(tái)一堆報(bào)錯(cuò)大概率是依賴沒(méi)裝全或者 Node 版本不匹配。這里我必須提醒一個(gè)端口沖突的問(wèn)題。很多后端項(xiàng)目默認(rèn)端口是 8080前端 devServer 默認(rèn)也是 8080。如果兩個(gè)同時(shí)啟動(dòng)必然有一個(gè)起不來(lái)。解決辦法是改后端端口推薦在application.yml里加server: port: 9090或者改前端 devServer 端口Vue CLI 在vue.config.js中配置devServer.port。這類項(xiàng)目的常規(guī)做法是前端 8080后端 9090 或者 8081具體看你現(xiàn)有源碼的配置。3.3 前后端連通從登錄請(qǐng)求驗(yàn)證完整鏈路前后端都啟動(dòng)后打開(kāi)前端登錄頁(yè)輸入 SQL 腳本里預(yù)置的賬號(hào)密碼。常見(jiàn)默認(rèn)賬號(hào)是admin / 123456但也有的源碼用admin / admin最準(zhǔn)確的做法是去 SQL 文件里搜INSERT INTO sys_user看初始數(shù)據(jù)。點(diǎn)擊登錄觀察瀏覽器開(kāi)發(fā)者工具F12的 Network 面板請(qǐng)求狀態(tài) 200并且返回了 token 或者登錄成功標(biāo)識(shí)說(shuō)明全套鏈路已經(jīng)通了。請(qǐng)求 404說(shuō)明前端請(qǐng)求的接口路徑跟后端暴露的路徑不一致。檢查前端 API 封裝文件里的baseURL和后端控制器的RequestMapping。請(qǐng)求 500說(shuō)明后端代碼或者數(shù)據(jù)庫(kù)層面掛了切到后端控制臺(tái)看堆棧信息定位具體報(bào)錯(cuò)行。請(qǐng)求 CORS error說(shuō)明跨域配置沒(méi)生效需要檢查后端是否有跨域過(guò)濾器或者前端是否配置了代理轉(zhuǎn)發(fā)。這個(gè)排查順序很重要先看狀態(tài)碼再看請(qǐng)求路徑最后看后端日志一層層縮小范圍比瞎猜高效得多。這也是我做任何前后端聯(lián)調(diào)都堅(jiān)持的排查習(xí)慣。4. 核心業(yè)務(wù)實(shí)現(xiàn)解析登錄認(rèn)證、分頁(yè)查詢與數(shù)據(jù)規(guī)范4.1 登錄認(rèn)證與權(quán)限校驗(yàn)是怎么串起來(lái)的以 JWT 方案為例這類源碼的登錄流程一般是用戶在前端提交賬號(hào)密碼后端收到后先查sys_user表校驗(yàn)密碼是否正確。密碼匹配后后端生成一個(gè) JWT 字符串返回給前端。前端把 token 存進(jìn) localStorage 或者 sessionStorage之后每次發(fā)請(qǐng)求都在請(qǐng)求頭里帶上Authorization: Bearer token。后端有一個(gè)攔截器或者過(guò)濾器負(fù)責(zé)統(tǒng)一鑒權(quán)。它做的事很簡(jiǎn)單檢查請(qǐng)求路徑是否需要登錄如果需要就從 token 里解析用戶信息。解析成功就放行解析失敗直接返回 401 或者業(yè)務(wù)錯(cuò)誤碼。這樣一個(gè)閉環(huán)的好處是哪怕有人繞過(guò)前端頁(yè)面直接用 Postman 調(diào)接口沒(méi)有合法 token 也拿不到數(shù)據(jù)。前端這邊Vue 路由配合beforeEach導(dǎo)航守衛(wèi)做訪問(wèn)控制。進(jìn)入頁(yè)面前判斷有沒(méi)有 token沒(méi)有就重定向到登錄頁(yè)有 token 再根據(jù)角色字段判斷能不能進(jìn)對(duì)應(yīng)的管理菜單。管理員能看到用戶管理、教師管理、院系管理這些敏感功能普通學(xué)生登錄后只能看到自己的基本信息和公告這種菜單級(jí)別的權(quán)限控制是這類項(xiàng)目的標(biāo)配。4.2 列表分頁(yè)與條件搜索后臺(tái)管理系統(tǒng)的靈魂后臺(tái)管理系統(tǒng)百分之八十的操作都是看表格、查數(shù)據(jù)、改數(shù)據(jù)。分頁(yè)接口的設(shè)計(jì)自然就成了核心。后端接口一般接收這幾個(gè)參數(shù)pageNum當(dāng)前頁(yè)、pageSize每頁(yè)條數(shù)、keyword搜索關(guān)鍵字、departmentId之類的篩選條件。如果用 MyBatis-Plus分頁(yè)查詢可以簡(jiǎn)化為PageUser page new Page(pageNum, pageSize); LambdaQueryWrapperStudent wrapper new LambdaQueryWrapper(); wrapper.like(StringUtils.isNotBlank(keyword), Student::getName, keyword); PageStudent result studentMapper.selectPage(page, wrapper);返回給前端的 JSON 結(jié)構(gòu)通常是{ records: [{ id: 1, name: 張三, major: 計(jì)算機(jī)科學(xué)與技術(shù) }], total: 86, current: 1, size: 10 }前端拿到records渲染表格拿到total用來(lái)計(jì)算分頁(yè)組件的總頁(yè)數(shù)。搜索功能的實(shí)現(xiàn)也很直觀搜索框綁定的關(guān)鍵字變量在查詢按鈕點(diǎn)擊后拼進(jìn)請(qǐng)求參數(shù)后端用like或者concat實(shí)現(xiàn)模糊匹配。我見(jiàn)過(guò)很多新手在寫(xiě)分頁(yè)時(shí)后端只返回了當(dāng)前頁(yè)的數(shù)據(jù)沒(méi)返回total導(dǎo)致前端分頁(yè)組件永遠(yuǎn)只顯示一頁(yè)。這是很容易被忽略的前后端聯(lián)調(diào)細(xì)節(jié)如果你改項(xiàng)目時(shí)發(fā)現(xiàn)分頁(yè)數(shù)字不對(duì)先確認(rèn)接口返回結(jié)構(gòu)里有沒(méi)有total字段。4.3 統(tǒng)一返回結(jié)果與 axios 封裝能“直接跑”的關(guān)鍵原因?yàn)槭裁匆獜?qiáng)調(diào)統(tǒng)一響應(yīng)結(jié)構(gòu)因?yàn)榍昂蠖朔蛛x項(xiàng)目里前后端是兩撥人在不同時(shí)間開(kāi)發(fā)的如果沒(méi)有約定后端返回data、message、status三個(gè)字段前端又期待另一種字段名聯(lián)調(diào)時(shí)全是溝通成本。這類項(xiàng)目通用的做法是后端封裝一個(gè)Result類public class ResultT { private Integer code; private String msg; private T data; }所有控制器方法都返回Result.success(data)或Result.error(參數(shù)錯(cuò)誤)。前端 axios 請(qǐng)求封裝里也統(tǒng)一處理響應(yīng)res.code 200業(yè)務(wù)成功把res.data直接丟給頁(yè)面。res.code 401未登錄或 token 過(guò)期跳轉(zhuǎn)登錄頁(yè)。res.code 500后端異常彈出錯(cuò)誤提示。這樣做的好處是頁(yè)面組件不需要在每次請(qǐng)求時(shí)重復(fù)寫(xiě)錯(cuò)誤處理邏輯這也是源碼能夠“開(kāi)箱即用”的原因之一。因?yàn)楣羌芤呀?jīng)把所有網(wǎng)絡(luò)請(qǐng)求的公共邏輯都定好了。還有一個(gè)容易翻車的點(diǎn)跨域。開(kāi)發(fā)階段最常見(jiàn)的方案是 Vue 的 devServer 代理在vue.config.js里配置devServer: { proxy: { /api: { target: http://localhost:9090, changeOrigin: true } } }頁(yè)面里發(fā)的請(qǐng)求寫(xiě)/api/login經(jīng)過(guò)代理轉(zhuǎn)發(fā)到后端的http://localhost:9090/api/login。這種方式比后端配置 CORS 更簡(jiǎn)單也更貼近生產(chǎn)環(huán)境的部署方式。5. 踩坑實(shí)錄為什么到了你的電腦上還是跑不起來(lái)5.1 數(shù)據(jù)庫(kù)連接類問(wèn)題速查這一節(jié)必須寫(xiě)因?yàn)椤芭懿黄饋?lái)”的原因里數(shù)據(jù)庫(kù)相關(guān)的問(wèn)題能占一半以上。我把最常見(jiàn)的幾種情況整理成了下面的表報(bào)錯(cuò)信息大概率原因解決方法Cant connect to MySQL server (10061)MySQL 服務(wù)沒(méi)啟動(dòng)Windows 服務(wù)里啟動(dòng) MySQL或者命令行net start mysqlAccess denied for user rootlocalhost密碼錯(cuò)誤或賬號(hào)權(quán)限不足核對(duì)application.yml里的用戶名密碼Unknown database xxx庫(kù)名沒(méi)對(duì)上檢查建庫(kù)腳本和連接串里的庫(kù)名是否一致Public Key Retrieval is not allowedMySQL 8.0 加密規(guī)則問(wèn)題連接串加allowPublicKeyRetrievaltrueTable xxx doesnt existSQL 腳本沒(méi)導(dǎo)入成功重新完整導(dǎo)入 SQL確認(rèn)沒(méi)有中途報(bào)錯(cuò)The server time zone value is unrecognized連接串缺時(shí)區(qū)參數(shù)URL 加serverTimezoneAsia/Shanghai5.2 前端依賴安裝與啟動(dòng)問(wèn)題前端部分的坑比后端更隱蔽因?yàn)?Node.js 生態(tài)的版本兼容性遠(yuǎn)比 Java 世界復(fù)雜。我舉幾個(gè)實(shí)際遇到過(guò)的例子npm install 裝到一半卡死。這不是項(xiàng)目問(wèn)題絕大多數(shù)是網(wǎng)絡(luò)問(wèn)題。先切淘寶鏡像再試一次如果還不行就把node_modules整個(gè)刪除刪掉package-lock.json如果有重新 install。如果你的項(xiàng)目里有node-sass除了換 Node 版本幾乎沒(méi)有更治本的方案畢竟那個(gè)包編譯失敗是真的難受。npm run serve 報(bào)Failed to load tsconfig vue/tsconfig/tsconfig.web.json。這類錯(cuò)誤常見(jiàn)于 Vue3 TypeScript 模板項(xiàng)目。原因是項(xiàng)目引用了vue/tsconfig這個(gè)包但安裝依賴時(shí)不完整或者項(xiàng)目移動(dòng)后目錄結(jié)構(gòu)變了。解決方式是重新完整安裝依賴確認(rèn)vue/tsconfig出現(xiàn)在package.json的devDependencies中而不是只存在某個(gè)中間態(tài)。如果依然加載不到檢查tsconfig里extends的路徑是否和 node_modules 中的實(shí)際路徑一致。端口被占用。啟動(dòng)前端時(shí)提示Port 8080 was already in use。在命令行執(zhí)行netstat -ano | findstr 8080找到占用進(jìn)程的 PID再到任務(wù)管理器結(jié)束它。更省事的方式是直接改端口不過(guò)改了前端端口就要確認(rèn)代理配置也跟著改否則頁(yè)面打開(kāi)了接口也訪問(wèn)不到。5.3 后端啟動(dòng)失敗從“綠色按鈕”到“紅色報(bào)錯(cuò)”IDEA 里點(diǎn)綠色運(yùn)行按鈕三秒鐘后紅色報(bào)錯(cuò)這種體驗(yàn)很打擊人。后端啟動(dòng)失敗的根因其實(shí)就幾類。Maven 依賴沒(méi)下載完。觀察 IDEA 右下角有沒(méi)有進(jìn)度條或者左側(cè) Maven 面板里有沒(méi)有紅色波浪線的依賴。如果是因?yàn)榫W(wǎng)絡(luò)問(wèn)題沒(méi)拉完去settings.xml確認(rèn)鏡像配好了然后執(zhí)行mvn clean install等 BUILD SUCCESS 再啟動(dòng)。Lombok 處理不了。前面提過(guò)java: package lombok does not exist在 IDEA 2020 之后的版本里經(jīng)常出現(xiàn)原因就是注釋處理器沒(méi)開(kāi)啟。這個(gè)配置在Settings - Build, Execution, Deployment - Compiler - Annotation Processors勾選后可以順便執(zhí)行一次Build - Rebuild Project。Java 版本不匹配。這個(gè)我單獨(dú)強(qiáng)調(diào)一下因?yàn)椤癝pringBoot 版本太高”和“JDK 版本太高”是我也反復(fù)踩過(guò)的坑。SpringBoot 3.x 用 JDK 17如果你本地只有 JDK 8啟動(dòng)時(shí)一定報(bào)錯(cuò)反過(guò)來(lái)老項(xiàng)目用 JDK 8 但裝了高版本 JDK 也會(huì)報(bào)錯(cuò)??磮?bào)錯(cuò)信息最前面的幾行通常就會(huì)提示版本問(wèn)題別一上來(lái)就懷疑是代碼邏輯。5.4 “可直接運(yùn)行”的真正含義標(biāo)題里寫(xiě)著“可直接運(yùn)行”但說(shuō)句實(shí)在話任何源碼都省不了環(huán)境準(zhǔn)備這一步。SQL 要導(dǎo)入連接配置要改依賴要下載前后端要分別啟動(dòng)這些流程缺一不可?!翱芍苯舆\(yùn)行”真正省掉的是“從零開(kāi)始寫(xiě)代碼”的工作量而不是“準(zhǔn)備運(yùn)行環(huán)境”的工作量。所以拿到項(xiàng)目以后正確的順序永遠(yuǎn)是先讀一遍 README 文件然后按順序執(zhí)行建庫(kù)導(dǎo)數(shù)據(jù) - 改配置 - 啟動(dòng)后端 - 啟動(dòng)前端。很多人在第一步跳過(guò)了 README直接啟動(dòng)然后被各種報(bào)錯(cuò)打回原形回頭又來(lái)問(wèn)為什么跑不通。經(jīng)驗(yàn)之談是如果源碼目錄里都沒(méi)有 README先把項(xiàng)目結(jié)構(gòu)摸一遍??辞迥男┦呛蠖四夸?、哪些是前端目錄、SQL 文件在哪再動(dòng)手。這個(gè)過(guò)程花不了十分鐘但能幫你提前避開(kāi)大半問(wèn)題。6. 二次開(kāi)發(fā)從“能跑”到“能答辯、能寫(xiě)進(jìn)簡(jiǎn)歷”6.1 低成本高回報(bào)的功能增強(qiáng)方向很多同學(xué)拿到這種源碼跑通以后任務(wù)就結(jié)束了。但實(shí)際上一個(gè)跑通的基礎(chǔ)模板只是合格線要讓項(xiàng)目在答辯或者簡(jiǎn)歷中有亮點(diǎn)有幾個(gè)改動(dòng)方向值得做第一個(gè)是給登錄接口加驗(yàn)證碼。實(shí)現(xiàn)一個(gè)簡(jiǎn)單的圖片驗(yàn)證碼在 SpringBoot 里并不難用 Hutool 工具類或者 Google 的 Kaptcha 都能快速集成。這個(gè)功能看起來(lái)小但答辯時(shí)屬于“安全設(shè)計(jì)”的亮點(diǎn)而且面試時(shí)能講出一套完整的驗(yàn)證碼校驗(yàn)流程。第二個(gè)是操作日志。做一個(gè)sys_operation_log表用 AOP 切面記錄誰(shuí)在什么時(shí)間做了什么操作比如“管理員 admin 修改了學(xué)生張三的基本信息”。這個(gè)功能幾乎所有后臺(tái)系統(tǒng)都需要代碼量也不大但能體現(xiàn)出你對(duì)系統(tǒng)可維護(hù)性的思考。第三個(gè)是 Excel 導(dǎo)入導(dǎo)出。對(duì)管理系統(tǒng)來(lái)說(shuō)批量導(dǎo)入學(xué)生信息、導(dǎo)出成績(jī)單是非常常見(jiàn)的需求用 EasyExcel 庫(kù)封裝一個(gè)導(dǎo)入導(dǎo)出工具類頁(yè)面放兩個(gè)按鈕。這一塊只要實(shí)現(xiàn)過(guò)一遍以后簡(jiǎn)歷上寫(xiě)“具備 Excel 導(dǎo)入導(dǎo)出開(kāi)發(fā)經(jīng)驗(yàn)”都不心虛。第四個(gè)是密碼強(qiáng)度與個(gè)人信息修改。默認(rèn)項(xiàng)目里用戶中心往往只有一個(gè)修改密碼入口你可以擴(kuò)展成完善個(gè)人資料、更換頭像等功能既能增加頁(yè)面數(shù)量也能讓模塊更完整。6.2 從本地運(yùn)行到有條理地交付把項(xiàng)目跑起來(lái)只是第一步真正拉開(kāi)差距的是你有沒(méi)有把它整理成一份像樣的交付物。我見(jiàn)過(guò)太多人的畢業(yè)設(shè)計(jì)就是幾個(gè)文件夾堆在一起沒(méi)有 README沒(méi)有數(shù)據(jù)庫(kù)腳本說(shuō)明沒(méi)有端口說(shuō)明答辯老師打開(kāi)電腦看的時(shí)候一臉茫然。建議拿到源碼后按這個(gè)思路重新整理一遍新建一個(gè)項(xiàng)目總目錄里面分backend、frontend、sql、docs四個(gè)子目錄README 里寫(xiě)清楚項(xiàng)目簡(jiǎn)介、技術(shù)棧、環(huán)境要求、啟動(dòng)步驟、默認(rèn)賬號(hào)、接口說(shuō)明。有 Git 的話順手提交到代碼倉(cāng)庫(kù)每次改動(dòng)都有歷史記錄。如果想把項(xiàng)目部署到遠(yuǎn)程服務(wù)器上展示可以用 Docker 把前后端分別打成鏡像后端容器和前端容器通過(guò)端口映射跑起來(lái)。注意生產(chǎn)環(huán)境里前端一般把打包后的文件交給 Nginx 托管后端接口地址通過(guò) Nginx 的反向代理轉(zhuǎn)發(fā)跨域問(wèn)題也一并解決。這一步做完你的項(xiàng)目就完成了從“課設(shè)作品”到“完整系統(tǒng)”的升級(jí)。7. 寫(xiě)在最后的個(gè)人體會(huì)這類學(xué)院個(gè)人信息管理系統(tǒng)的源碼我已經(jīng)接觸過(guò)很多份自己也帶過(guò)不少同學(xué)跑通、改造。我最深的感受是先讓它跑起來(lái)再讀懂它最后才談改造。很多同學(xué)第一步就卡在環(huán)境配置上然后開(kāi)始懷疑代碼有問(wèn)題其實(shí)大部分時(shí)候代碼沒(méi)毛病是你的環(huán)境跟它不對(duì)付。所以拿到項(xiàng)目后不要著急改業(yè)務(wù)邏輯先把數(shù)據(jù)庫(kù)導(dǎo)進(jìn)去把后端啟動(dòng)起來(lái)再把前端啟動(dòng)起來(lái)等登錄成功的那一刻你就擁有了一個(gè)可以自由折騰的基地。在這個(gè)基礎(chǔ)上再加功能、再調(diào)整樣式心里都有底。如果你準(zhǔn)備拿這個(gè)項(xiàng)目做畢設(shè)建議多花點(diǎn)時(shí)間把登錄鑒權(quán)和分頁(yè)查詢這兩條鏈路徹底看明白因?yàn)榇疝q的時(shí)候老師最愛(ài)問(wèn)的就是這兩塊。最后祝所有趕工期的朋友都能順利跑通、順利答辯。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
久久国产乱子伦精品免费女,网站| 人妻81p| 九九精品美女高溯喷水| 性爱Av免费| 无码九九九九| 精品无吗久久| 亚洲高清在线| 国产一区二区三区影片| 三级日本一区二区三区| 久久久成人免费av电影| 人妻天天爽夜夜爽精品2| 秋霞一级视频在线观看免费| 精品成人无码| 国产9区| 快播久久人人aV| 天天日天天舔东京热| 色婷婷五月综合激情中文字幕| 亚洲精品一区二区精品| 一个色导综合| 你懂的在线观看区国产| 亚洲色图A| 精品人妻一区二区蜜桃视频 | 97在线公开视频| 色大香蕉97N| 欧美少妇大量自拍视频在线观看| 丁香六月综合激情| 99色在线视频| 日韩啪啪啪啪啪| 嫖老熟女A片一二三区| 伊人一区二区在线播放| 操www| 亚洲中字幕日本一区二区三区 | 超碰成人免费| 爱做久久久久久| 天天搞在线综合网| 欧美人妻一区| 国产一级黄色片在线观看| 国产高清精品一区二区三区毛片| 东京热视频网| 福利社区午夜一区二区| 密乳AV免费观看| 天天看精品动漫视频一区| 东北女人操逼| 眼镜人妻101.com| 丁香婷婷五月| 久久久亚洲Av| 女人被添高潮免费视频| 99精品在线观看| 婷婷伊人綜合中文字幕小说| 亚洲淫色网中文| 久久久性爱视频| 午夜欧美神马久久久久| 午夜毛片高清免费不卡| 成人一二三区| 91另类| 国产又黄又粗又猛大片| 青青久久手机线视频| 国产一区二区精品久久99| 艹比视频国产精品| 无码又爽又硬又激情免费视频| 91丨九色丨东北熟女| 日本人体九九九九九九| 亚洲A色| 少妇与黑人高潮在线| 久久超碰98| 亚洲激情深爱文学小说网站| 手机在线中文字幕国产 | 欧美91色| yw尤物av无码点击进入麻豆| japan日本高清乱xxxx| 大香蕉综合| 嗯啊不要在线| 性高潮久久久| 亚洲欧美日韩制服另类| 无码抄逼网| 97人肏| 四虎AV影视国产精品亚洲精品| 久久久久ab| 天天爱综合网| 性爱网站一区二区| 久久色人体 | 国产精品一区二区手机看片| 婷婷久久久| 毛片17S| 亚洲资源网| 91欧美情色| 免费一二区| 中文字幕狠狠玩| 亚洲欧美大香蕉| 欧美中文狠| 欧洲色综合| 操逼不卡中文字幕| 99青青草国产视频| 777超碰| 97欧美性爱| 91 国产丝袜在线放观看| 秋霞免费无码视频日韩A片| 日韩一级片在线看| 一本一道久久综合久久| 在线强奷到舒服的无码视频 | 蜜臀久久久99久久久久 | 日本人妻伦在线中文字幕| 97碰在线视频| 97超色| 久久在线观看免费视频| 婷色五月天| 免费97视频| 在线播放成人高清免费视频| 欧美熟女妇同| 老司机射| 超碰97综合网| 九月丁香综合网| 99只有精品| 自拍内地三级在线观看| 九一综合精品视品av| 在线播放欧洲免费av| 日欧操屄| 欧美激情久| 再深点灬舒服灬太大了添视频| 东京太热久久久| 青草地一本线一区二区三区| 一区在线观看中文字幕| 丰满熟女人妻一区二区三五十一路| 91亚洲色人| 亚洲AO在线| 狠狠操狠狠爱| 九九九免费视频| 国产四虎在线| 在线观看无码三级少妇| 欧美第二页午夜| 精品国产无码中文| 亚洲精品蜜桃久久久久久久| 欧美aaaaaaa| 九九九九欧美| 夜色AV无码手机在线影院| 丝袜狠狠草尤物 91| 婷婷影院入口| 九九九九九九九九九国产精品 | 天天日天天操VV| 日韩精品国产一区二区| 日韩 欧美 国产 麻豆| 黄片无码在线制服| 9久久久久久| 亚洲情色五月天| 欧美日韩插逼视频| 性高潮久久久| 欧美 亚洲 大香| 欧美大香蕉久| 欧美加勒比| 搞中出视频在线观看| 日韩亚洲中文有码视频| 超碰4A| 蜜臀久久99精品久久综合| 热99这里有精品综合久久| 国产精品 午夜福利| 嫩草影院在线观看精品 | 亚洲操人| 精品无码秘 人妻一区二区| 亚洲免费97免费| 国语av最新自产拍在线观看| 久久国产成人精品国产成人亚洲| 欧美激情久| 亚洲五月婷| 国产日韩欧美操逼视频| 人妻第一页| 日本不卡三级网在线播放| 成人日韩3| 三上悠亚在线毛片91| 久久免费精品96| www.狠狠| 思思热影视| 国产深喉视频一区二区| 精品白丝一区| 五月天久久婷婷亚洲| 丁香五月性| 中文字幕一区二区免费在线| 久久久中文| 人人做天天爱| 欧美大波激情xxxx| 97精品| 日本不卡免费二区| 亚洲熟女乱综合一区二区三区| 在线另类| 欧亚性爱啪啪| 樱花蜜乳av| 青青草好吊色| 超碰97极品9| 麻豆AV96熟妇人妻| 精品97精品97| 国产丝袜美腿美女麻豆| 第45页一区二区| 五月丁香综合啪啪| 东亚亚洲无码高清| 日韩乱插| 国产精品久久久久久久黄无码 | www.夜夜操| 亞洲久久直播| 国产精品美女久久久久AⅤ国产馆| 国产熟女一区二区| 日韩精品人妻中文字幕不卡乱码| 97超碰国产亚洲精品| av午夜玫瑰| 精品免费一区二区三区在线亚洲人成| 97人人模人人爽人人| 国产欧美岛国精品一区| 成 人片 黄色大片| 黄人人操人人操| 97精品国产| 亚州欧美在线| 东北少妇高潮zzzz| 日韩传媒在线| 67194无码不卡| 蜜臀久久99精品久久久老,,| 五月丁香六月激情综合| 尹人大香蕉视频在线| www.久久久久| 国内91熟女人妻丝袜天天精品视频在线| 一区二区三区四区免费视频| 国产成人精品日本视频| 91爆操视频| 伊人激情五月天一区二区| 国产A v无码专区| 情趣丝袜无码操逼视频| 99久久婷婷丁香| 99久久久无码精品国产人| 欧美成年人性爱视频免费观看| 美女被啪到深处抽搐视频| 无套后入双马尾| 久久精品超碰| 国产自制av蜜乳| 操操操五月天婷婷丁香影院| 人妻献身系列第54部| 在线人成亚洲视频免费观看| 中国少妇XXXX做受| 欧美婷婷五月天| 日韩人妻大香蕉| 久久久久久久九九九九九九| AV在线资源| 色网综合网| 天天干人妻视频| 91老熟妇| 婷婷视频在线免费观看| 日本免费不卡二区| 麻豆区久久久久亚| 加勒比综合| 国产日韩无码一区二区三区久久区| 在线岛国新天堂8| 五月综合婷婷久久网站| 欧州色图区| 国产丰满少妇久久久精品影院| 日韩美女高潮喷水视频| 亚欧洲日韩国产精品| 天天澡天天爽日日AV| 人人操肉肉| 91 亚洲 欧美 日韩 国产 综合| 丁香婷婷大香蕉| 爆乳免费黄网站| 日韩青久久| 狠狠操狠狠操操| 人人做人人妻人人夜视频| 69超碰综合| 一区中文字幕二区日韩| 久草这里只有精品| 嫩草一区二区在线观看| 国产精品天美传媒| 亚洲狠狠入| 6080YYY午夜理论片在线观看| 99热超碰在线| 自拍第一页| av网站免费线看| 99热官网| 亚洲综合色图欧美| 久草网站免费在线观看| 亚洲另类欧美精品| 无码9区| 亚洲女人毛茸茸91| 免费在线观看国内色片网站网址| 五十路熟女工口| 色综合一区二区三区| 亚洲 一区二区 自拍| 91逼逼女人91| 91天天综合网| 婷婷激情五月| 少妇激情一区二区三区视频| 被体育老师抱着c到高潮| 操死我了嗯嗯嗯| 亚洲无码视频免费在线观看网址!| 久久精品国产亚洲AV片多多 | 一个人在线看的黄色电影网站| 精品一二三区四视频| 97超碰公开| 99热这里都是精品| 亚洲五月天激情| 久草老司机| 无套内射人妻在线播放| 2017大香蕉国产精品久久| 91丨国产丨白浆秘 洗澡动漫| 亚洲精品国产精品乱码不99| 久欲AV| 国产成人免费观看在线视频| 欧美丝袜美女电影一二三四区| 超碰在线欧美性爱激情| 欧美熟女妇同| av在线观看不卡网站| 久久只有精品一区二区三区| 日本人妻丰满熟妇久久久久久| 亚洲图片 91| 男人的天堂va在线| 熟妇高潮一区二区免费视频| 久久精品午夜国产亚洲AV无码| 免費人妻夜夜爽天天爽爽一区| 蜜臀久久99精品久久久久久-DVD原版全| 久色网| 伊人91| 色噜噜国产在线| 久久精品人人做人人看| 亚洲国产中文字幕| 91 手机在线播放 绯色| 欧美一级黄色免费专区| 亚州人妻| 99爱爱| 淫荡网址| 久久草视频污视频| 91N欧美| av爱爱爱| 亚洲黄色AV电影| 爱射综合| 人人做人人妻人人夜视频| 麻豆色99999| 亚洲五月丁香花狠狠干一区二区三区 | 天天日日本| 伊人久久综合精品欧美| 日本免费二区三区| 怡红院怡春院| 国产免费久久久久| 国产91影院| 国产亚洲精品美女| 男人天堂站| 亚洲91在线播放影院| asc国产精品| 97综合在线观看| 干日本人少妇午夜寂寞影院| 五月情色天| 大香蕉宅男伊人| 99色色网| 国产99久久99热这里只有精品15 | 日韩精品免费高清视频在线| 中文有码9| 亚洲国产剧情少妇激情| av天堂影视中文在字幕在线中文| 大香蕉专区| 天天综合网日韩| 日本不卡一区二区三区| 日韩99神马视频播放| 久久精品色欧美aⅴ一区二区| 少妇久久久久久| 午夜综合在线| 二对二中文字幕。| 青青青操| 九九Av| 操逼逼中文字幕| 天天影视色香欲综合网小说| 国产精品一区二区三区免费视频| 亚洲精品久久一区二区三区蜜桃臀| 日本特黄f c2| 婷婷丁香五月综合| 粉嫩绯色AV一区二区在线| 91被操| 国产精品网址| 精品国产乱子伦一区二区三区,精品一| 亚洲永久永久永久永久一级一级一级精品 | 国产在线激情视频| av网站免费看| 日韩啊V| 欧美亚洲综合高清在线| 久久精品导航| 中文字幕精品码亚洲| 亚洲乱熟女一区二区| 牛牛久久国产精品视频一二三| 色妹子A V| 9久综合网| 大香樵伊人网| 亚洲国产精品久久久久婷婷青年| 精品久久在线区一区| 97福利视频| 日韩性爱网址| 亚洲黑丝在线| 中文字暮97| 欧美性猛交美女自慰91| 午夜天天碰综合视频| 亚码激情| 欧美天堂日韩三级国产传媒| 青青操在线亚洲视频观看欧美在线 | 精品人妻视频入口| 日韩一级欧美一级国产一级台湾| 3PAV乱伦视频| 成人a大片在线观看| 91高清无码下载| 福利在线观看一区二区| 激情九月婷婷| 欧美激情总合网| 99国产在线绯色一区| 成人女人国产| 天天情欲宗合网| 欧美淫乱视频| 久久午夜色播影院免费高清| 色欲久久久久综合网| 在线岛| 最新国产精品久久精品| 91亚洲精品青草| 日韩精品9999| 天天影视91看看| 一级乱伦网站| 乱伦日本色图AⅤ| 99色在线视频| 91欧美另类| 亚洲国产福利视频| 久9re热视频这里只有精品| 国产强奸AV在线| 特级丰满少妇一级AAAA爱毛片| 激情综合婷婷| 国产精品视频| 成人怡红院| 日本操逼二区| 动漫片子网站3黄| 国产人妻精品一区二区三区秋霞 | 91丨熟女丨丰满熟女| 九九aV| 熟妇一区二区三区| 亚春色色| 欧美日韩免费性爱| 神马精品视频| 四虎影视 亚洲无码| 97天天综合| 国产小视频91| 欧洲亚洲人妻无码中字久久三区四区| 一区二区播放| 国产日韩在线播放av| 欧美性爱五月天| 91久久国外网| 久久精品福利影院| 久久侵犯人妻爽爽爽| 97在线欧| 美国一区二区三区视频| 国模限制级电影| 天天干1区2区在线| 国产亚洲美日韩Aⅴ中文字幕无码成人| 丁香五月综合| 极品出轨视频网站| 日韩欧美俄罗斯A片| 韩国轻伦国内自拍一区| 中文字幕乱亚洲美女精品一区| 大香蕉免费乱伦视频| 欧美色66| 中文字幕黄片在线| 91在线视频免费中出| 91综合无码| 首页中文字幕中文字幕免费| 走光一区92下载| 日本色色视频网站| 欧美亚洲影视| 欧美色www亚洲国产阿娇要播| AV电影在线播放| 亚洲极品| 91九色在线| 久久禁| 日本在线不卡v二区| 日日夜夜模| 激情网色| 久草线上视频免费看| 国产大学生口爆吞精合集| 精品无码一二三四区| 久久久国产av美女私房| 国产传媒美日韩av| 99在线免费公开视频| 国产青视频| 91色人妻| 久久人妻无码毛片A片麻豆| 亚洲伊人a线观看视频| 97超碰亚洲| 日韩中文字幕精品一区在线| 9长久久精品| 日本午夜操逼| 亚洲久久天堂| 日本三级久| 人人操人人摸人人骑| 亚洲免费精品一区| 性爱视频无打码在线观看| 欧美 牲| 色一色综合网| 久久亚洲AV无码白度| 欧美在线色图| 国产Aα| 熟女熟妇伦久久影院毛片一区二区| 全球成人中文在线| 亚洲成人ab| 色老汉色| 亚洲色图欧美视频| 欧美亚洲小说| 久神马| www.色五月| 国产精品懂色tv影视免费观看| 青青操少妇| 蜜乳性色无码专日粉嫩骚逼AV| 欧美色九九| 亚洲妇色| 日欧操屄视频| 免费福利视频中文字幕| 97操B| 五月天色图| 国产一区二区在线电影| 久久夜夜| 男人天堂导航| 91骚妇| 欧美一级色| 久久久99免费| 蜜臀99久| 秋霞福利网| 国产精品一区二区三区在线密挑| 超碰97资源中文字幕| 91搞逼视频| 久久粉色| 我爱搞逼综合网| 亚洲人成色9999精品久久| www.91理论| 人妻三级在线中文字幕| 91精品在线播放| 综合网欧| 人妻久热在线| 大胆91| 日韩人妻一区二区精品| 精品亚洲一区在线观看| 啊啊啊啊好多水| 91女优在线观看 | 1204金沙人妻懂旧版免费| 人人爱操| 欧美精品日韩一区二区| 强奸乱伦麻豆| 琪琪精品免费一区二区三区| 秋霞午夜成人福利片片| 亚洲高清91| 欧美后入式| 操淫穴亚洲五月丁香 | 亚洲免费97免费| 久草精品热视| 欧美淫穴| 乱日视频| 区一在线观看| 嗯啊啊啊轻点视频 | 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 五十路人妻在线| 亚洲区限制级| 亚洲男人天堂2016| 成人熟女区| 精品美女在线视频| 中文字幕少妇色 | 99999久久精| 人伦四五区| 天堂av最新电影网| 大色网久久| 青青草综合在线| 久久中文字幕人妻熟av女蜜柚| 97超级色碰碰| 国产97在线播放| 久久久久久久久女黄| av橘色网站| 久久久性爱| 亚洲情色视频| 私人尤物在线精品不卡| 激情黄色片在线观看| 日韩AV无码网站| 天天懆天天日| 黄色av片三级三级三级免费看| 久久精品国产亚洲AV片多多| 久久精品色欧美aⅴ一区二区| 色爱国产| 99超碰色| 久久超碰大香蕉| 学生妹天天看| 亚州性色| 日韩熟女操逼| 殴美大黄片| 亚洲天堂区| 嗯嗯啊啊啊好舒服| 一区二区三区色综合| 大香蕉在线SuP| 美女啊啊啊啊啊啊| 一级岛国大片| 十八禁啪啦拍视频无遮挡| 韩日精品四区| 9999亚洲电影| 亚洲欧美91| 美日韩男女操屄视频| 国产AV久久野战精品| 亚洲综合另类| 91色伦综合| 国产丝袜啪啪| 中文字幕乱在线伦视频中文字幕乱码在线 | 六月丁丁香| 天天综合网91入口| 久久久精品,3| 高潮毛片无遮挡高清免费| www.超碰在线| 超碰综合色| 欧亚日韩中文在线| 欧美劲爆视频一区二区| 四虎影视在线| 亚洲欧美综合网 | 啊啊啊啊在线播放| 精品人妻免费观看| 这里都是精品在线观看| 久久久不卡区一区二区三区久久久| 国产熟码AV| 久久受www免费人成| 天天天天干| 中出后入| 亚洲?V无码专区在线电影| 丁香九月激情| 91 国产丝袜在线播放-百度| 亚洲āv网址在线观看| 五月婷在线| 蜜桃丰满熟妇av无码区不卡| 亚洲无码精品AV久久久| 天天日少妇逼AV| 久久人妻一区二区三区高清| 亚洲图片色图欧美另类| 丝袜制服字幕在线| 久久久久久久91| 色综合色欲色综合色综合色综合| 乱久久久| 青椒国产97在线熟女| 亚洲少妇诱惑| 欧美国产精品久久九九| 久久精品小视频| 澳门色噜噜色噜噜色噜噜色噜噜色噜噜| 久久久久久久亚洲Av无码| 物尤视频一区二区| 影音先锋日本一区二区| 欧美色图片91| 亚洲国产精品成人综合| 校园春色欧美色图| 香蕉国产精品麻豆亚洲欧美日韩| 青青操青娱乐| 好吊色青靑草| 久久久久成人蜜桃精品| 高清孕妇孕交 交| 婷婷午夜| 美女久久久久久久久久久| 99热在线播放| 九九亚洲| 中美日韩毛片| 都市久久精品激情亚洲| 久久久性爱视频| 琪琪精品免费一区二区三区 | 操啊国产| 亚州综合色图| 色综合av男人天堂| 久久精品无码熟妇一区二区三区视频导航| 国产人妻天天干精品| 蜜桃午夜视频一区二区| 婷婷综合网站| 国产精品久久久久久久久久久久久久吹| 99操逼| 99999久久精| 人妻啊啊人妻啊| AV乱伦国产| 国产盗摄美女如厕大神作品在线观看| 99久国产精品午夜性色福利| 久日综合网| 综合色99| 立川理惠被中出无码| 综合天天网| 国产精品99久久久www| 97中文热色| 超碰在线974| 丝袜剧情| 99re免费| 亚洲黄色网址| 色色丁香| 男人的天堂午夜av| 大香蕉日韩欧美| 日本有码影片下载| 国产熟女完整版中字 | 色色亚洲| 男女激烈网站最新| 大色网久久| 亚洲男人天堂网久久| 91艹B视频| 欧美精品97| 亚州欧美总和| 亚洲精品819| 欧美人妻久久精品二区三区| 美女啊啊啊啊啊啊| 天天舔天天日天天射| 操91| 上海一级黄片| 精品免费视频国产一区| 日产成人久久| 久久综合日韩亚洲欧美| 久久这里只精品99re66图| 乱伦一二三| 久久久青青草| 亚洲日韩少妇一道本视频| 国模一区二区三区| 国内毛片国产专区二| 天天影视色香欲综合网小说| 熟人人妻少妇精品久久| 亚洲限制级| 999国产精品999久久久久久| 啊啊啊啊啊啊好湿好爽视频| 99视频内射三四| 91丨豆花丨熟女| av网站免费看| 欧美写真视频一区| 女上位精品在线| 欧美日韩婷婷中文| 日韩一999精品| 欧美综合自拍成人自拍第二十页| 无码国产精品久久久久| 天天操人人操狠狠插| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 亚洲一区二区三区春色| 91热| 久操电影网| 大香蕉92| 久久精品中文字幕女同| 超碰综合色| 99啪啪| 亚洲天堂另类小说男人| 国产人妻精品久久久一区二区三区 | 四虎午夜影院| 亚洲欧美日韩偷拍色图| 天天日天天看| 欧美92| 凌辱美少妇久久aV| 91精品人妻一品二品三品| 精品人妻一区二区三区蜜桃视频| 韩日自拍| 亚洲欧美天| www.久久超碰| 四虎av在线| 国产激情在线| 超碰99re| 91性色| 26uuu最新| 99婷婷一区二区| 天天射天天操天天干天天吃2018| 亚洲伊人久久综合97| 东北毛片| 国产AAAAAABBBBB| www熟女乱伦com| 91大神精品长腿在线观看网站| 国产精品999aaa| 无遮挡又黄又刺激的视频| 日韩日本欧美在线观看| .精品人妻一区二区三| 成人影院永久免费观看网址| A 在线网址| 久久高清欧美国产| 啊灬啊灬啊灬好深灬快高潮了动漫-国产字幕国产在线观看-B049AV | 天操天操夜操夜月操月年年操操| 亚州熟妇精品| 色原狠狠天天天| 精品69网| 性爱网站一区二区| 国产精品无码论坛| 色99色| 免费av在线播放二区| 久久草草欧美精品| 精品无码秘 人妻一区二区| 女人18精品一区二区三区| 大但人体久久久久| 久热这里| 欧美性爱第1 页| 秋霞成人做爱| 国产免费一区在线观看| 女人的久久久| 亚洲 另类 丝袜 自拍 动漫| 久久人妻一区二区三区高清| 97Ai亚洲| 精品成人亚洲午夜电影| 国产综合操逼高清| 黄页18禁| 二三四区精品| 酒色综合网| 美女午夜福利免费视频| 五月婷婷六月激情| 婷婷香网站| 一本久道久久综合狠狠爱一密臀精 | 天天插夜夜爽| 久久久久女教师免费一区 | 综合激情婷婷| 九九成人精品| 97超碰超| 亚洲 国产 精品一区| 男人天堂2019亚洲| 免费超碰97久久| 一起草三级AV电影在线观看 | 福利社区午夜一区二区| 99精品视频在线观看| 91久久国产综合精品| 神马麻豆福利院| 一级特级aaaa毛片免费观看| 欧美78p| 日1区2区3区2020| xxxx网站亚洲精品| 精品无码一区二区| 免费视频观看60秒| 口爆吞精在线观看| 亚洲人妻熟妇三十三区| 97超碰色色| 久久亚洲婷婷| 午夜精品久久久99热蜜桃的功能特点| 无码久久亚洲高清,| 人妻丝袜无 码视频专区| 熟女一区二区三区四区| 琪琪精品免费一区二区三区| 青青草在线成人视频| 撸无码不卡免费视频| 国产精品一区二区三区,亚洲综合| 婷婷伊人一区| 亚洲欧美色图片| 99热精品在线| 久久成人东京热人妻| 国产精品色片一区二区| 日韩精品电影| 亚洲好看强奸乱伦| 69视频福利导航| 九九综合九九综合| 天天摸天天插天天日| 天天射夜夜骑| 玖玖视频在线资源一区二区三区| 欧美色91| 亚洲色婷婷| 99999久久精| 日本色婷婷| 九九热三级片| 日本超碰在线国产一区| 久久激情婷婷| 国产日本熟女顶级一区二区三区视频| 91精品国产一区三一| 蜜臀少妇一区二区| 性天堂| 爱欲AV| 亚洲另类小说卡通动漫| 天天看片麻豆| yellow网站免费观看日韩高清无码| 欧美少妇高潮久久91| 欧美成人AⅤ大片在线观看| 人人爽人人精品乱人伦AV| 乱论91| 啊啊在线| 色av中文字| 强奸乱伦AV一天堂网| 国产欧美日韩臀 | 亚洲精品不卡一二三区| 黄片aaaaa一区| 97网站在线观看| 亚州色图第三区| 蜜臀一区二区三区在线| 97国产亚洲中文在线| 欧美精品一区二区少妇免费A片| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 九九久久一区二区三区| 国产91av在线播放| 九七人妻在线| 亚洲va综合va国产va中文| 免费AV中文网在线观看| 91日产欧美| 另类专区在线观看| 2021国产成人精品久久| 欧美情色贴图| 亚洲色综合| 欧美日韩国产一区二区小黄片大全| 欧美乱妇狂野欧美在线视频| 青草av在线| 日本国产欧美一区三区二区| 亚精品无码毛片一区二区三区| 欧美性生活综合| 青娱乐国产剧情av一区| 欧美色日| 蜜臀av在线播放一区二区三区| 欧美大香蕉久| 伊人欧美大香蕉视频| 91扒丝袜综合在线| 欧美性爱伊人| 天天看天天日| 久久精品女同亚洲女同13| 九九天堂| 性做久久久久久免费观看软件| 成人五月天丁香激情综合| 人妻大香蕉| 久久亚洲不卡一区二区三区| 丁香五月性| 久操com| 亚洲图片另类| 五月天九九日国产精品一区二区三区| 国产精品制服丝袜中文字幕日韩一区二区三区 | 国产av强奸美女| 97干在线视频| 蜜臀一二三区| 亚洲综合图色在线| 天天看天天综合成人网| 亚洲一区日韩| 国产精品无套内谢| 午夜人人操| 射综合网| 欧美草草高清日韩视频| 走光一区92下载| 国产亚卅97| 久草精品热视| 99综合网| 麻豆这里只有精品| 中文字幕成人理论在线| 国产亚洲精品久久久久小| 亚洲丝袜诱惑| 亚洲色图A| 97国产精品在线观看| x97av| 熟妇人妻一区二区三在线 | 一个人免费视频观看在线WWW| 超碰97综合在线| 9九九国产| 综合97久久| 91国精产品| 日日做夜狠狠爱欧美黑人| 久艹伊人精品综合在线| 91在线美女| 久久亚洲影院一区二区| 丁香五月天啪啪| 91碰碰| 婷婷99| 五月丁香啪啪| 天天综合精品| 97超碰美国| 啊啊啊com| 久久一二区四| 天天综合影院91| 欧美一区二区传媒| 久久国99999| 伊人991| 91老熟女老女人国产老太| 伦在线97| 91欧美另类| 超碰碰小说97| 一本一道久久综合久久| 91精品在线播放| 中文三一区| 舔足天天操天天射| 欧美在线播放| 涩综合导航| 手机在线播放国产福利| 国产一级做a爰大片免费久久| 欧美日韩性爱操大逼| 五月天丁香网| 中日无幕一二三四区| 天天香香欲综合| 99蜜桃臀久久久欧美精品网站| 足交视频老司机| 国产AV线| 69精品| 自拍偷拍亚洲熟女妇人精品| 人人插人人摸人人| 婷婷亚洲色| 成年男人的天堂| 激情小说亚洲视频| 自拍六区| 亚洲av国产av综合av卡| 国产精品色片一区二区| 婷婷爱五月| 国产天天看| 亚洲第一视频 欧美风情 日韩| 青青草毛片| 伊人久久大香线蕉无码| 五月丁香色色网| 一区二区首页| 午夜九九| 午夜男女爽爽大片免费观看| 亚洲导航深夜福利| 精品一区二区啪啪啪| 亚洲中文电影| 人妻丝袜二区| 福利操逼| av天堂影视中文在字幕在线中文 | 亚洲天堂在线怕怕视频| 精品一区二区人妖| 啊啊啊啊啊操我视频| 亚洲大色鬼| 久久狠狠色噜噜狠狠狠狠97 | 日韩精品午夜操呦呦不卡影院| 亚洲一区日韩精品中文字幕| 色爱三区| 国产盗摄美女如厕大神作品在线观看| 深夜激情| 在线观看成人性爱免费小视频| 男人的天堂啪啪| 中国熟女91| 亚洲97成人在线观看| 婷色五月| 十八禁电影伊人网| 亚洲精品一区二区精品| 五月天激情综合网| 日本最新1区2区3区| 四虎午夜影院| 中文字幕二区日韩天堂| 偷拍亚洲情色| 成年女人黄网站| 97大色网| 亚洲美女av无码| 久久五月婷| 亚洲AV不卡在线观看| 日韩精品在线视频在线观看| 国产免费一区二区三区最新不卡| 97视频在线视频| 黄色操人| 99啪啪视频| 99re免费| 色婷婷综合久久久久中文国产精品一区中文字幕,国产福利电影一区二区三区 | 一级片视频啪啪| 伊人久久88国产女| 久区视频| 99久久网站| 91久久精品美女高潮喷水| 狠狠操夜夜| 成人热久久精品| 99久久久久久亚洲精品不卡| 亚洲日本韩国极品一区二区| 91热| 婷婷伊人| 亚洲熟女人妻中文字幕一区二区 | 天天伊人| 九九九九久久久| 九月伊人中文字幕| 大香蕉亚洲中文| 91爱| 欧美制服网站美腿丝袜| 国内外内射高清视频| 97九色人妻| 天天综合91| 国产专区路线| 国产Av超碰| 裸体1区| 看黄片视频免费| 一级免费精品| 我要看免费韩日黄片| 97欧美日韩精品| 狠狠综合网| 91精片| 9999伦理视频| 国产东北女人在线视频| 粉嫩小泬久久久一区二区| 国产自产自拍| 欧亚韩国999| 五月天婷婷综合| 精品免费一区| 你草精品在线视频| 日韩丰满熟妇| 久久久久久人| 欧美|91色综合| 亚洲日韩在线a不卡99精品| 久久伊人青青草| 亚洲精品国产精品乱码不99| 97鸡把在线视频| 青青青国产| 最新三级网址| 91老妇女| 91九九九馒头| 曰韩精品视频一区二区| 208天天久久九九九| 中文字幕一区av| 肏逼福利网站| 国产成人天堂| 色五月网址| 在线人成亚洲视频免费观看| 亚洲性少妇| 亚洲男人bt天堂| 在线播放一级无码视频| 日本高清视频在线观看黄已三辽| 啊啊啊啊一区| 超碰人妻天天干| 日韩图色| 青女在线| 日本免费中文一区二区三区四区 | 天天日美女的B| 一区二区你上我| 亚洲国产欧美一区二区潘金莲 | 激情综合五月婷婷| 操逼日批| 熟女少妇一区二区三区| 97超碰逼| 综合婷婷| 大黄片做爱的大的| 91一区二匹| 九九九九97| 国产13区| 日韩国产中文字幕| 看免费的黄片| 中文字幕乱码在线观看| 国产精品不卡一区二区三区| 东京热亚洲一区二区| 手机在线视频国内精品| 91亚洲色图| 国产丁香精品露脸视频| 亚洲情色在线| 东北黄色电影| 欧美一级色| 国产亲戚伦亲在线| 麻豆国产精品午夜视频| 91久| 97操综合| 欧美97视频| 另类亚洲图色| 天美传媒国产原创中文字幕亚洲欧美另类 | 色五月综合网| 国产精品一级片在线看| 女人与公拘交酡2020视频| 国产精品伦理| 91欧美巨乳| 1204av韩国| 炮色五月| 亚洲日本加勒比在线| 婷婷丁香久久| 亚洲欧美在线观看2021| 在线岛| 熟女这里只有精品6| 热99这里有精品综合久久 | 麻豆精品久久久久久久| 性爱av在线免费观看| 日韩一区二区高清在线观看的| 久久欲| 亚洲97成人在线观看| 亚洲伊人成综合成人网| 欧美翘臀视频网站一区二区三区| 天堂亚洲精品| 快播久久人人aV| 国内成人圈中文字幕无码视频| 日韩天天本| www.男人天堂| 日日噜噜夜夜久久亚洲一区二区| 久久亚洲不卡一区二区三区| 中文字幕 一区二区 亚洲无码| 懂色AV一区二区三区| 思思99热| 精品少妇一区二区三区免费观看| 日本大片日本一区二区免费高清| 国产精品色色| 视频二区美腿丝袜制服人妻欧美 | 91av熟女人妻| 欧美18 在线观看| 性爱乱伦视频免费| 免费看黄视频亚洲网站| 国产精品69人妻无码久久久| 乱伦av麻豆| av天堂手机版追回 | 理论久久婷婷网8| 久久啊啊| 亚洲一区二区三区在线激情| 久久精品久久久久久久久| 久久这里是精品| 亚洲天堂无码|