99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

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

Spring Boot教務(wù)管理系統(tǒng)畢設(shè):從選課并發(fā)到權(quán)限設(shè)計(jì)全解析

Spring Boot教務(wù)管理系統(tǒng)畢設(shè):從選課并發(fā)到權(quán)限設(shè)計(jì)全解析 又到一年畢業(yè)設(shè)計(jì)季Java方向里“基于Spring Boot的教務(wù)管理系統(tǒng)”這類題目幾乎是每年都會(huì)出現(xiàn)的熱門選題。作為去年完整帶完一個(gè)類似課題的過來人我可以負(fù)責(zé)任地告訴你這題選得穩(wěn)但能不能順利答辯過關(guān)取決于你做系統(tǒng)時(shí)有沒有把權(quán)限、事務(wù)、并發(fā)這幾個(gè)關(guān)鍵問題想清楚。這篇文章不打算貼一整段代碼讓你抄那樣沒意義。我要拆的是這一類項(xiàng)目從0到1的完整思考鏈路為什么選這個(gè)課題、技術(shù)棧怎么定、數(shù)據(jù)庫(kù)怎么建模、核心業(yè)務(wù)邏輯怎么落、前后端聯(lián)調(diào)時(shí)踩過哪些坑。你照著這個(gè)思路自己重寫一遍不僅能應(yīng)付畢業(yè)設(shè)計(jì)還能在論文的“技術(shù)難點(diǎn)”章節(jié)寫出真正有深度的內(nèi)容而不是湊字?jǐn)?shù)的廢話。1. 課題定位與技術(shù)選型為什么教務(wù)管理系統(tǒng)是Java畢設(shè)的“安全牌”1.1 教務(wù)場(chǎng)景里到底藏著哪些真實(shí)痛點(diǎn)先說課題本身的業(yè)務(wù)價(jià)值。如果你去問任何一所高校的教務(wù)老師他們?nèi)粘9ぷ鞯恼鎸?shí)狀態(tài)一定包含這些場(chǎng)景課程安排靠Excel表格流轉(zhuǎn)學(xué)生選課在某個(gè)舊系統(tǒng)里卡到崩潰成績(jī)登記完了又因?yàn)楦袷讲唤y(tǒng)一要反復(fù)返工。教務(wù)管理系統(tǒng)要解決的就是把這些分散的業(yè)務(wù)集中到一套可操作的Web系統(tǒng)里教務(wù)管理員維護(hù)課程數(shù)據(jù)、發(fā)布開課計(jì)劃學(xué)生在線選課退課教師錄入成績(jī)學(xué)生再查詢成績(jī)。這個(gè)業(yè)務(wù)模型太適合做成畢業(yè)設(shè)計(jì)了它不是一個(gè)“玩具項(xiàng)目”而是有真實(shí)業(yè)務(wù)約束的完整系統(tǒng)。你要處理的核心難點(diǎn)在選課和成績(jī)兩個(gè)環(huán)節(jié)選課要控制課程容量避免超選成績(jī)要對(duì)不同角色做權(quán)限隔離教師不能改別人的課程成績(jī)。這些約束天然地引導(dǎo)你去思考事務(wù)、并發(fā)、權(quán)限校驗(yàn)而這些正是答辯時(shí)最容易問倒人的地方。1.2 技術(shù)棧怎么選才能既省事又不掉價(jià)Spring Boot作為主框架在Java畢業(yè)設(shè)計(jì)里是絕對(duì)的主流選擇原因很直白它把傳統(tǒng)SSHSpring MVC Spring Hibernate那一大堆XML配置全部簡(jiǎn)化成了自動(dòng)配置和注解你從零搭一個(gè)Web項(xiàng)目到跑起來可能只需要幾分鐘內(nèi)嵌的Tomcat也讓你不用額外去裝服務(wù)器環(huán)境。我比較推薦的技術(shù)棧組合是Spring Boot MyBatis Plus MySQL前端可以選Thymeleaf服務(wù)端渲染也可以做成前后端分離的Vue Element UI。這里有個(gè)權(quán)衡Thymeleaf適合想要快速跑通全流程、不想處理跨域和前端工程化的同學(xué)所有頁(yè)面由后端渲染部署時(shí)打成Jar包就行。Vue 前后端分離適合想在論文里多寫一章“前后端分離架構(gòu)設(shè)計(jì)”的同學(xué)但相應(yīng)地要處理跨域、Token鑒權(quán)、前端打包這些問題。數(shù)據(jù)庫(kù)用MySQL就夠了別為了顯得高級(jí)去碰PostgreSQL或MongoDB除非你的選題已經(jīng)明確要求。MyBatis Plus在日常CRUD上能省大量SQL編寫時(shí)間學(xué)習(xí)成本也低。1.3 功能范圍怎么定才能做到“麻雀雖小五臟俱全”我見過不少同學(xué)設(shè)計(jì)的教務(wù)管理系統(tǒng)功能表比企業(yè)ERP還復(fù)雜排課、調(diào)課、教室申請(qǐng)、畢業(yè)審核全塞進(jìn)去結(jié)果做了三個(gè)月連選課功能都還沒跑通。畢業(yè)設(shè)計(jì)不是商業(yè)軟件功能范圍必須收斂。合理的范圍建議聚焦三大角色、四條核心鏈路管理員用戶管理、課程管理、開課管理、選課截止時(shí)間設(shè)置教師查看授課列表、錄入成績(jī)、查看所授課程選課名單學(xué)生選課退課、查看已選課程、查詢成績(jī)、查看公告這四條鏈路是管理員維護(hù)課程并發(fā)布開課、學(xué)生選課退課、教師錄入成績(jī)、學(xué)生查詢成績(jī)。你看每條鏈路都完整覆蓋了一個(gè)業(yè)務(wù)閉環(huán)系統(tǒng)看起來不臃腫論文里能展示的截圖和用例又足夠多。2. 數(shù)據(jù)庫(kù)建模與權(quán)限設(shè)計(jì)項(xiàng)目上限由這一部分決定2.1 用戶角色表直接寫死字段還是引入RBAC用戶與角色的關(guān)系處理是教務(wù)管理系統(tǒng)里第一個(gè)暴露設(shè)計(jì)水平的地方。最基礎(chǔ)的做法是用戶表里加一個(gè)role字段值就是“admin”“teacher”“student”這種字符串用枚舉去判斷當(dāng)前用戶的角色權(quán)限。這個(gè)方案在功能實(shí)現(xiàn)上沒有任何問題代碼寫起來也快。但如果你想讓論文更有技術(shù)含量建議改成簡(jiǎn)單的RBAC模型用戶表(user)、角色表(role)、用戶角色關(guān)聯(lián)表(user_role)。雖然管理員的角色基本固定但RBAC的好處在于以后擴(kuò)展班主任、輔導(dǎo)員、教務(wù)秘書這些角色時(shí)不需要改表結(jié)構(gòu)只需往角色表里加記錄。更重要的是這個(gè)設(shè)計(jì)能在論文的“系統(tǒng)設(shè)計(jì)”章節(jié)畫出三張標(biāo)準(zhǔn)的表結(jié)構(gòu)圖顯得你的系統(tǒng)有擴(kuò)展性而不是一錘子買賣。學(xué)生和教師的信息建議不要堆在用戶表里。用戶表只存用戶名、密碼、昵稱、角色這些登錄相關(guān)的字段教師信息表(teacher)和學(xué)籍信息表(student)通過user_id和用戶表關(guān)聯(lián)。這樣做的好處是表結(jié)構(gòu)語(yǔ)義清晰教師有職稱、所屬教研室學(xué)生有學(xué)號(hào)、入學(xué)年份、專業(yè)如果全塞進(jìn)用戶表后期查詢和維護(hù)都會(huì)很別扭。2.2 核心業(yè)務(wù)表結(jié)構(gòu)拆解與關(guān)聯(lián)關(guān)系教務(wù)系統(tǒng)的核心業(yè)務(wù)表我建議至少要設(shè)計(jì)出以下這五張第一張是課程表(course)字段包括課程編碼、課程名稱、學(xué)分、學(xué)時(shí)、課程簡(jiǎn)介。課程是“基礎(chǔ)資料”類似于商品庫(kù)里的商品主數(shù)據(jù)。第二張是開課表(course_open)這是很容易被忽略但是最關(guān)鍵的一張表。它記錄的是“本學(xué)期某老師在某時(shí)間開設(shè)了某門課”字段包含開課學(xué)期、授課教師ID、上課時(shí)間地點(diǎn)、選課容量、已選人數(shù)、狀態(tài)。為什么需要一個(gè)開課表因?yàn)橥婚T課程在不同學(xué)期可能由不同老師開設(shè)、容量也不一樣如果把授課教師和上課時(shí)間直接放課程表就沒法表達(dá)這種動(dòng)態(tài)關(guān)系。第三張是選課表(course_selection)字段包括選課ID、學(xué)生ID、開課ID、選課時(shí)間。我特別提醒這張表一定要加聯(lián)合唯一約束索引建立在(student_id, course_open_id)上否則并發(fā)環(huán)境下一定會(huì)出現(xiàn)重復(fù)選課的數(shù)據(jù)臟記錄。這是我在實(shí)際項(xiàng)目中踩過的坑后面單獨(dú)講。第四張是成績(jī)表(score)字段包括成績(jī)ID、學(xué)生ID、開課ID、成績(jī)值、錄入時(shí)間、備注。成績(jī)表跟選課表是什么關(guān)系一般建議成績(jī)表單獨(dú)存在而不是直接在選課表上加一個(gè)成績(jī)字段。雖然有些系統(tǒng)會(huì)直接復(fù)用選課記錄但獨(dú)立的成績(jī)表更利于教師錄入、學(xué)生查詢、管理員統(tǒng)計(jì)成績(jī)分布這些操作。第五張是公告表(notice)用于管理員發(fā)布通知。2.3 選課表聯(lián)合唯一約束一次并發(fā)問題的前車之鑒這里說一個(gè)真實(shí)項(xiàng)目里的教訓(xùn)。某同學(xué)做選課功能時(shí)選課表的定義只把主鍵ID設(shè)成自增沒有加任何唯一約束然后寫了一個(gè)“先判斷是否已選過再插入新記錄”的邏輯。單用戶測(cè)試完全正常一旦幾十個(gè)學(xué)生同時(shí)點(diǎn)擊選課數(shù)據(jù)庫(kù)中就會(huì)出現(xiàn)同一個(gè)人選了同一門課兩次的數(shù)據(jù)。原因并不復(fù)雜兩個(gè)請(qǐng)求同時(shí)通過了“是否已選過”的判斷然后都執(zhí)行了插入因?yàn)閿?shù)據(jù)庫(kù)層面沒有任何約束阻止重復(fù)數(shù)據(jù)寫入。解決辦法分兩層表結(jié)構(gòu)層加上(student_id, course_open_id)的聯(lián)合唯一約束這是最后一道防線代碼邏輯層選課前再加一次查詢校驗(yàn)兩道防線同時(shí)存在才能叫可靠。我們?cè)谧瞿M項(xiàng)目X時(shí)把這個(gè)坑寫進(jìn)了缺陷報(bào)告后來每次設(shè)計(jì)涉及用戶與業(yè)務(wù)數(shù)據(jù)關(guān)聯(lián)的表我都會(huì)第一時(shí)間問自己這個(gè)關(guān)聯(lián)關(guān)系在數(shù)據(jù)庫(kù)層面用什么約束來保護(hù)3. 后端核心實(shí)現(xiàn)把關(guān)鍵業(yè)務(wù)邏輯寫扎實(shí)3.1 項(xiàng)目分層與代碼結(jié)構(gòu)Spring Boot項(xiàng)目的包結(jié)構(gòu)建議按照功能模塊而不是技術(shù)類型來劃分。很多教材喜歡用comon、mapper、service、controller這種方式按層分包功能簡(jiǎn)單時(shí)沒問題但一旦功能多了代碼會(huì)堆得很亂。我習(xí)慣的方式是主包下面先按業(yè)務(wù)模塊分比如system模塊用戶、角色、course模塊課程、開課、selection模塊選課、score模塊成績(jī)每個(gè)模塊內(nèi)部再放controller、service、mapper、entity、dto這些子包。這樣的結(jié)構(gòu)在做演示或后期擴(kuò)展時(shí)能快速定位“選課相關(guān)的所有代碼都在selection包里”不用在幾十個(gè)controller文件里翻來翻去。還有一個(gè)在畢設(shè)論文里加分的小點(diǎn)寫一個(gè)統(tǒng)一的Result返回類和全局異常處理器。統(tǒng)一返回類保證后端返回結(jié)構(gòu)一致類似{ code: 200, message: 操作成功, data: ... }全局異常處理器用RestControllerAdvice加ExceptionHandler處理業(yè)務(wù)異常、參數(shù)校驗(yàn)異常、運(yùn)行時(shí)異常這樣業(yè)務(wù)代碼里只需要throw一個(gè)自定義的BusinessException不用到處try-catch。答辯時(shí)如果老師問“你的系統(tǒng)怎么處理異?!蹦憧梢灾苯诱f出這套機(jī)制的設(shè)計(jì)理由。3.2 登錄鑒權(quán)與權(quán)限控制登錄鑒權(quán)這個(gè)問題答辯老師幾乎必問。常用方案有兩種Session方案和JWT方案。如果前端是Thymeleaf用Session方案最省事登錄成功后把用戶信息放進(jìn)Session攔截器里判斷當(dāng)前請(qǐng)求路徑是否需要登錄、當(dāng)前用戶角色是否能訪問。這個(gè)方案不需要引入額外依賴?yán)斫獬杀镜瓦m合畢設(shè)。如果前端是Vue這類分離項(xiàng)目建議用JWT登錄成功后后端簽發(fā)一個(gè)Token前端存在瀏覽器本地存儲(chǔ)每次請(qǐng)求在Header里加上Token后端通過攔截器解析Token確定用戶身份。攔截器里需要處理的邏輯是放行策略。登錄接口、注冊(cè)接口、靜態(tài)資源要放行其他接口統(tǒng)一走鑒權(quán)攔截器。角色權(quán)限的判斷可以在攔截器里根據(jù)請(qǐng)求路徑前綴攔截比如/api/admin/**只有管理員角色能訪問。這個(gè)規(guī)則比較死板但足夠用。如果想要更好看的實(shí)現(xiàn)可以引入自定義注解加AOP做權(quán)限控制論文里寫出來是個(gè)亮點(diǎn)但實(shí)現(xiàn)前要考慮自己是否真的掌握AOP原理否則答辯被追問會(huì)露餡。3.3 選課接口事務(wù)與并發(fā)控制的必修課選課接口是整個(gè)教務(wù)管理系統(tǒng)里最值得花時(shí)間設(shè)計(jì)的業(yè)務(wù)邏輯。它的完整流程至少包含四步校驗(yàn)學(xué)生身份確認(rèn)當(dāng)前處于選課時(shí)間范圍內(nèi)。查詢?cè)撻_課記錄判斷當(dāng)前已選人數(shù)是否小于容量。檢查該學(xué)生是否已經(jīng)選過這門課避免重復(fù)選課。插入選課記錄并將開課表的已選人數(shù)加1。仔細(xì)想想這四個(gè)步驟每一步之間都存在并發(fā)隱患。最常見的場(chǎng)景是課程只剩最后一個(gè)名額兩個(gè)學(xué)生同時(shí)操作兩個(gè)請(qǐng)求都讀到“已選人數(shù)容量-1”都認(rèn)為還有名額于是都插入選課記錄最后實(shí)際選課人數(shù)超出容量非常典型的超賣問題。解決這種問題必須在數(shù)據(jù)庫(kù)層面加約束。我的做法是不用先查再更新而是直接執(zhí)行一條帶條件的更新語(yǔ)句UPDATE course_open SET selected_count selected_count 1 WHERE id #{openId} AND selected_count capacity執(zhí)行這條語(yǔ)句后通過受影響行數(shù)判斷是否還有剩余名額如果結(jié)果是0說明課程已經(jīng)滿了直接拋出“課程已選滿”的異常如果結(jié)果是1才繼續(xù)插入選課記錄。為什么這樣有效因?yàn)閁PDATE語(yǔ)句在數(shù)據(jù)庫(kù)行上會(huì)加鎖兩個(gè)并發(fā)請(qǐng)求同時(shí)更新同一行時(shí)只可能有一個(gè)先獲得行鎖后一個(gè)請(qǐng)求看到的是更新后的數(shù)據(jù)從而重新判斷容量條件。這就是數(shù)據(jù)庫(kù)層面的樂觀鎖思想用條件更新代替“查詢?cè)俑隆?。再配上事?wù)整個(gè)選課過程要么全部提交要么全部回滾。在Service方法上加上Transactional注解注意這個(gè)注解不能自己類里調(diào)用自己類的方法否則事務(wù)不會(huì)生效這個(gè)問題后面在常見問題章節(jié)單獨(dú)展開。3.4 教師錄入成績(jī)與權(quán)限校驗(yàn)細(xì)節(jié)成績(jī)錄入的實(shí)現(xiàn)相對(duì)簡(jiǎn)單但權(quán)限校驗(yàn)的細(xì)節(jié)很容易被忽略。錄入成績(jī)接口接收的參數(shù)一般有開課ID、學(xué)生ID、成績(jī)值。問題是接口的調(diào)用者是否真的是這門課的授課教師如果不做校驗(yàn)任何登錄用戶只要猜到開課ID和學(xué)生ID就能往接口里傳參數(shù)改成績(jī)這是嚴(yán)重的安全漏洞。正確的做法是在Service層先根據(jù)當(dāng)前登錄用戶的教師ID查詢授課列表判斷目標(biāo)開課ID是否在列表里不在就直接拋出“無權(quán)操作該課程成績(jī)”的異常。這一點(diǎn)務(wù)必要寫進(jìn)論文的“系統(tǒng)安全設(shè)計(jì)”章節(jié)哪怕只是兩段話也比簡(jiǎn)單說“系統(tǒng)采用Spring Boot框架開發(fā)”能撐內(nèi)容。還有成績(jī)的范圍校驗(yàn)0到100之間的整數(shù)或一位小數(shù)用參數(shù)校驗(yàn)注解或者手動(dòng)判斷都行。這里我用一個(gè)從實(shí)際開發(fā)中總結(jié)的經(jīng)驗(yàn)提醒你修改成績(jī)比錄入成績(jī)更需要謹(jǐn)慎一定要記錄操作日志。成績(jī)表里加上updated_time字段擴(kuò)展一個(gè)score_log表記錄修改前后的值、操作人、操作時(shí)間。雖然畢業(yè)設(shè)計(jì)不需要做得像真實(shí)系統(tǒng)那么重但有個(gè)操作日志功能演示時(shí)可以給答辯老師展示“系統(tǒng)具備數(shù)據(jù)可追溯性”加分效果明顯。4. 前端頁(yè)面與接口聯(lián)調(diào)從接口到可演示頁(yè)面的最后一公里4.1 頁(yè)面規(guī)劃教務(wù)系統(tǒng)要哪些頁(yè)面才夠用前端頁(yè)面規(guī)劃不需要花哨但至少要覆蓋核心業(yè)務(wù)鏈路。按照三個(gè)角色劃分管理員端需要登錄頁(yè)、工作臺(tái)首頁(yè)、用戶管理頁(yè)增刪改查、課程管理頁(yè)、開課管理頁(yè)、公告發(fā)布頁(yè)。教師端需要授課列表頁(yè)、選課學(xué)生名單頁(yè)、成績(jī)錄入頁(yè)按學(xué)生批量錄入或逐條錄入。學(xué)生端需要待選課程列表頁(yè)、我的課表/已選課程頁(yè)、成績(jī)查詢頁(yè)、公告頁(yè)。頁(yè)面交互以表格和表單為主這是后臺(tái)管理系統(tǒng)的典型形態(tài)UI不用追求炫酷干凈整齊即可。如果是前后端分離項(xiàng)目用Element UI的表格、彈窗、表單組件會(huì)非常快在校生對(duì)Element UI也比較熟悉遇到問題社區(qū)資料一搜就有。4.2 接口聯(lián)調(diào)時(shí)的三個(gè)經(jīng)典問題前后端聯(lián)調(diào)的時(shí)候有幾個(gè)問題幾乎每次都會(huì)遇到提前避坑能省出好幾天時(shí)間。第一個(gè)是跨域問題。前端項(xiàng)目跑在8080端口后端跑在8081端口瀏覽器直接請(qǐng)求后端接口會(huì)被攔截。解決辦法是后端寫一個(gè)配置類實(shí)現(xiàn)WebMvcConfigurer接口重寫addCorsMappings方法允許指定前端地址跨域訪問。注意如果用了JWT鑒權(quán)跨域配置里要允許自定義請(qǐng)求頭否則前端沒辦法把Token帶過去。第二個(gè)是時(shí)間格式問題。后端用LocalDateTime作為時(shí)間字段類型時(shí)通過默認(rèn)的JSON序列化前端拿到的是一長(zhǎng)串?dāng)?shù)字?jǐn)?shù)組非常不直觀。解決辦法是在application.yml里統(tǒng)一配置時(shí)間格式化或者給實(shí)體類的時(shí)間字段加JsonFormat注解統(tǒng)一輸出為“yyyy-MM-dd HH:mm:ss”的字符串格式。第三個(gè)是null值問題。后端返回的數(shù)據(jù)里有些字段是null前端表格直接顯示“undefined”這個(gè)問題雖然不至于報(bào)錯(cuò)但看起來很業(yè)余。建議統(tǒng)一Result封裝中集合類型返回空集合而不是null字符串類型返回空字符串或者由前端做兜底展示。4.3 驗(yàn)收演示時(shí)的數(shù)據(jù)準(zhǔn)備技巧很多同學(xué)做畢業(yè)設(shè)計(jì)系統(tǒng)里的數(shù)據(jù)隨意亂填演示時(shí)打開頁(yè)面一片亂碼或內(nèi)容空洞給答辯老師的印象分直接掉一檔。數(shù)據(jù)準(zhǔn)備其實(shí)很簡(jiǎn)單就是要“看起來像一個(gè)真實(shí)系統(tǒng)”。預(yù)置數(shù)據(jù)要做到課程名稱用真實(shí)的課程名高等數(shù)學(xué)、大學(xué)英語(yǔ)、數(shù)據(jù)結(jié)構(gòu)用戶姓名用自然的中文姓名組合成績(jī)分布盡量接近正態(tài)分布不要全是100分也不要全是60分。選課數(shù)據(jù)要體現(xiàn)“選滿”和“有空余”兩種狀態(tài)這樣演示選課功能時(shí)既能展示成功選課也方便觸發(fā)“課程已滿”的提示效果。這個(gè)小技巧在很多實(shí)際項(xiàng)目中驗(yàn)證過花費(fèi)半小時(shí)準(zhǔn)備數(shù)據(jù)答辯演示效果遠(yuǎn)勝于打開全是“test”字符串的系統(tǒng)。5. 常見問題與排查技巧實(shí)測(cè)中的避坑實(shí)錄5.1 列表查詢的N1問題成績(jī)列表頁(yè)是一個(gè)典型場(chǎng)景頁(yè)面要展示成績(jī)記錄每條記錄除了成績(jī)本身還要顯示學(xué)生姓名和課程名稱。如果初學(xué)階段圖省事在Service里循環(huán)查詢成績(jī)列表每遍歷一條記錄就查一次學(xué)生表、課程表這就會(huì)觸發(fā)N1查詢問題。假設(shè)成績(jī)表里有100條記錄至少要額外執(zhí)行200次查詢數(shù)據(jù)庫(kù)壓力大接口響應(yīng)慢頁(yè)面打開卡頓。解決思路很簡(jiǎn)單不要循環(huán)查單表用一次關(guān)聯(lián)查詢把所有數(shù)據(jù)查出來。比如在Mapper里寫一個(gè)自定義SQL把成績(jī)表和學(xué)生表、開課表、課程表關(guān)聯(lián)起來返回一個(gè)帶學(xué)生姓名和課程名稱的視圖對(duì)象。MyBatis Plus提供的結(jié)果映射能支持這種自定義查詢但需要你手寫ResultMap這部分邏輯建議自己動(dòng)手寫徹底理解關(guān)聯(lián)查詢的執(zhí)行過程。5.2 Transactional事務(wù)不生效的隱形坑事務(wù)不生效的幾個(gè)典型場(chǎng)景我在實(shí)際項(xiàng)目中都遇到過。第一種是同類內(nèi)部調(diào)用。比如在CourseService里有一個(gè)public方法選課方法內(nèi)調(diào)用了同一個(gè)類里另一個(gè)Transactional方法后者的事務(wù)不會(huì)生效。原因很簡(jiǎn)單Spring的事務(wù)是通過代理對(duì)象實(shí)現(xiàn)的同類內(nèi)部調(diào)用走的是this對(duì)象而不是代理對(duì)象事務(wù)切面沒法攔截。解決辦法是避免同類調(diào)用把需要事務(wù)的子方法放到另一個(gè)Service類里或者直接在入口方法上加上事務(wù)注解。第二種是異常被catch了。事務(wù)方法執(zhí)行過程中內(nèi)部業(yè)務(wù)代碼如果自己try-catch吞掉了異常事務(wù)就不會(huì)回滾因?yàn)镾pring根本感知不到異常發(fā)生。正確的做法是不要在需要回滾的事務(wù)方法內(nèi)吞掉異?;蛘卟东@后重新拋出RuntimeException。第三種是方法非public。Spring默認(rèn)的基于CGLIB或JDK代理的事務(wù)代理對(duì)非public方法是不會(huì)攔截的所以事務(wù)注解只能加在public方法上。5.3 MyBatis Plus邏輯刪除與自動(dòng)填充的配置細(xì)節(jié)如果用了MyBatis Plus的邏輯刪除功能也就是配置了TableLogic注解需要注意兩點(diǎn)。第一實(shí)體類有了邏輯刪除字段后寫自定義SQL時(shí)如果不加is_deleted條件查出來的數(shù)據(jù)可能包含已經(jīng)標(biāo)記刪除的記錄。雖然MyBatis Plus自帶的queryWrapper會(huì)自動(dòng)附加邏輯刪除條件但手寫SQL時(shí)需要自己記得帶上這個(gè)條件。第二邏輯刪除字段會(huì)影響分頁(yè)查詢的count語(yǔ)句這個(gè)一般MyBatis Plus已經(jīng)處理好了不用太擔(dān)心。自動(dòng)填充功能也很實(shí)用在實(shí)體類創(chuàng)建時(shí)間和更新時(shí)間字段上加TableField(fill FieldFill.INSERT)或FieldFill.INSERT_UPDATE注解然后定義一個(gè)MetaObjectHandler實(shí)現(xiàn)類插入和更新記錄時(shí)自動(dòng)填入當(dāng)前時(shí)間。這樣所有表的時(shí)間字段都不用手動(dòng)維護(hù)代碼整潔度提升明顯。5.4 調(diào)試接口的實(shí)用工具組合隊(duì)伍里做后端調(diào)試一個(gè)趁手的接口測(cè)試工具效率遠(yuǎn)高于在瀏覽器里敲URL。我習(xí)慣用的組合是瀏覽器開發(fā)者工具查看接口請(qǐng)求響應(yīng)另一個(gè)桌面客戶端用來構(gòu)造各類測(cè)試請(qǐng)求。聯(lián)調(diào)階段構(gòu)造POST請(qǐng)求測(cè)試登錄接口、選課接口、成績(jī)錄入接口這些場(chǎng)景用桌面客戶端會(huì)比Postman更輕量操作也更順手。建議有空閑時(shí)把項(xiàng)目里所有接口按模塊整理一遍標(biāo)注清楚請(qǐng)求參數(shù)和返回示例這類接口文檔寫進(jìn)論文前面作為“系統(tǒng)接口設(shè)計(jì)”內(nèi)容非常扎實(shí)。6. 從功能完成到論文答辯最后一步怎么走答辯前建議把系統(tǒng)硬編碼的關(guān)鍵配置項(xiàng)比如選課時(shí)間的開啟和關(guān)閉狀態(tài)、課程容量的默認(rèn)值都做成可以在管理員頁(yè)面修改的配置項(xiàng)。這樣現(xiàn)場(chǎng)演示時(shí)可以直接操作開關(guān)不用臨時(shí)改代碼重新部署演示體驗(yàn)會(huì)流暢很多。系統(tǒng)的用戶密碼存儲(chǔ)要使用加密算法不要在數(shù)據(jù)庫(kù)里存明文密碼這是答辯老師非常喜歡問的一個(gè)安全問題。使用Bcrypt或MD5加鹽都行推薦BCryptSpring Security自帶的支持比較完善。數(shù)據(jù)庫(kù)初始化腳本和預(yù)置數(shù)據(jù)腳本要一起放進(jìn)項(xiàng)目里答辯現(xiàn)場(chǎng)評(píng)委用自己的電腦跑項(xiàng)目時(shí)導(dǎo)入SQL后系統(tǒng)就應(yīng)該能直接運(yùn)行。我在實(shí)際帶項(xiàng)目時(shí)還總結(jié)過一個(gè)規(guī)律答辯時(shí)與其緊張地演示所有功能不如圍繞一條核心鏈路講透從管理員創(chuàng)建開課到學(xué)生選課到教師錄成績(jī)?cè)俚綄W(xué)生查成績(jī)前后端數(shù)據(jù)和狀態(tài)的變化要能對(duì)上。能把這個(gè)閉環(huán)清晰展示出來的同學(xué)答辯分?jǐn)?shù)都不會(huì)低。這條鏈路同時(shí)也是論文里系統(tǒng)測(cè)試章節(jié)的測(cè)試用例設(shè)計(jì)基礎(chǔ)功能測(cè)試、權(quán)限測(cè)試、并發(fā)測(cè)試都能從這里面衍生出來。最后分享一個(gè)個(gè)人體會(huì)做教務(wù)管理系統(tǒng)這類項(xiàng)目技術(shù)上沒有任何一個(gè)點(diǎn)屬于“天頂星難度”難點(diǎn)全在于把大量簡(jiǎn)單的功能流程做得嚴(yán)謹(jǐn)可靠。你認(rèn)真處理了選課并發(fā)、權(quán)限校驗(yàn)、事務(wù)邊界這些細(xì)節(jié)你會(huì)發(fā)現(xiàn)寫論文時(shí)的技術(shù)難點(diǎn)部分根本不用編因?yàn)槊恳粋€(gè)坑都是真實(shí)踩出來的。這些踩坑經(jīng)驗(yàn)才是畢業(yè)設(shè)計(jì)能帶給你的最大收獲。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
亚洲婷婷五月天| 六月婷婷无码观看| 夜夜骑天天操| 亚洲视99| 色婷婷超碰| 色色婷| 亚洲性受XXXX五月丁香| 日本乱论99| 五月天婷婷在线视频| 婷婷激情欧美| 五月丁香好婷婷姑娘综合网| 五月天婷综合| 97碰碰草| 色伦专区97中文字幕| 99热亚洲精品| 丁香五月六月激情| 婷婷五月天无码熟女| 激情视频网址| 天天激情站| 婷婷丁香成人网址| 久青青久| 五月色婷婷亚洲 | 伊人久久五月天| 亚洲日韩乱码一区二区三区四区 | 成人精品视频99在线观看免费| 九九爱看亚洲| 丁香六月婷婷综合麻豆| 就要去操亚洲成人精品五月天丁香婷婷| 激情性爱五月天网页| 五月婷婷黄色| 九九在线精品| 新激情五月天天在线网| 久久金品黃色| 99热综合| 激情婷婷六月天| 日本久久综合| 午夜婷婷丁香| 婷婷欧美偷拍综合| 激情五月婷婷欧美极品| 欧美在线骚货| 狠狠操狠狠狠| 成年人99热| 日韩色色小视频| 玖玖爱综合网| 日木狠狠干| 91久久九| 啪啪夜久久| 色亭亭九月| 五月大香蕉| 国产免费AV网站| 人人射人人高潮| 色九月激情综合网| 五月色丁香激情| 日本美女天天日天天爽| 青青草深爱激情网| 色欲色欲久久宗合网| 色色色免费视频| 黄色成人网站在线播放| 99色干| 丁香在线视频| 这里只有精彩视频| 51精品国自产在线| 久9热在线免费观看| 丰满少妇乱A片无码| 无码少妇高潮喷水A片免费| 九九aV| 丁香五月伊人| 影音先锋男人站,影音先锋男人色资源网,影音先锋AV最新资源站,影音先锋AV资源 | 开心五月激情| 99性感视频| 狠狠狠狠狠狠草| 日本一道久久| 五月婷婷色丁香| 五月色情网| 狠色狠色狠色狠色狠色网| 丁香五月六月久久综合 | 久久婷婷东京热大香樵| 丁香五月激情棕合| 91碰碰| 久久九九99| AV九九| 无码人妻少妇色欲AV一区二区| www.夜夜| 变态另类色图 | 一区操| 碰碰碰91| 99精品视频在线6| 这里只有精品日韩精品| 婷婷五月另类网站| 六月婷婷综合| 丁香婷婷婷五月综合色情| 99久久.www| 色色色色色色色色五月先| 五月丁香激情综合| 激情五月丁香综合网站| 99精品在线观看视频| www.97碰碰com| 六月丁香五月天| 国产乱妇无乱码大黄AA片| 六月色丁香婷婷| 九九色色色| 激情综合啪啪啪| 深爱激情四射| 91性高潮久久久久久久久| 9热视频在线观看| 色五月婷婷老师| 日本操B视频在线观看| 99热九九在线| 色 五月俺去也| 久久香蕉丁香| 五月天婷婷无码视频| 99婷婷国产最新视频| 丁香五月激情五月| 玖玖99免费视频| 丁香婷婷丁香五月欧美人| 久色资源网| 五月丁香啪啪| 91丨九色丨熟女|新版| 丁香五色月婷婷网| 色婷婷99| 亚洲小电影在线观看黄999| 91操色| 可以免费看的AV网站| 99久久婷婷国产综合| 婷婷五月花| 碰碰碰97免费精彩视频| 色婷婷五月天综合网| 天天干狠狠艹| 国产精产国品一二三在观看| 天天色天天色天天色天天色天天色天天色| 丁香五月天激情综合| 国内外色色色色色成人视频| 婷婷综合五月| 五月综合色| 激情五月婷婷她| 色久婷婷网| 色婷婷六月天| 天天操无码| 久久99最新| 97人人做| 色爱综合网| 男人的天堂99| 色天天综合| 国产 码在线成人网站| 超碰电影在线播放| 女人被男人吃奶到高潮| 久久五月婷婷视频| 五月婷丁香| 人妻有码乱操| 五月丁香婷婷成人网| 亚洲中字AV电影在线网站| www.99视频| 久久这里都是精品| 婷婷久久精品| 91偷拍视频| 99久在线精品99re5热视频| 亚洲精品久久久久久久久久吃药| 精品国产乱码久久久久夜深人妻 | 91久久久久久| 五月婷婷六月激情在线| 丰满老熟妇BBBBB搡BBB| 毛片新网地| 风流少妇A片一区二区蜜桃| 99碰碰| 欧美99热| 精品视频99看在线视频| 一区二区成人电影免费播放| 淫水导航| 婷婷狠狠97| 99热这里只有精品免费| 色爽九九| 99色综合| AV片在线观看| 无码色| 成人资源在线| 色中色综合| 色爱综合网| 91九色精品熟女内射| 玖玖无码中文| 五月婷婷六月色| 国产xxxxx在线观看| 婷婷五月天av| 日木狠狠干| 五月天婷婷基地| www.91.com处女在线直播| 99这里只有精品| 五月天另类综合网| 好色婷婷| 国产亚洲成AV人片在线观黄桃| 五月激情开心婷婷| 色色色色色五月| 激情综合网五月| 丁香五月婷婷激情网| 欧美婷婷综合| 婷婷丁香五月天欧美| 国产毛片精品一区二区色欲黄A片| 久久黄色免费视频| 丁香综合| 大香蕉综合| 五月婷婷五月天激情视频| 青青草视频免费观看| 六六久久黄色| 激情网五月| 色色色精品无码区| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 九热视频| 久久久久人妻精品| 管管補管管紱| 丁香九月激情| 秋霞av不能| 99碰超| 色婷婷五月天在线| 99re66热这里只有精品| 五月天婷婷激情网| 久久五月婷6 9| 九九精品视频在线观看| 综合五月草| 亚洲婷婷综合视频| 任你躁XXXXX麻豆精品| 五月婷婷色播| 激情五月视频在线婷婷| 综合在线丁香五月| 成人五月天婷婷| 99网址在线观看| 丁香九月久久| 五月丁香六月婷婷久久肏| 婷婷欧美偷拍综合| 99狠狠色| 久久天堂精品| 手机在线视频观看9| 五月丁香色情| av在线观看免费| 99精品偷自拍| 婷婷丁香在线| 日韩啊啊啊| 五月丁香激情婷婷| 怡红院院久久| 五月丁香色婷婷伊人| 91美女啪啪| 色婷视频| 色噜噜狠狠色综无码久久合欧美| √天堂资源在线人妻熟女| 九九热思思热| 六月丁香啪啪| 久久五月丁香| 99热99ai| 婷婷中文字幕在线| 青青艹b| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 超碰永久在线| 182tv992tv人之初午夜免费观看| 丁香情色五月| 婷婷在线网| 大香蕉综合在线| 欧美三日本三级少妇三99| 日日操,夜夜撸| 婷婷天天舔| 久久综合九九| 久热这里只有精品性色AV| 丁香色成人| 五月婷婷狠狠久久| 色色九九五月天 | 亚洲经典三级| 亚洲九九在线| 欧美日韩AAA| 中文字幕日韩无码制服诱或| 亚洲十月婷婷综合| 六月丁香影院| 天天做天天爱天天玩| 激情深爱五月| 色色五月婷婷丁香| 99精品综合| 婷婷狠狠色| 99亚洲日韩| 天天夜夜爽| 伦99热| 久9久9热久热| 丁香五月婷婷久久久| 丁香五月色情av| 蜜桃婷婷丁香综合久久开心亚洲| 超碰婷婷色| 激情5月婷婷| 高清免费在线视频| 青青草Avb在线| 狠狠综合久久综合| 五月婷六月| 日本9区视频| 亚洲精品网址| 99久久精彩视频。| 婷婷成人综合五月| www.天天日| 五月婷婷丁香婷婷| 欧美日韩一区二区三区四区| 国产精品久久久久9999小说| 六六久久黄色| 亚洲色综久久五月| 亚洲激情图文小说| 天天做天天摸| 五月丁香六月婷婷啪啪| 碰碰碰97国产| 任你操精品免费| 超碰在线看| 日日操夜夜爽天天天| 亚洲VA在线| 玖玖热视频| 婷婷丁香花五月天| 操操操B| 99热观看| 亚洲久久视频| 91成人视频| 日日夜夜天天| 五月天婷婷AV| 久久er视频6| 五月丁香在线偷拍视频| 欧美在线97| 无遮挡国产高潮视频免费观看| 久热精彩视频98| 非洲一级AV| 国内裸舞二区| 色激情五月| 99久久综合| 大香蕉丁香五月| 1024婷婷综合久久五月天| 99色啊| 婷婷五月18永久免费视频| 五月婷婷黄色| 热99视频精品在线| 日本本土色网第一区| 开心五月深爱五月丁香五月激情五月 | 六月丁香天堂| AV美美午夜| 激情五月久久| 久热A片| 五月天社区| 精品无码99| 天天色播| 伊人婷婷大香蕉| 国产热精品| 婷婷九月激情| 人橾人| 久久这里99| 色色色色色色网站| 99激情网| 久草热在线视频| 双性美人被调教到喷水A片| 第五婷婷伊人丁香色| 99精品免费欧美小视频| 婷婷综合中文字幕| 五月噜噜| 精品亚洲国产成AV人片传媒| 乱女乱妇熟女熟妇综合网站| 天天做夜夜爽| www.婷婷| 日本欧美成人片AAAA| 97人人草| 视频免费精品免费精品免费精品免费精品免费精品免费精品免费99 | 日韩中文欧美| 五月丁香免费视频| 超碰成人电影| 热99这里只是精品| 日本在线wwww| 午夜丁香婷婷| 99riAV成人在线视频| 激情综合五月色在线| 五月色网| 五月六月播婷婷| 黄网在线观看免费| 中美日韩成人在线| 怡红院视频| 天天色图| 五月天婷婷小说| 在线婷婷| 伊人久久婷婷| 五月天激情Av| 亚洲av另类在线观看| 婷婷婷五月天最新综合你懂的| 天天日天天插| 99热这里有精品24| 97伦色婷婷| 日本激情五月天‘| 国产偷人爽久久久久久老妇APP| 丁香五月天偷拍| 深爱激情丁香五月| 久久色五月天| 色情丁香五月婷婷精品| 中文精品久久久久人妻不| 久热大香蕉| 天天噪夜夜爽| 一级韩国产精品毛| 六月婷婷视频| 久久亚洲A| 久久xx| 大狠狠在线| 色色色香蕉五月婷| 视色综合| 五月婷婷色综图片| 97人人干人人操| 亚洲色五月天在线| 免费在线观看av网站| 狠狠撸激情综合丁香五月天俺来啦| 久久久一级AAA| 欧美美美女性色视频| 亚洲精品网址| 五月丁香六月情| 丁香五月天人体| 欧美午夜乱妇午夜福利| 九月色婷婷综合| 婷婷综合网性| 亚洲精品V天堂中文字幕| 亚洲 精品 综合 精品| 亚洲无码 图片区| 夜夜骑天天操| 热久久99视频| 五月天婷婷激情在线色图| 婷婷五月天久久| 日 日干 日日做| 五月久久| 这里只有精品视频在线| 九九热99热| Av大香蕉| 久热天堂| 狠狠精品干练久久久无码中文字幕 | 丁香五月手机在线| 亚洲国产精品VA在线看黑人| 九色91国产| 婷婷色香六月综合激情| 丁香六月婷婷久久高清| 狠狠精品干练久久久无码中文字幕 | 激情丁香六月| 26uuu美女三级视频| A片天天| 五月婷婷人人人操| 亚洲天码视频www蛋播视频| 六月丁香婷婷大香蕉| 99自拍视频| 26uuu欧美激情另类| 婷婷久久99| 182tv992tv人之初午夜免费观看| 亭亭五月色男人| 婷婷五月综合视频| 日本精品。999| 六月丁香六月婷婷欧美| 伊人婷婷福利网| 草综合14| 色婷婷丁香五月天| 婷婷五月天手机版视频| 99久久66| 玖玖在线视频| 女人天堂久久| 久久38视频| 亚洲亚洲人成综合网络| 狠狠狠狠狠狠狠狠| 婷婷午夜精品久久久| 色很很96| 久久久18| 九九色影院| 任你日热视频| 婷婷99丁香| 日本综合九九| 五月丁香婷婷激情图片| 亚州男人天堂婷婷五月| 中文字幕1区2区。| 人人艹艹艹| 久久久com| 性生活视频98791| 婷婷五月天视频亚洲| 丁香六月毛片| 爱射综合| 天天久久人人| 精品视频这里只有精品| 婷婷激情丁香五月天综合| 99久re热| 丁香五月综合| 91色色色18| 婷婷五月18永久免费网站| 精品九九九久| 好大好粗嗯啊-一级黄色大片免费观看-成人AV | 插少妇综合网| 五月天激情综合10p| 国产乱码久久| 中文字幕av久久爽一区| 成人看片网站| 超碰资源在线| 操日视频| 激情五月,色五月| 五月大香蕉| 欧美精品99久久久| www.激情五月天.com| 婷婷放心五日爱| 97五月天婷婷综合激情网| 激情丁香五月天图片| 九九色情网五月天| 色九亚洲| 五月婷丁香花| 99热99这里有免费的精品| 五月婷婷激清网| 中文不卡一二区| 婷婷五月六月激情| 日日操天天操| 人妻久久久| 丰满少妇乱A片无码| 人人草人人舔| 久9草在线观看视频| sewuyuetingtingiii| 五月婷婷激情性爱| 婷婷色五月综合丁香| 五月婷婷五月天天| 色亭亭五月天丁香综合AV - 百度 - 百度| xx久久| 激情开心五月天| 大香蕉久久视频久久视频 | 国产成人一区二区三区在线观看 | 天天插天天插天天插天天插| 79精品视频在线观看,| 激情又色又爽又黄的A片| 婷婷亚洲在线| 乱码操操| 人人操Av| 狠狠干婷婷| 久青草影院| 在线中文AV| 七七色色综合| 色国产五月| 99久热这里只有精品| 五月婷色色| 99在线精品免费视频| 99在线热视频| 五月天激情久色| 激情婷婷久久| 九九综合九色欧美狠狠| 婷婷成人网五月天| 五月天婷婷社区| 日本三级大片| 黄色片区子| 五月丁香AV在线| 色婷| 九九中文字幕九| 99久久天堂婷婷| 亚洲无码成人网| 79精品视频在线观看,| 婷婷情色五月天| 婷婷精品视频| 五月天婷婷成人| 亚洲五月婷婷| 色情五月婷| 久久久五月婷婷| 亚洲中文乱字字幕在线永久| 97干干干丁香| site:pzdcoin.com| 99热青青草| 色色色色色日韩午夜激情| 五月天婷婷日日爱| 精品成人在线观看| 婷婷五月天毛片| 亚洲五月天综合色| 开心五月天激情网站| 五月天色五月| 97色色色色| 2025天天操| 风流少妇A片一区二区蜜桃| 欧美大香蕉视频| 日韩一本操| 男女99免费视频| 激情五月天免费视频| 九九综合久久丁香婷婷,开心激情综合网| 久久久中文| 天天日天天狠狠操| 中文网AV| 亚洲女婷婷五月基地综合久久久| 五月天激情.com| 丁香五月人妻熟女| 色色色色色色色色网站| 久大香蕉| 五月激情啪啪| 九九久99免费视频| 五月天伊人综合| 久久婷婷精品| 天天插天天日天天爽| 天天射综合网夜夜操| av狠狠操| 色色色无码| 亚洲乱码日产精品BD| 婷婷五月丁香成人网| 人妖色AV色综合| 四虎成人精品永久免费AV九九| 120分钟婬片免费看| 天天爽日日搞| 天天舔天天摸视频| 久婷婷| 成人做爰高潮A片免费视频| 久久涩视频| 极品色丁香| 天天日天天插天天操| 婷婷综合伊人丁香| 九月综合| 狠狠精品干练久久久无码中文字幕| 色爱爱综合网| 120分钟婬片免费看| 色色婷婷综合网| 操逼巨乳91| www.夜夜| 亚州操逼网| 九九狠狠干| 色国产五月| 婷婷五亚洲| 99久久久久| 97五月婷| 五月天色导航婷婷资源婷婷| 久久99热精品a片在线观看| 可以免费观看的AV| 天天日天天爽| 夜夜爱影院| 一本久久亚洲五月婷婷| 五月丁香成年黄色| 亚洲网在线观看| 欧美综合123区| 五月丁香六月婷婷玖玖| 97香蕉碰碰人妻国产欧美| 五月婷婷香蕉| 99热这里只有精品26| 另类小说激情五月天| 亚洲亚洲人成综合网络| 综合久久高清| 一级操逼内射在线视频| 亚洲成人在线在线| 五月天天丁香婷婷在线中| 天天在线XXX| 91se视频| 电影《战争与艾拉》免费观看| 婷婷五月六月丁香| 91se精品国产| 色色婷| 亚洲人人操| 色欧美色色色| 久久综合热17c| 97久久久久| 91丨人妻丨国产丨丝袜| 99.色| 丁香婷婷六月天| 91在线看片| 深爱激情四射| 久久性爱视频| 午夜成人综合| 可以看的av| 超碰cap| 天天模,夜夜模夜夜爽| 五月婷婷六月丁香综合在线| 日本天堂久久| 五月天色视频| 婷婷啪啪| 婷婷97狠狠干| 激情99| www.丁香五月| 日韩成人综合网| 青青草婷婷久久| 中文字幕乱轮| 婷婷桃色网| 丁香五月天啪啪激情综和网| 黄色三级毛片中字| 丁香五月天五码婷婷| 九九热最新| wwW天天干| 天天天天干| 丁香久久综合| 婷婷伊人综合中文字幕| 五月丁香六月激情综合| 色狠狠婷婷| 天堂久久大香蕉| 人人干人人操人人摸| 久久久久久婷| 丁香五月成人社区| 五月激情综合性爱| 色色色色热| 日本久久精品18| 激情中文在线| 久久久五月天| 婷婷丁香社区| 99久久99热这里只有精品| 亚洲中字AV电影在线网站| 婷婷丁香激情五月| 婷婷五月久久| 青草五月天| 大香蕉狼人久久| 色五月首页| 99思思在线视频| 国产又粗又大又爽又黄| 久久小片| 99人人操人人爱久久久| 色五月人妻| 婷婷狠狠久久| 天天综合区| 免费AV在线| 婷婷五月激情网| 欧美搡BBBBB摔BBBBB| 欧美色欲色欲天天天www| 国产人人操| 久久久www| 六月婷婷六月天天在线免费| 碰超亚洲| 五月丁香六月婷婷色情| 97碰在线视频| 五月天婷婷婷| 久久激情天堂| 亚洲综合五月天综合| 国产黄色大片| 欧美六月| www.亭亭五月天| 91久久综合亚洲噜噜成人在线| 91精品久久久久久77777| 五月精品免费XXX| 猫咪伊人久久| 国产伦亲子伦亲子视频观看| www.婷婷五月| 99在线免费视| AV免费在线网站| 五月丁香久久| 婷婷五月天精品| 99热欧美精品| 国产精产国品一二三在观看| 天天激情欧美美女| 五月色情婷婷开心五月色情| 玖玖综合玖玖| 成人做爰高潮A片免费视频| 99热a片免| aaaaa不卡| 色五月综合在线| 五月丁香亚洲校园欧美| 色综合久久88色综合天天| 婷婷五月激情综合| 色99综合视频| 色五月成人| 999热这里只有美国精品| 成人精品在线观看| 五月丁香六月激情欧美综合| 欧美婷婷五月无砖| 亚洲在线操| 香蕉曰比| 99在线免费视频| 婷婷五月天激情小说| 亚洲尤物在线| 91精品丝袜久久久久久| 婷婷自拍| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | www.henhenl| 婷婷五月精品中文字幕| 婷婷她六月天| 97色色色| 激情婷婷五月综合| 麻豆AV一区二区三区| 六月婷婷激情| 狠狠干夜夜干| 人人看人人要| 亚洲熟妇AV综合网五月丁香伊人| 97色久| 卡视频1区2区| 1024欧美看片| 欧美成人精品A片免费一区99| 97在线碰| 91丨九色丨白浆秘| 综合久久99| 狠狠色噜噜色狠狠狠综合久久成人波| 妻久久久久| 久久这里只有精彩| 九九综合伊人| 九九色院| 婷婷五月天情色| 夜色爱爱亚洲| 日本偷拍九九九| 777精品久无码人妻蜜桃| 91中文在线| 六月婷婷色综合| 91热在线| 婷婷涩五月| 五月丁香婷婷深深爱| 99re思思久久| www色婷婷com| 激情欧美丁香五月| 日操夜撸| 99操逼| 日日夜夜小色哥| 天天爽夜夜爽| 五月天色婷婷基地| 涩涩涩,com| 亚洲成人网无码| 日韩欧美颜射| j久久性爱视频| 91一起操| 五月色婷婷综合色| 五月天无码| 亚州欧美国产久精国产99综合视频| 久操大香蕉| 六月婷婷天天操夜夜爽视频| 亚洲va欧美| 天天爽在线视频| 99热99成人| 日本色噜| 日日操夜夜爽天天天| 午夜理论片最新午夜理论剧| 激情五月丁香在线观看直播| 伊人丁香花综合影院| 99久久精品视频女神1| 婷婷色Av| 色五月婷婷影院| 五月丁香婷草| 亚洲成人综合在线| 欧美色五月| 成功精品影院| 丁香五月-激情综合| 五月天婷婷色综合| 久一网站| 欧美在线视频99| 爱草视频在线| 亚洲五月色| 91碰碰视频| 五月激情六月综合| 爱射综合| 久久精品国产精品| 久久婷婷五月综合网| 婷婷丁香五月91| 久久婷婷五月综合色奶水99啪| 人妻性爱av网站| 黄色99网| 五月在线| 97在线视频观看| 久热一区| 成人在线高清| 五月婷婷xxx| 九九操综合网| www.色综合.com| www.色99| 国产亚洲精品久久久久久久久动漫| 久热爱大香蕉在线蜜臀悦色 | 亚洲网视屏| 婷婷丁香五月av| 婷婷六月五月天综合| 国产精品色色| 少妇人妻丰满做爰XXX| 99热欲| www.99色| 女力报到正好爱上你| 91色色色| 国产伦亲子伦亲子视频观看| 色一情一乱一乱91Av| 美女天天艹人人爽| 亚洲热综合| 91五月天| 婷婷干六月综合旧址| 狠狠爱综合| 丁香婷婷激情网站| 亚洲六月色| 成人va在线| 狠狠搞五月天| 久热这里只有精品6| 丁香五月天综合| 亚洲第二AV| 日韩欧美一区二区三区四区| 久色视频| 成人免费120分钟啪啪| 99亚洲精美视频在线观看| 六月婷婷网| 91超级碰在线| 婷婷在线五月综合| 色播五月婷婷| 色婷婷婷婷五月天| 色综合99| 超碰伊人碰婷婷五月| 99国产小视频免费观看| 国产毛片精品一区二区色欲黄A片| 99色视频在线| 九九九午夜视频| 色婷婷最爱五月| 久久亚洲婷婷| 久久综合香蕉国产国产蜜臀AV| 五月天婷婷三级黄| 日韩黄色电影| 六月色丁香婷婷| 亚州精品色情无码A片| 狠狠干天天日| 五月婷在线| 在线视频你懂得| nvrentiantang av| 真实的国产乱XXXX在线91| 久久女婷| 99啪啪网| 狠狠 久久| 亚洲热综合网在线观看| 国产成人+综合亚洲+天堂| 婷婷久久图片| 久久机热这里只有精品| 丁香五月花| 大香网伊人久久综合| 五月婷婷|欧美| 狠狠狠狠青草| 五月婷婷福利| 日本欧美成人片AAAA| 九九热视频精品2| 91肏| 热99免费在线| 五月婷婷综合在线视频小说| 丁香婷婷综合影院| 五月丁香色狠狠干大屄| 午夜天堂一区人妻| 六月婷婷无码| 99亚洲天堂| 这里只有精品免费在线视频| 五月婷网| 婷婷五月综合色拍| 久99久在线观看| 久久婷中文字幕| 久久久性爱视频| www.婷婷激情网.com| 蜜桃五月天色| 性欧美大战久久久久久久83| 色五月五月天| 精品久久久91久久影视网| 色99视| 亚洲色综合| 99热九九这里只有精品10| 色色色色色色色色综合网| 91久久久久久久久18| 天堂久久精品| 综合亚洲六月婷婷在线| 五月婷婷影| 婷婷五月天中文字幕.| 久热这里只有精品99re| 五月丁香婷婷福利| 五月天操逼网| 91啪啪视频| 丁香婷婷久久| 激情五月天色| 中文字幕人妻熟女在线| 狠狠五月天婷婷| 婷婷中文字幕网站| 深爱五月日韩| 91人碰| 欧美在线视频免费播放| 亚洲永久免费| 久久人人妻| 色综合五月在线| 婷婷丁香色五月天| 午夜做爱影院| 激情久久 婷婷| 大香蕉av在线| 婷婷五月天成人娱乐| 一级AV片| 99re热视频这里只精品| 91人人操人人爱| 黄网在线免费观看| 可以免费看av网站| 国产av天堂| 亚洲九九99精品视频在线播放| 亚洲精品第一国产综合亚AV| 精品亚洲VA网站| 婷婷久久99| 婷婷爱五月天| 六月丁香婷婷在线波多| 99色在线视频观看| 碰碰91| 成人婷婷色五月天| 丁香六月综合| 色综合丁香婷婷| 亚州精品色情无码A片| 高清无码网址| 久久综合五月| 9色免费网| 99热在线只有精品| 99re在线这里只有精品视频首页| 久99久视频精选| 九九热AV| 深爱激情网噜噜色| 97婷婷丁香| 97人人射| 丁香五月天在线观看| 成人av在线网站| 国产精产国品一二三在观看| 亚洲激情.com| 黄色99视频| 1级欧美日韩| 激情婷婷色色| 夜夜骑天天玩天天日| 丝袜人妻| 丁香亚洲色综合| 99久在线精品99re8热| 99色视频在线观看| 丁香五月婷婷欧美激情-中文天堂最新版在线观看 | www.seqingwuyuetian| 99热1| 色婷婷在线视频久| 色五月婷婷伊人| 婷婷久久综合| 色婷婷久久| 一本久久亚洲五月婷婷| 久热丁香| 99热免| 人妻久久久久久久久久久| 五月天久久婷婷| 热99.com婷婷| 日日爽夜夜爽| 影音先锋91资源站| 狠狠干激情五月| 99色婷婷视频| 欧美日本高清视频99| 精品一二三区久久AAA片| 日本WWW九九九| www.五月天婷婷姐姐| 久久久久久97| 综合久久十三| 五月色丁香| 91视频精品99| 亚洲最大视频| 99在线视频在线观看| 久久免费操| 中文字幕久久婷九女同| 人人爱操| 免费亚洲婷婷中文字幕| 婷婷五月天欧美图片在线播放电驴| 五月开心婷婷网| 91狼友视频在线观看| 搡BBBB搡BBB搡18| 五月丁香影院| 色色色热热热| 丁香五月婷婷手机| 日本无va视频| 日韩中文欧美| 1024人妻无码中文字幕| 无码日本精品XXXXXXXXX | 色五月婷婷影院| 五月天婷婷基地| 人妻精品久久久久久| 亚洲艹网| 五月丁香六月婷婷精品| 91色在线 | 日韩| 青青草原爱爱网| 日本熟女啪啪| 亚洲电影在线观看| 91丨九色丨东北熟女| 久久久99视频| 激情综合五月婷婷丁香| 亚洲激情免费视频| 五月婷婷花| 激情影院免费视频婷婷五月天| 婷婷色网站| 日韩人妻在线观看| 九月婷婷综合网| 免费操超碰| 20253AV| 91在线资源| 大香蕉丁香婷婷| 久久色大香蕉| 久婷婷视平| 成人在线二区| www,婷婷,com| 97人碰人操| 97色五月婷婷在线| 日韩黄色影院| 国产精品美女久久久久AV超清 | 伊人网色婷婷五月天| 99热最新网址| www.六月丁香看AV| 丁香五月 六月婷婷首页| 五月婷婷激情69| 婷婷丁香五月天小说| 天天操天天谢| 女力报到正好爱上你| 国产日日操夜夜操的肉棒视频| 激情久久天天| 婷婷婷五月天最新综合你懂的| 婷婷激情欧美| 丁香六月亭亭久久综合| 亚洲五月情| 色五月婷婷五月天激情综合| 国产高清精品色| 桔色成人在线| 色播五月丁香综合| 婷婷综合六| 激情色色色| 五月婷婷激情日本| 99热最新| 欧美色婷婷| http:色情日本com| 狠狠色婷婷综合开心影视| 欧美三级视频| 婷婷综合影院| 九热视频精品| AV在线资源| 久久久久久久久久久久久久人妻视频| 人人色性网| www.五月天社区| 人妻视频在线| 99色婷婷| 色欲色欲久久宗合网| 欧美高潮9| 成人五月天丁香婷| 欧美成人无码高清一区二区三区| 婷五月丁香| 婷婷五月视屏| 日本女人久久| 天天综合精品| 成人免费超碰| 97欧美在线| 97丁香花五月天激情小说| 丁香婷婷六月在线资源观看| 五月色影院| 九九操操| 国外亚洲成AV人片在线观看| 97亚洲精品| 亚洲无码另类| 五月色丁香综合| 婷婷五月成人系列| 五月丁香综合网| 五月丁香色色网| 青青艹b| 综合色播| 色婷婷五月天天天干天天操天天爽 | 人妻射精AV| 人妻VideOssS人妻| 啪啪综合| 婷婷色色网站| 一月婷婷色色| 激情五月婷婷色综合| 婷婷五月天色| 中文av网| 99小视频在线观看| 怡红院 久久| 日本久久爱| 另类小说五月天| 色婷婷色丁香色欲av| 99视频色在线观看| 亚洲视色| 丁香六月激情| 超碰人人99| 五月丁香 久久久| 97视频91| 午夜激情四射影院| 日本精品在线噜噜噜| 99视频只有这里精品| 狠狠色狠狠操| 手机在线视频观看9| AV天堂淫乩| 亚洲AV网址| 激情小说色五月| 啪啪啪综合网| 婷婷激情综合| 粉嫩AV久久一区二区三区| 97碰超级人人看| 99er6热在线观看精品6| 婷婷五月天成人| 九九干视频| 日韩五月婷婷| 丁香五月天啪啪| WWW色五月| 九九精品热| 色久五月天| 亚洲五月婷婷| 丁香五月婷婷激情尤物| 婷婷丁香五月天在线| 婷婷丁香18| 亚洲婷婷久久综合| 激情五月图| 久久久99视频| 久久一品区| 第四色婷婷五月| 97人人草| 99精品久久| 久热这里只有| 五月婷婷激情在线| 五月色无码| 丁香五月激情婷婷| 亚洲无aV在线中文字幕 | 丁香五月激情综合婷综| 久热中文字幕在线线观看| 九九综合精品| 激情五月天色婷婷综合| 国产婷婷色综合AV蜜臀AV| 国产小精品| 激情婷婷色小说| 99热这里有精品| 婷婷五月综合久久中文字幕| 开心激情婷婷| 一区中文字幕电影| 激情亚洲婷婷六月| 国产毛片欧美毛片久久久| 青青草原中文字幕| 欧美精产国品一二三区| 亚洲综合另类| 26uuu丁香婷婷五月| 九一牛视频探花| 亚洲欧美另类在线23p| 人妻激情久久| www.十八禁不禁AV.com| www.99热| 青青五月天婷婷| 五月丁香色综合| 五月丁香久久综合| 色色国产| 婷婷五月天成人五月天| 丁香九月激情| 超黄亚洲瑟瑟网站| 思思热这里只有精品| 99欧美| 丁香五月成人网| 91操操| 天天日夜夜| 狠狠 婷婷| 久久激情视频| 婷婷九月激情| 第四色在线观看| 婷婷丁香五月天综合网| 一本大道嫩草AV无码专区| 奸逼视频| 日韩黄色中文字幕| 天天射夜夜骑| 99在线爽| 婷婷五月天激情免费在线观看| 亚洲av另类在线观看| 丁香五月婷中字幕| 激情五月丁香六月综合AVXXXX| 亚洲天天操| 久久狠狠干| 欧美成人精品A片免费一区99| 伊人五月天综合网| 大香蕉婷婷| 99热精国产这里只有精品| 新激情婷婷| 天天日天天干天天爽| 精品99在线看| 久久激情网| 亚洲啪啪啪啪| 精品夜夜澡人妻无码AV| 伊人色欲五月天| 色五月色五天色情网址| www.久久爱.com| 天天做天天爱天天摸| www.激情| 五月天婷婷爱| 丁香九月婷婷综合| 丁香五月在线播放| 日本激情五月天‘| 五月天婷婷情色| 五月天精品| 五月欧美色色五月| 97超级操操| 五月丁香六月激情| 婷婷五月精品在线| 亚洲色图在线视频| 天天操天天操天天操天天操天天操 | 电影蜘蛛女| 日本波多野结衣视频| 9久热在线视频精品| 亚洲亚洲激情| 亚洲xx在线| ww久久| 五月激情偷拍婷婷| 丁香六月欧美| 99久在线精品99re8| 伊人久久五月天| 在线sebiav精品视频| av九九| 丁香五月婷婷激情中文| 色V狠狠的干| 国产肥白大熟妇BBBB视频| 天天草天天摸| 99热免费精品热久久66| 婷婷色在线| 丁香六月婷婷五月婷婷| 五月丁香综合啪啪啪啪啪|