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

ARTICLE DETAIL

資訊詳情

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

Java畢設(shè)實(shí)戰(zhàn):高校綜合測(cè)評(píng)系統(tǒng)的設(shè)計(jì)與權(quán)限控制解析

Java畢設(shè)實(shí)戰(zhàn):高校綜合測(cè)評(píng)系統(tǒng)的設(shè)計(jì)與權(quán)限控制解析 畢業(yè)設(shè)計(jì)選了這個(gè)題目的人我懂你。高校學(xué)生綜合測(cè)評(píng)說(shuō)白了一句話把輔導(dǎo)員每學(xué)期末對(duì)著Excel表格算分、加分、排名、還要簽字蓋章的那套活兒搬到Web系統(tǒng)里讓學(xué)生自己看得到分?jǐn)?shù)老師審核得了依據(jù)系統(tǒng)自動(dòng)出得了排名和報(bào)表。作為Java方向的課題它覆蓋了面向?qū)ο缶幊獭pring Boot框架、數(shù)據(jù)庫(kù)設(shè)計(jì)、權(quán)限控制、事務(wù)一致性這幾個(gè)核心知識(shí)點(diǎn)難度適中、演示效果好、論文也好寫算是JavaWeb類畢設(shè)里性價(jià)比很高的一類。這篇內(nèi)容我不會(huì)跟你甩一堆教科書概念直接按我實(shí)際做過的思路拆開講這個(gè)系統(tǒng)涉及哪些角色、表結(jié)構(gòu)怎么設(shè)計(jì)、綜合分算法怎么寫、什么地方容易踩坑、答辯怎么講才不心虛。你不用做過完整項(xiàng)目只要跟著把每個(gè)模塊的“為什么”和“怎么落地”理清楚代碼自己寫出來(lái)或者看懂都沒問題。1. 課題拆解綜合測(cè)評(píng)系統(tǒng)到底在解決什么問題1.1 傳統(tǒng)綜合測(cè)評(píng)的三座大山先想清楚一個(gè)事教務(wù)系統(tǒng)、成績(jī)系統(tǒng)在很多學(xué)校早就有了為什么還要單獨(dú)做一個(gè)“綜合測(cè)評(píng)系統(tǒng)”因?yàn)榫C合測(cè)評(píng)不只是看考試成績(jī)它要整合學(xué)習(xí)成績(jī)、思想品德、文體活動(dòng)、競(jìng)賽獲獎(jiǎng)、違紀(jì)扣分等維度的數(shù)據(jù)然后按照學(xué)院制定的權(quán)重算出一個(gè)總分作為獎(jiǎng)學(xué)金評(píng)定、評(píng)優(yōu)評(píng)先、保研推薦的依據(jù)。傳統(tǒng)做法里最讓人崩潰的一個(gè)是數(shù)據(jù)分散成績(jī)?cè)诮虅?wù)系統(tǒng)里活動(dòng)加分在學(xué)生會(huì)組織部手里違紀(jì)記錄在學(xué)工辦那輔導(dǎo)員要做的是把這些數(shù)據(jù)手動(dòng)匯總到一張Excel大表里。第二個(gè)是加分標(biāo)準(zhǔn)不透明學(xué)生參加一個(gè)比賽到底加0.5分還是1分經(jīng)常是“看情況”學(xué)生申訴起來(lái)沒依據(jù)。第三個(gè)是重復(fù)勞動(dòng)每學(xué)期都要重新算一遍公式復(fù)制錯(cuò)一個(gè)單元格整個(gè)專業(yè)排名就崩了。所以系統(tǒng)要解決的就是“數(shù)據(jù)集中錄入、加分流程可追溯、綜合分自動(dòng)計(jì)算、排名和報(bào)表一鍵導(dǎo)出”。1.2 系統(tǒng)的角色與核心業(yè)務(wù)流程明確了痛點(diǎn)就很好抽象角色了。高校綜合測(cè)評(píng)系統(tǒng)的用戶基本逃不開四個(gè)角色下面這個(gè)表可以直接寫進(jìn)課題需求分析角色核心訴求主要操作學(xué)生查看自己的各項(xiàng)得分、排名、申訴加分提交加分申請(qǐng)、查看測(cè)評(píng)明細(xì)與總分班委/輔導(dǎo)員錄入班級(jí)同學(xué)的基礎(chǔ)加分、審核申請(qǐng)班級(jí)管理、審核加分材料、錄入班級(jí)互評(píng)學(xué)院管理員/評(píng)審小組制定測(cè)評(píng)模板、審核班級(jí)結(jié)果、導(dǎo)出匯總權(quán)重配置、評(píng)定管理、數(shù)據(jù)導(dǎo)出超級(jí)管理員維護(hù)用戶、班級(jí)、基礎(chǔ)數(shù)據(jù)角色授權(quán)、用戶管理、系統(tǒng)日志業(yè)務(wù)流程其實(shí)是一條直線管理員先配置好評(píng)分規(guī)則比如成績(jī)占70%、德育占15%、文體占15%學(xué)生或?qū)W委提交加分申請(qǐng)并上傳佐證材料輔導(dǎo)員逐條審核審核通過后進(jìn)入分?jǐn)?shù)臺(tái)賬系統(tǒng)根據(jù)權(quán)重自動(dòng)匯總出每個(gè)學(xué)生的綜合測(cè)評(píng)總分再按專業(yè)或班級(jí)排名最后管理員導(dǎo)出匯總表用于獎(jiǎng)學(xué)金評(píng)定。這里面最關(guān)鍵的隱性需求是“留痕”——誰(shuí)加的、為什么加、誰(shuí)審核的、什么時(shí)候?qū)徍说亩家懿榈玫剿悦織l分?jǐn)?shù)記錄必須有創(chuàng)建人、審核人和時(shí)間字段。2. 技術(shù)選型Java這套組合拳為什么能打2.1 后端框架Spring Boot MyBatis-Plus畢設(shè)選題是Java那后端框架基本繞不開Spring Boot。你不需要糾結(jié)SSH那套老古董也不用上來(lái)就整微服務(wù)單體應(yīng)用加經(jīng)典分層就是最適合畢設(shè)的度。Spring Boot幫我把Tomcat內(nèi)嵌、自動(dòng)配置、依賴管理全處理掉了我從JDK和Maven配好之后一個(gè)注解就能啟動(dòng)Web服務(wù)這對(duì)畢設(shè)來(lái)說(shuō)節(jié)省了大量環(huán)境折騰時(shí)間。持久層我建議直接用MyBatis-Plus不要手寫純MyBatis。原因很簡(jiǎn)單綜合測(cè)評(píng)系統(tǒng)的CRUD極其標(biāo)準(zhǔn)班級(jí)、學(xué)生、評(píng)分項(xiàng)目、分?jǐn)?shù)明細(xì)都是單表操作MyBatis-Plus的BaseMapper能直接省掉80%的Mapper XML分頁(yè)插件也內(nèi)置好了。你只要把精力留給核心的測(cè)評(píng)算法和審核流程而不是把時(shí)間花在寫“selectById”這種機(jī)械代碼上。這里還涉及一個(gè)Java畢業(yè)生常被問的問題“MyBatis和JDBC有什么關(guān)系”我的理解是JDBC是Java訪問數(shù)據(jù)庫(kù)的那座橋MyBatis在這座橋上做了映射封裝把ResultSet到對(duì)象的轉(zhuǎn)換、連接管理、SQL參數(shù)綁定都自動(dòng)化了。2.2 前端方案Vue Element UI 還是模板引擎前端這個(gè)選擇決定了你后期聯(lián)調(diào)的心態(tài)。有兩個(gè)明確路線一種是前后端分離用Vue 2 Element UI另一種是服務(wù)端渲染直接用Thymeleaf寫頁(yè)面。我個(gè)人的建議是如果你前端基礎(chǔ)一般或者時(shí)間已經(jīng)很緊張果斷選Thymeleaf加Bootstrap服務(wù)端渲染不用處理跨域Controller里return一個(gè)視圖名模型數(shù)據(jù)直接往模板里賽項(xiàng)目能少踩一半的坑。但說(shuō)句實(shí)話現(xiàn)在畢設(shè)答辯老師對(duì)前后端分離的“期待值”已經(jīng)抬高了如果你的簡(jiǎn)歷里寫了Vue那還是老老實(shí)實(shí)走Restful API Vue Element UI的路子。Element UI組件現(xiàn)成表格的分頁(yè)、表單校驗(yàn)、彈窗都很快后端只需提供JSON接口前端把token放到請(qǐng)求頭里。我做的版本就是分離式的開發(fā)時(shí)用Vite起前端代理轉(zhuǎn)發(fā)到8080端口聯(lián)調(diào)很順。這個(gè)選擇的成本主要集中在跨域和鑒權(quán)上后面我會(huì)專門講這兩個(gè)坑。2.3 環(huán)境與中間件準(zhǔn)備從零起步的人先花半天把環(huán)境弄齊后面效率能翻倍。我建議的最小環(huán)境是JDK 1.8畢設(shè)足夠別去追JDK 17除非你想演示新特性、Maven 3.6、MySQL 5.7或8.0、Redis可選。有人會(huì)問Redis不是標(biāo)配嗎我的看法是能不上就不上綜合測(cè)評(píng)系統(tǒng)的數(shù)據(jù)量級(jí)和并發(fā)量遠(yuǎn)沒到需要用緩存的程度引入Redis只會(huì)增加部署復(fù)雜度還容易在答辯時(shí)被追問緩存一致性。如果你的項(xiàng)目里確實(shí)需要“防止重復(fù)提交加分申請(qǐng)”用MySQL的唯一索引完全能解決未必非得Redis。Java環(huán)境變量配置我提一句這是最容易被卡住的細(xì)節(jié)變量名JAVA_HOME指向JDK安裝目錄Path里加%JAVA_HOME%\bin然后cmd里java -version驗(yàn)證。很多人的坑是裝了JDK后忘了配JAVA_HOME結(jié)果IDE能跑但命令行找不到后面用Maven就報(bào)錯(cuò)。Windows下配置完記得重新開命令行窗口環(huán)境變量不會(huì)自動(dòng)刷新。3. 數(shù)據(jù)庫(kù)設(shè)計(jì)與分層架構(gòu)3.1 分層架構(gòu)設(shè)計(jì)工程結(jié)構(gòu)方面我強(qiáng)烈建議一個(gè)模塊化分包方式既符合實(shí)際開發(fā)習(xí)慣答辯時(shí)也說(shuō)得清controller接收參數(shù)、調(diào)用service、封裝返回結(jié)果不做業(yè)務(wù)邏輯service / service.impl寫具體業(yè)務(wù)規(guī)則比如測(cè)評(píng)分?jǐn)?shù)計(jì)算、審核狀態(tài)流轉(zhuǎn)mapper繼承BaseMapper必要時(shí)自定義SQLentity對(duì)應(yīng)數(shù)據(jù)庫(kù)表的實(shí)體類common統(tǒng)一返回結(jié)果、異常處理、工具類config全局配置比如攔截器、跨域配置這里其實(shí)就是Java的核心思想“面向接口編程”。Service層接口定義好impl里寫實(shí)現(xiàn)Controller只依賴接口不依賴實(shí)現(xiàn)將來(lái)想換實(shí)現(xiàn)類不用改調(diào)用方。答辯老師很喜歡在這個(gè)點(diǎn)展開你最好能說(shuō)一兩句“高內(nèi)聚低耦合”“開閉原則”就來(lái)自于面向?qū)ο笤O(shè)計(jì)原則。這個(gè)項(xiàng)目里的典型體現(xiàn)是計(jì)算綜合分的算法可能在學(xué)期末調(diào)整權(quán)重你只要改Service實(shí)現(xiàn)不碰Controller層。3.2 核心表結(jié)構(gòu)與設(shè)計(jì)思路數(shù)據(jù)庫(kù)是整個(gè)項(xiàng)目的底盤你表設(shè)計(jì)得爛后面寫代碼處處別扭。我實(shí)際設(shè)計(jì)中核心表大概有八張左右下面說(shuō)幾張關(guān)鍵的user表用戶賬號(hào)表字段id、username、password、role、student_id、class_id用一個(gè)role字段區(qū)分四種角色。密碼務(wù)必用MD5或者BCrypt加密千萬(wàn)別明文存。student表學(xué)生基本信息學(xué)號(hào)、姓名、性別、班級(jí)、專業(yè)、入學(xué)年份。這張表的學(xué)號(hào)字段建議設(shè)計(jì)成唯一索引但主鍵用自增id。class表班級(jí)信息班級(jí)名稱、專業(yè)、年級(jí)、輔導(dǎo)員id。evaluation_template表測(cè)評(píng)模板表配置名稱、學(xué)期、權(quán)重配置比如成績(jī)權(quán)重0.7、德育0.15、文體0.15。evaluation_item表測(cè)評(píng)項(xiàng)目表比如“學(xué)科競(jìng)賽獲獎(jiǎng)加分”“曠課扣分”“志愿服務(wù)加分”包含項(xiàng)目名稱、項(xiàng)目類型、默認(rèn)分值。這張表是加分申請(qǐng)的基礎(chǔ)。score_detail表分?jǐn)?shù)明細(xì)表也是整個(gè)系統(tǒng)數(shù)據(jù)量最大的一張表。核心字段有student_id、item_id、score正負(fù)值、reason、status待審核/通過/駁回、apply_time、audit_time、auditor_id。為什么單獨(dú)建表而不直接更新學(xué)生總分因?yàn)榭鄯趾图臃侄家勺匪菝骷?xì)留痕后總分可以通過SQL聚合算出也方便學(xué)生查看自己每一筆加分的來(lái)源。這里有一個(gè)常被問的數(shù)據(jù)一致性問題如果每筆加減分都實(shí)時(shí)更新student表里的總成績(jī)那么一旦某條申請(qǐng)被駁回或刪除總分就很可能算錯(cuò)。我的方案是“明細(xì)為準(zhǔn)總分可算”綜合測(cè)評(píng)總成績(jī)不落庫(kù)展示時(shí)通過聚合查詢動(dòng)態(tài)計(jì)算。數(shù)據(jù)量上來(lái)后性能有影響但畢設(shè)階段完全沒問題而且這個(gè)設(shè)計(jì)后來(lái)成了我答辯的一個(gè)亮點(diǎn)。3.3 關(guān)鍵索引與數(shù)據(jù)一致性索引設(shè)計(jì)看著不起眼但它是評(píng)判你數(shù)據(jù)庫(kù)功底的地方。我實(shí)際建表時(shí)重點(diǎn)加了這幾個(gè)索引score_detail表的student_id和status聯(lián)合索引用來(lái)加速查詢某個(gè)學(xué)生的明細(xì)和待審核數(shù)據(jù)evaluation_template表加一個(gè)semester唯一索引確保一個(gè)學(xué)期只有一個(gè)生效模板student表的class_id索引用來(lái)做班級(jí)維度的數(shù)據(jù)隔離查詢。說(shuō)到數(shù)據(jù)一致性的“怎么保證”這個(gè)在Java面試?yán)镆彩歉哳l題。落到這個(gè)項(xiàng)目里就是同一個(gè)學(xué)生同時(shí)提交多筆加分或者并發(fā)批量加分時(shí)分?jǐn)?shù)不能丟。我的做法分兩層數(shù)據(jù)庫(kù)層加唯一性約束比如“同一學(xué)期同一學(xué)生同一項(xiàng)目不能重復(fù)申請(qǐng)”防止按鈕狂點(diǎn)產(chǎn)生的重復(fù)數(shù)據(jù)應(yīng)用層給Service方法加Transactional事務(wù)注解保證審核通過時(shí)更新狀態(tài)和寫入流水在同一個(gè)事務(wù)里完成要么都成功要么都回滾。這里你最好能說(shuō)出事務(wù)的ACID特性尤其是原子性和一致性怎么在這個(gè)場(chǎng)景體現(xiàn)。4. 核心功能實(shí)現(xiàn)詳解4.1 綜合分計(jì)算邏輯的實(shí)現(xiàn)綜合測(cè)評(píng)系統(tǒng)最核心的算法其實(shí)就是加權(quán)求和。公式很簡(jiǎn)單綜合測(cè)評(píng)總分 學(xué)業(yè)成績(jī)分 × 學(xué)業(yè)權(quán)重 德育分 × 德育權(quán)重 文體分 × 文體權(quán)重。但落到代碼里難點(diǎn)在于“學(xué)業(yè)成績(jī)分從哪里來(lái)”。學(xué)生成績(jī)一般可以手動(dòng)錄入也可以通過Excel導(dǎo)入。我建議的做法是成績(jī)單獨(dú)立一張score表每次考核結(jié)束后管理員導(dǎo)入各科成績(jī)系統(tǒng)先用平均算法算出學(xué)生學(xué)期平均學(xué)分績(jī)點(diǎn)再映射成百分制的學(xué)業(yè)成績(jī)分。計(jì)算邏輯的代碼結(jié)構(gòu)可以用策略模式正好呼應(yīng)Java設(shè)計(jì)模式這個(gè)熱門考點(diǎn)。定義一個(gè)接口ScoreCalculator分別實(shí)現(xiàn)AcademicScoreCalculator、MoralScoreCalculator、SportsScoreCalculator模板里配置了哪些維度就調(diào)用對(duì)應(yīng)的計(jì)算器。這個(gè)設(shè)計(jì)的好處是學(xué)校以后新增一個(gè)“創(chuàng)新創(chuàng)業(yè)加分”維度加一個(gè)實(shí)現(xiàn)類比改一大段if-else強(qiáng)得多。如果你覺得策略模式有點(diǎn)重至少把維度計(jì)算拆到不同方法別用一個(gè)巨型方法寫到底。計(jì)算完成后的排名我用的是Java 8的Stream對(duì)列表流式排序按總分降序排同分時(shí)再按學(xué)業(yè)分排序。這里要小心一個(gè)細(xì)節(jié)排序時(shí)用Comparator.comparing然后用reversed()容易把比較器順序搞反。我踩過這個(gè)坑最后直接用lambda手寫比較邏輯反而一眼能看明白。4.2 加減分申請(qǐng)與審批節(jié)點(diǎn)加分不是一個(gè)學(xué)生填個(gè)分就完了必須有審批流。我做的流程是學(xué)生選擇加分項(xiàng)目、填理由、上傳圖片或證書附件提交后status為0待審核輔導(dǎo)員看到待審核列表點(diǎn)通過status變1分?jǐn)?shù)生效點(diǎn)駁回status變2并填寫駁回原因。這個(gè)流程雖然簡(jiǎn)單但覆蓋了RBAC權(quán)限模型和狀態(tài)機(jī)思想。你在答辯時(shí)可以畫一張狀態(tài)流轉(zhuǎn)表把“待審核→通過/駁回”兩個(gè)分支講清楚就不怕老師問審核邏輯。代碼實(shí)現(xiàn)上有兩個(gè)關(guān)鍵點(diǎn)。一個(gè)是權(quán)限控制學(xué)生只能看到和操作自己的申請(qǐng)輔導(dǎo)員能看到本班所有人的申請(qǐng)。這屬于行級(jí)權(quán)限我用MyBatis-Plus的Wrapper查詢?cè)赟ervice層傳入當(dāng)前登錄用戶的class_id來(lái)過濾。千萬(wàn)別把過濾條件寫在SQL之外不然數(shù)據(jù)就漏了。另一個(gè)是文件的處理上傳的附件建議存服務(wù)器本地目錄數(shù)據(jù)庫(kù)只存文件路徑命名用UUID加原始文件名避免中文名亂碼和重名覆蓋。如果想省事用OSS對(duì)象存儲(chǔ)也可以但畢設(shè)沒必要引入外部依賴。4.3 排名統(tǒng)計(jì)與可視化排名不能光出一個(gè)數(shù)字學(xué)生端至少要有“我的總分、班級(jí)排名、專業(yè)排名、各維度雷達(dá)圖或柱狀圖”老師端要有“班級(jí)整體分?jǐn)?shù)分布、加分項(xiàng)分布”。這部分我用ECharts實(shí)現(xiàn)后端只需要提供一個(gè)按班級(jí)或?qū)I(yè)聚合的統(tǒng)計(jì)接口比如統(tǒng)計(jì)班級(jí)各分?jǐn)?shù)段人數(shù)就寫一條帶Case When的SQL分組。數(shù)據(jù)聚合這塊我要提醒SQL聚合和Java內(nèi)存聚合是兩條路線。我建議簡(jiǎn)單的統(tǒng)計(jì)用SQL比如按班級(jí)平均值、按分?jǐn)?shù)段分組復(fù)雜的跨維度匯總比如計(jì)算某專業(yè)所有學(xué)生的綜合分并排名就用Java先查出明細(xì)再在內(nèi)存里算。這樣代碼好寫也好解釋。涉及到的Java基礎(chǔ)包括數(shù)組、List、Map轉(zhuǎn)換、Stream分組collectingAndThen這些答辯問起來(lái)你能巴拉巴拉說(shuō)半天。4.4 Excel批量導(dǎo)入導(dǎo)出綜合測(cè)評(píng)項(xiàng)目逃不開Excel。我做的時(shí)候用了Apache POI。很多Java面經(jīng)里都問“Java POI能不能操作圖表”答案是可以的POI的XSSFWorkbook能創(chuàng)建圖表但說(shuō)實(shí)話畢設(shè)階段用POI主要做三件事導(dǎo)入學(xué)生名單、導(dǎo)入成績(jī)、導(dǎo)出測(cè)評(píng)匯總表。圖表顯示用ECharts更高效沒必要在Excel里生成圖表。寫導(dǎo)入需要注意的點(diǎn)是先格式校驗(yàn)再逐行解析最后批量插入。格式校驗(yàn)包括必填字段為空、學(xué)號(hào)是不是數(shù)字、成績(jī)是否在0到100的范圍內(nèi)。千萬(wàn)別邊讀邊插不然數(shù)據(jù)量一大事務(wù)又長(zhǎng)又慢。用EasyExcel阿里開源的封裝會(huì)比原生POI省很多事一個(gè)ExcelProperty注解就能映射列名我這里直接用的EasyExcel它底層封裝了POI讀寫效率更高。我的做法是先上傳文件到臨時(shí)目錄再用EasyExcel的監(jiān)聽器逐行讀取最后一次性saveBatch到MySQL。這里有個(gè)Java數(shù)據(jù)類型的細(xì)節(jié)導(dǎo)入時(shí)Excel里的學(xué)號(hào)很容易變成科學(xué)計(jì)數(shù)法或丟掉末尾的0因?yàn)閱卧癖划?dāng)成數(shù)字類型。我處理的方式是Excel列上強(qiáng)制設(shè)置文本格式Java側(cè)用String接收然后用正則校驗(yàn)“學(xué)號(hào)必須為純數(shù)字”。這個(gè)問題不解決導(dǎo)入一萬(wàn)條數(shù)據(jù)九千個(gè)學(xué)號(hào)不對(duì)別問我怎么知道的。4.5 角色權(quán)限與數(shù)據(jù)隔離權(quán)限這塊雖然需求上只是不同角色看到不同菜單但代碼里不能只靠前端隱藏按鈕安全性在后端接口必須攔一遍。我用Spring Security加JWT做認(rèn)證和授權(quán)。登錄成功后返回token前端把token存在本地并放到Authorization頭里后端寫一個(gè)OncePerRequestFilter的JWT過濾器解析token拿到用戶角色再配合Spring Security的注解PreAuthorize(hasRole(ADMIN))控制接口訪問。數(shù)據(jù)隔離是按行做的學(xué)生只能查自己輔導(dǎo)員只能查本班學(xué)院管理員能查整個(gè)學(xué)院。最簡(jiǎn)單實(shí)現(xiàn)就是在各Service方法里根據(jù)當(dāng)前登錄用戶的角色拼裝條件。別小看這塊這是我實(shí)測(cè)遇到權(quán)限漏洞最多的地方。有次測(cè)試發(fā)現(xiàn)學(xué)生把請(qǐng)求里的studentId改成別人的學(xué)號(hào)竟然能查到別人的加分明細(xì)。所以不要信任前端傳來(lái)的任何id一律從token的上下文中取當(dāng)前用戶id這是行級(jí)權(quán)限安全的鐵律。5. 實(shí)測(cè)高頻問題與排查記錄5.1 并發(fā)加分時(shí)分?jǐn)?shù)莫名丟失有一個(gè)很經(jīng)典的并發(fā)問題同一學(xué)生同時(shí)提交了兩筆加分后端查出來(lái)都是當(dāng)前總分90分各自加上0.5分后寫回結(jié)果總分變成90.5而不是91。我剛開始做的時(shí)候還沒用“明細(xì)為準(zhǔn)”方案直接在student表維護(hù)totalScore字段就踩了這個(gè)坑。解決方式正如前面所說(shuō)改為明細(xì)表準(zhǔn)實(shí)時(shí)聚合外加對(duì)同一student_id的申請(qǐng)使用數(shù)據(jù)庫(kù)唯一索引兜底這樣并發(fā)重復(fù)數(shù)據(jù)直接被數(shù)據(jù)庫(kù)擋住業(yè)務(wù)層根本不用加分布式鎖。這也是為什么我在3.2節(jié)強(qiáng)調(diào)“總分不落庫(kù)”這個(gè)設(shè)計(jì)省了很多事。排查這類問題我有兩個(gè)小技巧第一把所有加減分寫操作都打上日志包括操作者、操作時(shí)間、變更前值、變更后值一把鎖一條鏈第二MySQL開general_log看實(shí)際執(zhí)行的SQL順序基本能還原現(xiàn)場(chǎng)。說(shuō)實(shí)話畢設(shè)階段的并發(fā)量很難觸發(fā)這類問題但答辯老師很愛問“你如何保證數(shù)據(jù)的一致性”你要是能把這個(gè)真實(shí)踩坑和解決過程講出來(lái)印象分會(huì)高不少。5.2 學(xué)號(hào)當(dāng)主鍵的坑一開始圖省事我把學(xué)號(hào)直接當(dāng)成student表主鍵結(jié)果問題接二連三學(xué)號(hào)有變更需求轉(zhuǎn)專業(yè)、復(fù)學(xué)、外鍵關(guān)聯(lián)數(shù)據(jù)一大片要跟著改、數(shù)據(jù)庫(kù)性能在關(guān)聯(lián)查詢時(shí)也沒自增id友好。后來(lái)還是改成自增主鍵學(xué)號(hào)改成一個(gè)唯一索引的業(yè)務(wù)字段。這是個(gè)典型的設(shè)計(jì)教訓(xùn)業(yè)務(wù)主鍵和代理主鍵要分開學(xué)號(hào)是業(yè)務(wù)上唯一自然存在的代碼負(fù)責(zé)展示和檢索自增id負(fù)責(zé)關(guān)系穩(wěn)定性誰(shuí)也不要越界管誰(shuí)的事。還有一個(gè)連帶坑Java實(shí)體類里L(fēng)ong類型id在某些前端框架下會(huì)丟失精度超過JavaScript安全數(shù)范圍導(dǎo)致更新操作誤傷別的數(shù)據(jù)。解決方式是讓JSON序列化時(shí)把Long轉(zhuǎn)成StringJackson加一個(gè)ToStringSerializer全局配置就行。這個(gè)細(xì)節(jié)不處理前端刪除或修改時(shí)可能出現(xiàn)“id一直對(duì)不上”的詭異bug。5.3 事務(wù)注解失效的場(chǎng)景在同一個(gè)類里調(diào)用另一個(gè)帶Transactional的方法事務(wù)會(huì)失效因?yàn)镾pring事務(wù)走的是代理機(jī)制同類內(nèi)部調(diào)用直接走原對(duì)象不會(huì)經(jīng)過代理。我寫過一段“審核批量通過”的代碼scoresService的一個(gè)方法里循環(huán)調(diào)用了同類里的auditOne方法結(jié)果中間有一條審核出錯(cuò)前面成功的記錄居然沒回滾。排查了半天最后把批量操作抽到另一個(gè)Service類里或者用TransactionTemplate手動(dòng)管理事務(wù)才解決。另一個(gè)易忽略的問題是事務(wù)加在Controller上把HTTP請(qǐng)求的整個(gè)生命周期都給包進(jìn)事務(wù)了。如果這個(gè)接口里既做了Excel解析又批量寫庫(kù)事務(wù)時(shí)間過長(zhǎng)會(huì)導(dǎo)致數(shù)據(jù)庫(kù)連接被長(zhǎng)時(shí)間占用高一點(diǎn)并發(fā)就報(bào)連接池耗盡。我的原則是事務(wù)只放在真正需要原子性的寫操作上查詢和文件解析別放在事務(wù)里尤其大文件導(dǎo)入先解析校驗(yàn)再開事務(wù)批量寫全程不要在一個(gè)大事務(wù)里鎖太久。5.4 前后端聯(lián)調(diào)與部署前后端分離的項(xiàng)目聯(lián)調(diào)期最煩的兩個(gè)問題跨域和token失效??缬蛭矣玫姆桨甘呛蠖思覥orsFilter配置允許前端地址的跨域請(qǐng)求同時(shí)允許攜帶Authorization頭。這里有個(gè)容易踩的坑添加了自定義header后allowedHeaders必須顯式包含Authorization不然前端每次請(qǐng)求都報(bào)CORS錯(cuò)誤而你后端明明已經(jīng)配置了跨域。本地開發(fā)時(shí)我建議直接給Vite配代理.server.proxy把/api轉(zhuǎn)發(fā)到localhost:8080這樣能做到前端代碼里寫相對(duì)路徑上線后不用改任何接口地址。部署時(shí)最省心的是打jar包用java -jar跑再把前端dist目錄讓Nginx托管Nginx里配一個(gè)/api反向代理到后端端口。這個(gè)“前后端一體部署”方案比單獨(dú)部署兩個(gè)服務(wù)省心太多一個(gè)服務(wù)器一個(gè)Nginx服務(wù)全搞定。部署前記得數(shù)據(jù)庫(kù)的時(shí)區(qū)參數(shù)要配置成serverTimezoneAsia/Shanghai不然日期字段差8個(gè)小時(shí)。5.5 定時(shí)任務(wù)與系統(tǒng)擴(kuò)展綜合測(cè)評(píng)里有個(gè)需求很容易被忽略每學(xué)期結(jié)束后系統(tǒng)要重新生成新一輪測(cè)評(píng)周期把上一年的加分?jǐn)?shù)據(jù)歸檔。這個(gè)功能我用了Spring的Scheduled注解寫一個(gè)每天凌晨掃一次的歸檔任務(wù)把過期學(xué)期的score_detail遷移到history_score_detail表。Java定時(shí)任務(wù)框架這塊也是面試常問你用Scheduled就夠不用為了體現(xiàn)技術(shù)深度硬上Quartz或XXL-Job。不過你要能說(shuō)清楚Scheduled默認(rèn)單線程多個(gè)任務(wù)會(huì)互相阻塞需要配置線程池或者用Async注解讓任務(wù)異步執(zhí)行這個(gè)點(diǎn)講出來(lái)老師會(huì)覺得你有真實(shí)項(xiàng)目經(jīng)驗(yàn)。6. 從課題到答辯講清楚比做完更重要6.1 論文結(jié)構(gòu)與寫作順序很多同學(xué)代碼寫完了論文排版一塌糊涂。我的論文結(jié)構(gòu)可以給你參考第一章緒論寫背景與意義從高校素質(zhì)教育、評(píng)獎(jiǎng)評(píng)優(yōu)的實(shí)際痛點(diǎn)切入第二章需求分析把角色、用例圖、數(shù)據(jù)流圖放進(jìn)去第三章系統(tǒng)設(shè)計(jì)包括總體架構(gòu)、功能模塊圖和數(shù)據(jù)庫(kù)E-R圖第四章系統(tǒng)實(shí)現(xiàn)按模塊貼核心代碼并配運(yùn)行截圖第五章測(cè)試寫功能測(cè)試用例和結(jié)果最后是總結(jié)與展望。注意一個(gè)原則論文里的代碼不要長(zhǎng)段貼只貼關(guān)鍵方法每段代碼后面要有三到五句解釋說(shuō)明這段代碼實(shí)現(xiàn)了什么邏輯解決了什么問題。選題背景里不要空談“隨著計(jì)算機(jī)技術(shù)的發(fā)展”我建議落點(diǎn)放在“高校學(xué)生綜合測(cè)評(píng)是學(xué)生工作管理的重要環(huán)節(jié)傳統(tǒng)手動(dòng)統(tǒng)計(jì)方式存在標(biāo)準(zhǔn)不統(tǒng)一、數(shù)據(jù)分散、公示不透明等問題設(shè)計(jì)一套在線測(cè)評(píng)系統(tǒng)可以提升效率并規(guī)范流程”這樣一句就點(diǎn)題了。6.2 演示時(shí)的功能動(dòng)線答辯演示不超過十分鐘挑四個(gè)高光功能就夠了。我的演示動(dòng)線是先登錄管理員賬號(hào)進(jìn)測(cè)評(píng)模板配置頁(yè)演示設(shè)置學(xué)業(yè)、德育、文體的權(quán)重然后切到學(xué)生賬號(hào)提交一個(gè)比賽獲獎(jiǎng)加分并上傳附件再切回輔導(dǎo)員賬號(hào)通過這條申請(qǐng)最后回到排名頁(yè)看綜合分變動(dòng)和排名刷新。這個(gè)過程完整覆蓋了錄入、申請(qǐng)、審核、計(jì)算、排名五件事邏輯閉環(huán)老師一看就懂。排名出來(lái)之后再用ECharts的班級(jí)分?jǐn)?shù)分布圖展示可視化然后導(dǎo)出Excel匯總表展示POI的實(shí)際效果。這些功能我在演示前會(huì)準(zhǔn)備一個(gè)專用測(cè)試賬號(hào)和幾套固定數(shù)據(jù)避免現(xiàn)場(chǎng)臨時(shí)錄數(shù)據(jù)翻車??貓?chǎng)的要點(diǎn)是先講“邊界”——我是誰(shuí)我在這個(gè)系統(tǒng)里能做什么再講“閉環(huán)”——一條加分從申請(qǐng)到展示的全鏈路最后講“保障”——權(quán)限、事務(wù)、異常怎么處理。6.3 可擴(kuò)展方向如果論文還想加創(chuàng)新點(diǎn)有幾個(gè)方向可以參考一是引入學(xué)生綜合評(píng)價(jià)畫像用雷達(dá)圖展示學(xué)生在學(xué)業(yè)、德育、體育、創(chuàng)新能力各維度的優(yōu)劣勢(shì)二是增加輔導(dǎo)員批量審核支持勾選多條申請(qǐng)一鍵通過三是做消息通知加分申請(qǐng)通過后站內(nèi)信或郵件通知學(xué)生四是把成績(jī)導(dǎo)出功能擴(kuò)展成按模板定制報(bào)表不同學(xué)院可以配置不同的導(dǎo)出格式。這些擴(kuò)展未必都做出來(lái)但在論文的“展望”部分寫出來(lái)答辯時(shí)會(huì)顯得你想過系統(tǒng)后續(xù)怎么演進(jìn)。萬(wàn)一老師問“你這個(gè)系統(tǒng)還能怎么改進(jìn)”你有話可接而不是憋出一句“還可以加個(gè)手機(jī)App”。做了這個(gè)完整項(xiàng)目我個(gè)人最大的體會(huì)是綜合測(cè)評(píng)系統(tǒng)的難點(diǎn)不在技術(shù)而在“把模糊的業(yè)務(wù)規(guī)則變成清晰的代碼邏輯”。你需要跟真實(shí)的用戶輔導(dǎo)員、學(xué)工辦老師去聊搞清楚他們到底怎么算分、怎么審核、怎么排查爭(zhēng)議然后才能設(shè)計(jì)出能用的表結(jié)構(gòu)和流程。Java技術(shù)的每一環(huán)都有明確的業(yè)內(nèi)標(biāo)準(zhǔn)解法——Spring Boot讓工程搭建變簡(jiǎn)單MyBatis-Plus讓數(shù)據(jù)庫(kù)操作變高效JWT加攔截器保障了權(quán)限安全POI處理了文件流轉(zhuǎn)。這些都是我在這個(gè)課題里親手試錯(cuò)后沉淀下來(lái)的經(jīng)驗(yàn)照著走你大概率能順很多。遇到項(xiàng)目里某個(gè)細(xì)節(jié)不確定時(shí)別急著抄代碼先想想“這條數(shù)據(jù)從哪來(lái)、到哪去、誰(shuí)能改、改完影響什么”想通了代碼自然而然就寫出來(lái)了。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
99综合视频一体| 激情六月综合| 日本久久99| 97中文在线| 天天草人人摸| 日韩精品超碰在线观看| 亚洲AV成人无码精品| 国产密乳av一区二区三区四区| 都市激情亚洲| 亚洲AV成人无码久久精品老人法拉利| 依人大香蕉| 国产精品99久久久久久久女警| 亚州精品色情无码A片| 亚洲视频在线观看| 开心激情婷婷| 综合另类视频| 婷婷五月丁香五月| 日韩在线aaa| 91久久综合亚洲鲁鲁五月天| 色婷婷无吗| 99ri国产| 久久婷婷色综合| 米奇激情婷婷| 亚洲中文无码成人| 综合久久99| 免费操超碰| 9久久精品| 久久久精品人妻| 亚洲狠狠婷婷综合久久久| 中文字幕激情综合| 在线观看亚洲AV| 国产人妻人伦精品一区二区| 五月婷婷成人| 综合婷婷| 婷婷综合五月天| 一级视频网址| 婷婷丁香九色| 五月婷婷久久大片| 精品人妻久久久久久| 停停五月丁香| 精品五月天| 性 色 婷婷| 97碰久久| 色婷婷9| 超碰狠狠干99| 97色射| 狠狠操狠狠| 啪啪 综合网| 欧美日韩AAAA| 婷婷五月天网| 99热这里都是精品| 日日夜夜狠狠| 最近免费中文字幕大全高清大全1 免费看欧美成人A片无码 | 99色色| 97干欧美| 综合久久99| 婷婷情色五月天| 婷婷丁香六月天激情四射网| 97在线天堂| 国产欧美日韩综合精品一区二区| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | 丁香桃色网| 五月丁香婷中文| 免费日韩99| 97啪啪| 色玖玖综合网| 色六月丁香婷婷狠狠干| 99小视频网站| 久久色五月天| 亚洲综合色婷婷| 久久婷婷亚洲| 百度一下国产精品A| 激情内射人妻1区2区3区| 人妻AV在线| 激情五月天色播| 丁香五月久久| 丁香五月 六月婷婷首页| 色五月天综合| 99综合一区| 久久99久久99精品免观看软件 | 九九色色| 色青五月天| 精品免费99| 丁香六月在线| 久色| 超碰色人妾| 天天操精品| se99热久久一本| 91超碰在线播放| 91日本在线| 天天想夜夜爽天天爽| 色久婷婷五月| 天天色天天| 麻豆雪千夏| 深爱激情六月天| 99热这里有精品| 婷婷婷久久| 五月婷婷激情日本| 婷婷色日本| 99伊人婷婷在线| 超碰二区| 91精品国产综合久久密臀| 五月天影院| 久久综合中文字幕| 亚洲美女裸体被操在线观看| 丝袜大香蕉| 夜夜操少妇| ji'qi'luan'ren'lun| 色婷婷天堂| 亚洲色综合| 久久蜜臀婷婷| 婷婷在线操| 色色亚洲无码| 六月丁香久久| 五月天久久激情| 亚洲区,视频区,视频区免费| 婷婷狠狠干| 五月丁香六月婷婷网| 九九99精品免费播放| 香蕉久久国产av一区二区| 色色日韩| 激情四射网| 成人在线观看精品| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 激情五月丁香五月色| 伊人婷婷五月天av| 色婷婷视频| 激情久久久久久久久久| 4399精品一区二区| 超碰AAAAAAV| 久久 天天| 五月婷啪| 538任你爽视频不一样的| 中国AV性爱观看| 亚洲性爱电影| 丁香狠狠色婷婷| 亚洲VA在线| 色欲色香综合网| 人妻免费网站| 婷婷五月色亚洲| 亚洲天堂色色| 五月天激情偷拍| 另类图片婷婷五月天| 婷婷五月花| 热无码A∨| 亚洲成人综合在线| WWW久| 五月天开心婷婷久久| 中文AV在线观看| 以及AA大片看看| 丁香六月色婷婷欧美| 射久久丁香五月| 亚洲av另类在线观看| 国产婷婷五月中文字幕高清| 婷婷97狠狠成人网站| 久久激情五月婷婷| 九九五月天| 婷婷狠狠狠爱| 五月丁香婷婷在线| 丁香婷婷人妻| 欧洲第一无人区观看| 国产欧美日韩性爱| CHINESE熟女老女人HD视频| 久久丁香五月婷婷| 五月花婷婷| 四月婷婷五月色综合| 大香蕉手机视频| 久久五月网| 99色精品| 只有精品视频在线观看| 国产精品久久欧美久久一区| 丁香婷五月| 欧美性生交xXxX久久久| 五月婷婷亚洲| 伊人久久大香网| 亚洲精品电影| 天天色综合色| 丁香五月天天| 停停五月色宗合| 九九久久精品國產| 天天干天天操天天拍| 国产人妻操逼| 久久久天堂国产精品女人| 台湾综合丁香五月蜜桃| 狠狠色 综合色区| 五月天激情.com| 狠狠色婷婷综合开心影视| 久久久精品人妻录| 美日韩成人| 亚洲操操操| VA国产在线综合网站| 嫩草AV久久伊人妇女超级A| 五月丁香六月欧美综合| 秋霞少妇毛片| 狠狠色色| 九九热最新| 日韩啪啪视频| 91在线看片| 99热这里只有精品在线观看| 婷婷五月天美女| 亚洲精品又粗又大又爽A片| 天天爽曰日爽| 31色区视频免费看| 色色色在线观看| www、丁香五月天| 日韩aaaaa| 久久人人九九| 婷婷五月天免费99| 丁香五月手机在线| 成人va视频| 亚洲成人网无码| 色欲AVV| 欧美日韩成人在线网| 综合九九中文字幕| 一本色道久久88加勒比| 狠狠色色| 婷婷精品性视频| 婷婷综合影院| 99久久婷婷国产综合精品| 日本九婷婷| 99精品热视频只有精品10| 色一色综合| 123草逼网| 五月婷婷播| 色婷婷影| 亚洲V国产V欧美V久久久久久| 亚洲激情五月| 丁香五月婷久久| 97干97色| 99超碰人人| 在线观看国产高清视频免费网站| 九九色影院| 99日这里只有精品| www.人人操人人看人人想人人摸 人人人人操,COM| 五月丁香日逼| 996re热精品视频| 婷婷五月天成人网| 成人va在线播放| 激情5月婷婷| 婷婷五月天色丁香| 五月开心婷婷极品激情| 色婷婷色情| 久久性都花花世界成人免费视频| 青青草大香| 丁香九月激情| 婷婷伊人网| 99热偷拍| 日日噜噜夜夜狠狠久久丁香六月| 日本va欧美va国产激情| 五月婷婷六月丁香激情| 高清无码一区二区三区四区| 亚洲激情电影五月天色婷婷丁香一起草| 蜜臀av粉嫩av懂色av| WWW.五月com| 亚洲成av人影院| www婷婷| 色婷婷狠| 99精品热| 婷婷大香蕉| 激情综合五月| 久99热| 操日视频| 另类小说五月天| 久久精品人妻| Av大香蕉| www.夜夜| 久久大国产香蕉| 成人片黄网站色大片免费毛片| 99亚洲精品视频| www超碰| 欧美综合五月丁香六月婷| 激情五月婷婷丁香| 五月婷婷六月丁香| 五月丁香香蕉| 国产精品18久久久| 伊人无码高清| 香蕉五月婷婷| 亚洲无线视频| 在线视频色五月| 欧美色狠婷久| 色色网站免费观看| 开心五月深爱五月| 五月婷激情| 九九热只有这里是精品| 久99久热只有精品国产99| 久热a| 激情九九这里只有精品| 久草大| 色欧洲| 极品 少妇 内射| 99国产性感视频| 婷婷无码五月天| 婷婷五月丁香欧洲| 天天做天天爱| 人操人| 色九月欧美| 色综合网址| 久久91久久91色欲精品| 婷婷在线视频| 九九热这里只有精品在线观看| ji'qi'luan'ren'lun| 五月婷婷色播| 久草热久草在线视频| 色噜噜狠狠色综无码久久合欧美| 亚州色综合| 人妻九九九九| 九九这里精品| 色五月婷婷综合| 久久五月视频| 久久天堂女人| 亚洲激情免费久久| 99爱视频| 黄色网址五月婷婷| 丁香五月综合高清在线| 青青草婷婷综合五月| 激情综合色婷婷六月天| 三级三久久线久久99久目本WW| 欧美婷婷五月天综合| 激情五月丁香婷婷| AA片在线观看视频在线播放| 92久久| 五月婷婷m| 午夜激情五月| 五月综合视频| 激情五月九九九| 4399成人黄A片| 婷婷五月天播| 天天爽综合网| 亚洲亚洲人成综合网络| 五月丁香激情综合网| 中文国产五月天| 99热97| 亚洲操B视频| 99re热视频| 99这里都是精品6| 国内在线99视频| 五月中旬婷婷丁香六| 国产激情综合| 97黑人精品区| 噜噜色婷婷| 久久9久| 色情成人五月天| 一本色道久久88加勒比—| 嫩草综合网| 婷婷黄色| 日韩99视频| 五月天激情视频网站| 五月综合激情网| 婷婷不干网| 性爱动图国产麻豆一区二区三区| 五月丁香婷婷久久| 亚洲乱码在线观看| 五月色丁香| 日韩精品无码AV| 五月天激情AAAA| 五月婷婷在线免费观看| 99碰超| 丁香激情五月| www.久久爱.c n| 亚洲无码影音| 亚州精品色情在线观看| 五月婷婷色播| 丁香婷婷丁香五月欧美人| 久热九九| 久久五月天色婷婷| 色综合天天| 91精品丝袜久久久久久久久粉嫩| 色情五月综合婷婷| 色色婷婷丁香五月天| 婷婷丁香五月亚洲免费| 亚洲成人无码片| SS丁香五月婷婷| 日日操夜夜擼| 日韩操逼小电影| AV片一区在线观看| 激情5月天天天| 婷婷综合伊人| 五月丁香色| 九月丁香婷婷综合| 国产精品人成A片一区二区| 婷婷五月俺要去| 久久国产一区二区三区| 色狠狠色噜噜AV天堂五区消防| 亚洲欧洲一二| 丁香五月电影| xxx日本东京热| 中文字幕人妻一区二区| 超碰成人av| 成人在线日韩| 超碰国产一区| 热99这里只是精品| 欧美一级a | 丁香五月激情月| 超91热| 久久久久人妻精品| 那里有AV网址| 墨西哥毛片内射精| 97色婷婷| 深爱婷婷丁香五月激情| 99热婷婷| 熟美女麻豆| 婷婷五月色播放| 亚洲丁香网| 久久人人九九| 五月婷婷黄网站大全| 久久婷婷成人| 婷婷六月视频| 久久婷婷五月国产激情综合片| 一起草AV入口| 婷婷九月色| 思思综合热| 久久丁香五月| 久久久久视剧HD| 九九99在线免费在线观看视频| 五月婷婷免费在线观看| 色色五月婷| 色呦呦在线| 亚洲五月天婷婷| www夜夜操com| 奸逼视频| 综合亚洲色色| 庭庭久久内射| 无码一级片| 图片区 小说区 区 亚洲五月 | 综合狠久久| 婷婷五月天丁香花| 日本九九网| 99久久国产宗和精品1上映| 婷婷六月综合基地| www激情com| 六月亚洲婷婷6月中文字幕| cao久久| 国精产品一区一区三区免费视频| 99精品在线观看| 综合一本道| Av性爱网站| 亚洲六月婷婷| 伊人狠狠丁香婷婷综合尤物| 九九色天堂| 欧美情色一区| 中文字幕人成乱码在线观看| 婷婷六月激情| 啪啪啪大香蕉| 天天看A片| 亭亭五月丁香五月天激情| 五月天激情婷婷五月天久久| 天天色情站| 美女网黄| 99无码超碰| 婷婷色色欧美| 欧美丁香五月| 丁香五月777| 99热黄| 色欲AVV| 国产成人精品123区免费视频| 天天狠天天叉| 婷婷爱五月天| 狠狠综合网| 99热91| www.99久| 精品色色| 高清一区二区三区日本久| 天天肏夜夜肏| 色99视频| 亚洲国产精品VA在线看黑人| 人与禽A片啪啪| 思思热在线观看| 中文字幕日产A片在线看| 天天操综合网| 丁香五月激情图片| 色J香五月天| 五月天,激情四射,婷婷频道| 天天艹夜夜艹| 97干欧美| 婷婷色婷婷| 久久久婷| 5Www色5夜| 色婷婷AⅤ| 丁香婷婷91在线观看视频| 亚洲操B视频| 五月婷婷激情性爱| 婷婷激情五月天天天开心| 色情五月丁香婷婷网| 丁香激情五月综合网| 欧美天天干五月丁香| 色综合久久天天综合网| 五月丁花六月丁香综合| 色欲婷婷五月天| 亚洲热热视频| 九九婷婷激情综合网| 五月激情婷婷偷拍| 殴美激情综合网| 色视频2025| 岛国资源网| 五月婷六月婷婷| 天天日天天插| 国产精品a无线| 有码一区二区三区| 午夜爱插插| 丁香五月婷婷少妇| 色婷五月天激情| 久久9热| 婷婷五月色播| 丁香五月婷婷激情蜜桃| 婷婷五月天色| 久久区区一二三av| 99色啊| 五月婷婷六月丁香激情| 九九热精品视频| av操逼网| 国产激情视频在线观看| 婷婷五月骚厕所| 91人人操人人| 日本大逼91| 噜噜色天天开心| 婷婷六月色情| 久草婷婷| 大香蕉七区| ...婷婷国产成人亚洲日韩| 九九热视频精品| 久热这里| 五月天婷婷伊人| 婷婷在线午夜| 另类激情综合| 九月婷婷激情| 久久视频这里99| 五月丁香婷婷基地| 五月婷婷草| 五月亭亭激情综合| 婷婷五月天网| 嫩草视频在线观看| 久久久天天啊| 就爱日五月天| 亚洲精品久久久久久久久久吃药| 六月综合婷婷开心伊人| 六月激情婷婷综合| 五月丁香六月婷婷亚洲综合| 99热在线观看| 丁香五月天人体| 黄网在线播放| 婷婷五月综激情| 丁香五月激情啪啪| 综合激情五月天| 色爱99| 日韩乱玛久久| 河北真实伦对白精彩脏话| 91超级碰在线视频| 97在线刺激| 一级七香蕉| 中文字幕 久久9999| 色色色无码| 日韩精品一品二区三区的使用体验| 激情婷婷五月色| 色色色99| 激情五月天综合网站网站网站| www.91九色| 99伊人婷婷在线| 亚洲第一第二网站| 啪啪色激情五月天| 九九热99热| 久久五月热| 丁香婷婷视频一区二区| 精品日本视频444| 丁香婷婷久久激情| 色欧美色色色| 婷婷五月天六月| 五月天久久色| 婷婷射图五月天| 思思9久久| 久色五月婷婷综合| www,setingting| 爱婷婷五月| 最新无毒无码AV| 久久久精久人妻| 婷婷五月色播天| 日本五月视频| 99 福利 导航| 色色色婷婷五月| 日本91在线| 亚洲综合五月天婷婷| 91蜜桃婷婷狠狠久久综合9色| 操久久网| Av性爱网| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 天天做天天爱天天高潮| 婷婷99视频精品| 国产超碰在线| 欧洲日韩一区二区三区| 五月丁香狠狠爱婷婷综合| 日日夜夜狠狠操| 欧美色碰| 午夜大香蕉| 五月激情婷婷播播网| 91久久国产自产拍夜夜91久久精品文字>91麻豆精品国产 | 日韩国产在线精品| 99热在线只有精品| 91精品久久久久久综合五月天| 五月婷婷成人| wwwC0maV五月花| 九热视频精品| 99精彩视频| 五月天激情子轮| 另类 在线| 婷婷六月天| 美英法精品无码免费视频| 97婷婷丁香五月天激情图片| www.99热视频| 丁香五月婷婷色播艳门照| 91九色视频在线观看| 天天做天天爱天天爽| 5月丁香六月婷婷| 亚洲小电影在线观看黄999| 天天插天天日| 色色色色av色色色色| 97碰啪啪| 美女爆乳18禁www久久久久久| 色婷婷五月色| 天天日天天做天天操| 久久久久亚洲AV无码网影音先锋| 思思久久99热只有频精品66| 黄色成人网站在线播放| 婷婷丁香综合| 五月色亭丁香| 99男人的天堂| 超碰一区二区| 99在线免费视频| 天天综合精品| 五月WWW| 五月婷婷性爱| 99热色婷婷| 在线视频区| 久久色区| WWW.17C亚洲精品| 色婷婷六月精品| 伊人久久艹| 色站9/| 青青草视频免费观看| 91超碰在线观看| 婷婷五月天六点丁香五月| 激情六月丁香综合| 97操在线视频| 国产成人高清| 97操| 99精品久| 久久99久久99久久99| 99热色精品| 久久婷婷网站| 亚洲va综合va国产va中文| av在线色五月丁香婷区久| 婷婷色激情网| 色五月色五天色情网| 色色丁香五月天社区| 亚洲色无码A片一区二区麻豆| 美女五月天| 99热综合在线| www.久久久久久久| 五月天婷婷色色网| 可以免费观看的av| 成年人丁香五月| 亚洲另类噜噜| 99精品免费欧美小视频| 五月香六月婷| www,26uuu,c0m,色情| 99视频这里只有久久精品 | 99自拍视频| 日本婷婷在线| 久久99操| 夜夜骑夜夜撸| 五月天六月色| 婷婷综合激情| 国产美女无遮挡裸体毛片A片| 9999久久久久| 五月天伊人| 99热| 青青草大香| 在线播放 精品| www.99操.com| 色色五月天com| 婷婷色操| 久久婷五月| 婷婷六月丁香综合| 久久有码| 六月丁香VA| 六月丁香网| 翔田千里 50岁 无码| 伊人久久艹| 久色| 玖玖婷婷色欲| 狠狠草网| 四月婷婷五月色综合| 免费AV黄在线播放| 激情网五月婷婷| 激情五月天婷婷丁香 | 久久五月热| 五月天婷婷久草丁香| 97性视频| 99区视频| 激情五月婷婷六月丁香| 99热综合网| 亚洲五月天激情| 开心色色五月天综合| 1024你懂的欧美曰韩| 182TV亚洲| 亚洲色激婷| 伊人AV五月婷| 亚洲精品电影| 久久综合婷婷激情| 婷婷婷久久久| 丁香婷婷五月天色播| 开心激情网在线| 99热偷拍| 五月丁香在线观看国产| 丁香六月久久| 婷婷五月伦理| 人妻中文在线| ztEJj| 97操在线视频| 丁香婷在线| 亚洲综合九九| 玖玖综合色区在线观看| 五月婷视频久久| 欧美啄木乌丝袜人妻系列| www.婷婷五月天| 人与禽A片啪啪| 久久9久久| 婷婷五月激情欧美大胆视频| 久久东京热婷婷五月| 欧美三9久九观看| 99re久热只有精品6在线直播.com| 亚洲第一色网站| 日日夜夜干| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 激情五月综合网| 麻豆精品| 婷婷丁香激情| 99热成人| 色婷婷久久综合久色综| 色播婷婷五月天| 五月婷丁香| 婷婷五月色综合| 色婷婷五月天天天干天天操天天爽 | 日日夜夜干| 99爽视频| 5月丁香婷婷激情网| 欧美黑人巨大性生话| 综合久久综合久久| 天天爱天天吃狠天天透| 色五月 婷婷, 大香蕉| 人妻AV在线| 啪色综合| 婷婷久久五月天中文字幕在线观看| 国产五月天激情小说| 九九aV| 国产99久9在线| 思思热国产在线| 香蕉AV777XXX色综合一区| 1024人妻| 玖玖综合色| 五月丁香婷婷综合视频| 色婷婷五月天偷拍| 丁香五月婷婷激情蜜桃| 9999热这里只有精品| 天天插天天射| 久久6这里只有精品| 日本婷婷| 色五月开心婷婷| 五月婷婷天| 中文字幕成人| 亚洲精品视频在线播放| 五月丁香亭亭操逼| 色欲婷婷五月天丁香| 美女xx不卡| 99精吕视频在线观看了| 色吊操色妞| 成年人看Va免费视频| 亚洲成AV人片在线观看| 色播丁香婷婷五月激情| 九月丁香很很色| 亚洲久久婷婷| 99久久天堂婷婷| 五月宗合激情网| 丁香五月停停av| 婷婷五月天在线综合| 欧美日本99| 开心激情综合| 97影院一级片| 久久丁香| 丁香五月天天日| 国产真实乱对白精彩| 婷婷久久六月费| 日韩三级高清无码| 四月婷婷丁香五月| 日韩av在线免费观看| 婷婷五月激情图片| 五月丁香在线视频观看| 少妇AB又爽又紧无码网站| 亚洲看av的网站| 成人AV片播放| 蜜臀99精品| 久久女婷| 欧洲MV日韩MV国产| 26UUU欧美| 免费婷婷| JAPANRCEP老熟妇乱子伦视频| 天天干天天干天天干天天干天天干天天 | 99热这里是精品| 97狠狠色| 久久久亚洲精品一区二区三区浴池| 婷婷五月天六月| 婷婷综合影院| 五月丁香成人网| 久久性爱视频这里只有精品| 久久久欧美精品sm网站| 久久久久婷婷| 99成人小视频| 久99视频在线观看| 丁香五月婷婷六月婷| 久久免费干| 三级黄网站| 这里只有精品在线播放| 97操碰在线视频| 日本色婷婷| 色亚洲欧洲| 婷婷激情小说网| 久久密臀婷婷| 婷婷激情四射| 99热这里只有精品最新| 九月激情网| 91呦呦呦| 色五月播五月| 日本五月天婷婷丁香| 婷婷五月在线综合| 成人国产网站| 亚洲乱码精品久久久久.. | 啪啪干伊人婷婷| 久热久操久热久草国产91| 99热自拍| 亚洲99在线| 五月婷婷婷婷婷婷艺术| 久久综合五月天| 99色嘟嘟精品网站| 国产成人亚洲综合A∨婷婷| 99无吗| oumeisesewang| 99狠狠操一| 91在线视频观看午夜福利| 开心激情网在线| 91成人性爱视频| 激情五月天在线| 天天搡日日搡aaaaⅩ| 婷婷五月天最新网址| 99亚洲精品| 婷婷丁香色情| 思思re99视频在线观看| 五月婷婷,六月激情| 激情色色| 超碰不卡在线| 久久久噜噜噜www成人| 国产亚洲精品久久久久苍井松| 亚洲区视频| 综合五月网| 亚洲精品性色| 六月婷婷色五月| 天天情天天狠天天透| 99视频久久久| AV六月丁香| www.五月天社区| 色狠狠六月| 亚洲性受XXXX五月丁香| 欧洲亚洲免费视频9| 丁香五月婷婷久久久| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 99ri网站在线观看| 少妇2做爰HD韩国电影| 五月天国产| 9久久精品| 久久 婷婷 五月天| 激情五月天啪啪| 影音先锋偷偷色男人站| 婷婷涩涩五月天| 亚洲AV色婷婷人禽五月天| 色五月成人在线| 这里只有精品99www| 激情综合网之激情五月| www.激情五月天.com| 精品99这里有| 99热这里只有99| 久久狠狠欧美| 久久久久久久综合狠狠综合| 欧美情月伍月天| 狠狠搞五月天| 激情综合网络插| 电影爱拉战争免费观看| 99热99思午夜精品| 夜夜做天天爽| 五月天激情小说婷婷基地| 欧美综合在线五月天色婷婷| 亚洲噜色| 五月婷婷中文字幕| 天天澡天天狠天天天做| 色婷另类| 99精品在线| 色色婷婷丁香| av国产精品| 97操在线| 懂色av蜜臀av粉嫩av永陈冠希| 超碰99热精品| 日本精品99| 天天综合亚洲综合网天天αⅴ| 99久久国产宗和精品1上映| 亚洲亚洲人成综合网络| 男女激情久久| 先锋资源婷婷| 日日干五月天婷婷| 婷婷综合成人五月天| 五月婷婷婷婷婷| 色综合色| 色五月婷婷综合| 韩国真做片在线观看| 先锋影音男人的天堂AV| 婷婷欧美激情| 五月婷丁香花| 视色综合| 91丁香五月| 色九九综合| 天天射天天操天天干| 热热99爱爱| 色五月丁香六月资源站| 丁香婷婷五色月| 热久精品| 久久久久人妻| 婷婷五月综合基地| 久久久久亚洲AV成人无码电影| 蜜臀av无码久久久久久久久 | 婷婷人人操| 成人综合网站| 五月丁香久久丝袜啪啪| www婷婷| 九九热视频思思| 97干免费视频| 美女久久婷婷| 五月久久婷婷| www色中色综合| 91九色国产| 久月久在线视频| 在线视频你懂得| 99视频一区| 激情综合五月| 亚洲人成播放网站| 996热| 天天插天天操| 人妻AV在线| 一起草av在线观看| 午夜性爱影视一区77| 蜜桃人妻无码AV天堂三区| 免费看欧美成人A片无码 | 亚洲国产99| 最近免费中文字幕大全高清大全1| 亚洲热久| www狠狠| 免费观看的av| 国产婷婷综合| 欧美婷婷色五月| 激情综合婷婷| 久久综合首页| 桔色成人在线| 人妻丰满精品一区二区A片| 91色在线| 国产婷婷五月| 千人斩操逼| 色色色色色色色色网站| 青青草Avb在线| 狠狠干青青草| 99久久婷婷| 久久久大香蕉| 亚洲操B| 色色亚洲99com| 色五月激情问网站| 五月丁香综合啪啪| 激情图片99| 岛国AV网| 色播jjjj| 97色伦另类图片小说视频 | 丁香久久久| 欧美婷婷色五月网| 久久99久久99精品免观看软件 | 婷婷五月噜噜| 屁股翘好撅高迎合跪趴| 国产伊人五月天| 中文字幕在线观看视频www| 亚洲AV成人无码电影| 国产精品A片| 国产精品久久久久9999小说 | 99热这里只有精品1025| 欧美影院| 丁香五月综合首页| 婷婷五月天高清无码| 9热成人在线视频| 日夜夜天天| 人人艹艹艹| 色婷婷在线综合色播网| 337p大胆噜噜噜噜噜91Av| 色情综合| 五月天色社区| 99九九精品| 婷婷久久亚洲| 99热国产精品| 任你艹| 天天久久66xxx| 色色色色色色网| 深夜男女福利刺激影院一区| 亚洲激情四射| 五月丁香怕啪啪| 狠狠干,狠狠操| 丁香色啪综合| 久久九九激情五月天| 久久九九在线视频| 1024久婷| 66成人网| AAA久久久| 婷婷五月影院| 六月色色综合| 丁香五月综合网| 可似看的AV| www.com亚洲网站在线免费| 99国产精品久久久久久久久久久| 婷婷综合影院| 91丨九色丨熟女高潮| 99∨VTV| 综合性视频99| 超碰无码老师| 91狠狠色色丁香婷婷综合久久| 久久久WWW| 五月天开心网| 五月丁香黄色| 久久九九婷婷| 91一起操| 狠狠婷婷爱| www.91AV.com| 99福利导航| 狠狠色五月激情| 最新无码专区| 超碰国产AV| 99热乎| 久久九久久| 五月婷婷日| 精品视频这里只有精品| WWW嗯嗯啊啊啊啊| 色五婷婷在线视频| 久久综合99| 激情小说色五月| 亚洲婷婷五月天| 日本色噜| 91日婷婷在线| 久操大| 九九九成人在线视频| 色 五月 天 婷婷 丁香 九月| 亚洲精品午夜国产va久久成人| 狠狠999| 日韩在线观看亚洲| 五月丁香六月激情| 中文字幕 中文字幕明步| 激情五月天婷婷免费观看| 中文字幕不卡网站| 日本色道视频网站| 亚洲人妻五月丁香婷婷| 在线观看中文字幕亚洲| 日韩黄色中文字幕| 婷婷五月天奸女| 久久草婷婷丁香网站| 激情人妻综合| 岛国在线观看91| 国产精品社区| 99国产小视频| 丁香六月婷婷综合色| 激情性爱婷婷| 婷婷色五月激情| 久久性爱视频| 日本九九热| 99热这里在线精品| 婷婷久久在线| 国产国产乱老熟女视频网站97| 99这里只有精品| 日韩久久这里只有精品| 337p大胆噜噜噜噜噜91Av| 99精品久| 青青草视频免费观看| 久久停停超碰| 激情五月天婷婷丁香 | 97精品综合| 中文AV网| 日本熟女一区二区| 玖月婷婷爱丁香| 狼人婷婷久久| 99热一本| 99亚洲精品综合在线 | www夜夜| www.伊人天堂偷偷婷婷| 婷婷五月丁香综合亚洲| www.五月丁香| 91婷婷丁香五月亚洲| 色五月激情五月| 人人爱国产| 久热 91| 天天操综合网| 色播五月丁香| 五月丁香婷婷六月天| 天天搞夜夜叫| 婷婷色网| 九九综合九九| 久99热在线观看| 日本97久久久精品| 红桃91人妻爽人妻爽| 人妻第九页| 成熟妇人A片免费看网站| 色五月激情五月开心五月| 婷婷色在线观看| 99热在线精品观看| 色色色综合| 色屌丝中文字幕| 五月天亚洲综合网| 久久婷婷五月天综合| 五月天伊人手机在线播放AV| 欧美色六月婷婷| 五月婷婷开心色伊人| 久久一热免费视频| 激情丁香五月婷| 五月天激日本色情在线| 天天玩夜夜操天天爽| 久久er视频6| 99色激| 成人深爱丁香五月| 操操操av| 婷婷美女精品视频| 久久狠狠色| 六月婷婷色宗合| 伊人久久五月天| 狠狠搞亚洲| 五月天综合视频| 丁香五月婷婷在线| 99福利导航| 99操视频| 综合色播| 欧洲电影在线观看免费版英语版| 精品久久久久成人码免费动漫| 99人妻碰碰久久久禁片| 新激情五月天| WWW、日本色丁香、co m| 六月婷婷最新网址| 91成人电影| 久9热| 色综合天天网| 成人性爱精品视频| www夜夜操| 亚洲啪啪啪啪| 91操操| 狠狠色噜噜狠| 久久99三级在线视频| 狠狠爱激情网| 98毛片| 欧美日韩aaaa| 久久久久亚洲AV无码网影音先锋| 色色色色色色色色网站| 国产精品久久久久久久久久久久| 久婷狼色诱惑在线| av无码电影| 五月婷婷在线短视频| 颜射 精品性爱av| 伊人啪啪网| 91九色国产| 欧美顶级少妇做爰HD| www.九月婷婷丁香.com| 婷婷五月综合色拍| 婷婷五月天成人动漫| 日日操日日爽| 91窝窝| 婷婷五月天精品| 操操啪| 99秘 在线| 手机旧版看人妻1025| 五月天色社区| 欧美日韩国产一二区| 久久婷婷五月天蜜桃| 777久久综合视频| 怡红院一二三| 337p大胆噜噜噜噜噜91Av| 色五月 婷婷, 大香蕉| 亚洲无线视频| 综合色色婷婷| 亚洲色五月| 亚洲AV无码电影| 国产韩日亚洲美州欧亚综合在线| 伊人丁香花综合影院| 性视频久久| 久久性综合| 99婷婷| 思思热精品在线| 色色操| 天天综合 99久久婷婷| 美女要搞搞天天搞搞搞网站| 天天日综合| 丰满女老板BD高清A片| 性热视频99精品| 99精品7| 色欲色香综合网| 亚洲成人AV在线| www.五月天性.com| 99久在线视频| 超级碰碰99| 狠狠久久婷五月综合色| 精品久久9| 香蕉99网| 色天天综合色| 色999亚洲人成色| 欧美月久久| 六月婷婷狠狠做| 丁香五月婷婷五月| www.五月.com| 99热这里只有精品国产精品| 丁香五月天激情综合| 色欲久久久久久综合网综合网| 五月婷婷深爱六月| 五月丁香六月婷婷啪啪| 欧洲亚洲午夜| 五月亚洲| 级人人91| 狠狠五月天婷婷| 亚洲这里只有精品| 狠狠爱婷婷爱| 五月婷婷亚洲色视频| 一本色道久久综合狠狠躁一二三| 激情五月天婷婷激情| 97碰在线| 五月久久网| 噜噜吧天天爱| 中文字幕综合色| 欧美亚洲婷婷五月| 国产精自产拍久久久久久蜜| 一级片sese片.COM| 亚洲另类婷婷综合| 99久久精品国产色欲| 国产精品VA在线| 色吧网综合| 色五婷婷| 97luluse| 日韩精品无码99| 九九爱激情| 丁香五月激情性色郤| 91人久| 亚洲日韩26uuu| 97精品人人A片免费看| 99激情视频热| 97色婷婷| 亚洲天堂AV免费片| 色播五月婷婷| 丁香五月大片| 搡BBBB搡BBB搡五十| 全国最新疫情| 精品人妻一区二区三区在| www,欧美干干干干干干| 99热国产这里只有| 一本大道熟女人妻中文字幕在线| 婷婷五月天国产手机在线视频观看| av在线资源| 五月丁香六月婷婷亚洲激情综合| 欧美性生交XXXXX无码小说|