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

ARTICLE DETAIL

資訊詳情

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

基于Spring Boot的鮮花銷售管理系統(tǒng)畢設(shè)全攻略

基于Spring Boot的鮮花銷售管理系統(tǒng)畢設(shè)全攻略 1. 項(xiàng)目核心拆解這個(gè)“鮮花銷售管理系統(tǒng)”到底要做什么選課題是計(jì)算機(jī)畢業(yè)設(shè)計(jì)的第一步也是最容易翻車的一步。很多人一上來(lái)就奔著“高難度”去結(jié)果做了三個(gè)月連需求都理不清最終只能降低標(biāo)準(zhǔn)、東拼西湊糊弄過(guò)去。“基于Spring Boot的鮮花銷售管理系統(tǒng)”這個(gè)題目聽(tīng)起來(lái)平平無(wú)奇但它在畢設(shè)選題里算是相當(dāng)聰明的選擇業(yè)務(wù)場(chǎng)景完整、功能邊界清晰、技術(shù)棧有代表性、擴(kuò)展空間大而且最關(guān)鍵的——它不會(huì)讓你陷進(jìn)“為了技術(shù)而技術(shù)”的泥潭。先把這個(gè)系統(tǒng)當(dāng)成一家真實(shí)的花店來(lái)看?;ǖ暌钕聛?lái)必須把進(jìn)銷存管明白貨架上有哪些花、每種花庫(kù)存多少、價(jià)格怎么定、顧客下單后怎么處理、訂單狀態(tài)怎么跟蹤、日常營(yíng)業(yè)額怎么統(tǒng)計(jì)。放在系統(tǒng)里就是商品管理、庫(kù)存管理、購(gòu)物車、訂單流程、用戶注冊(cè)登錄、后臺(tái)數(shù)據(jù)統(tǒng)計(jì)這幾條主業(yè)務(wù)線。你在PPT或論文答辯時(shí)只要把這條邏輯講清楚評(píng)委馬上就能理解你的系統(tǒng)是干什么的而不是聽(tīng)完之后一臉懵。從功能邊界來(lái)看這個(gè)系統(tǒng)天然被分成兩個(gè)角色普通用戶C端和管理員B端。普通用戶的操作路徑非常典型注冊(cè)登錄、瀏覽鮮花列表、按分類篩選或搜索、查看商品詳情、加入購(gòu)物車、提交訂單、查看訂單狀態(tài)。管理員的職責(zé)則是維護(hù)商品分類、上架下架商品、調(diào)整庫(kù)存、處理訂單發(fā)貨、取消、退款、管理用戶狀態(tài)必要時(shí)再配一個(gè)數(shù)據(jù)看板展示銷售統(tǒng)計(jì)。所以這套畢設(shè)表面上是在寫代碼實(shí)際上是在做一個(gè)縮小版電商系統(tǒng)。它麻雀雖小五臟俱全把登錄鑒權(quán)、RBAC權(quán)限模型、Restful接口設(shè)計(jì)、關(guān)系型數(shù)據(jù)庫(kù)建模這些核心知識(shí)點(diǎn)全部覆蓋了。對(duì)于求職面試也有幫助——你完全可以把項(xiàng)目里“購(gòu)物車合并”“訂單狀態(tài)機(jī)”“庫(kù)存扣減”這些細(xì)節(jié)拿出來(lái)和面試官聊比簡(jiǎn)歷上寫一堆“熟悉Spring Boot”有說(shuō)服力得多。順便說(shuō)一下“適合誰(shuí)”。如果你是Java方向的大四學(xué)生或者正在準(zhǔn)備跨項(xiàng)目經(jīng)歷的開(kāi)發(fā)者想用一套業(yè)務(wù)完整、能寫進(jìn)簡(jiǎn)歷、又能在三天內(nèi)跑起來(lái)的管理系統(tǒng)來(lái)?yè)螆?chǎng)面這類題目是性價(jià)比最高的。反觀那些“基于Spring Boot的XX管理系統(tǒng)”蹭熱門詞卻無(wú)業(yè)務(wù)邏輯的題目比如“基于Spring Boot的大學(xué)生兼職平臺(tái)”“基于Spring Boot的體育館預(yù)約系統(tǒng)”往往會(huì)死在需求不清上——你連“兼職平臺(tái)”誰(shuí)發(fā)布任務(wù)、誰(shuí)接單、傭金怎么結(jié)算都想不清楚后面每一步都是加倍的痛苦。2. 技術(shù)選型與架構(gòu)設(shè)計(jì)為什么非Spring Boot不可技術(shù)棧這塊畢設(shè)默認(rèn)不要整花活越主流越好。系統(tǒng)名里寫了“基于Spring Boot Java”這就是在告訴你用Java的主流生態(tài)別搞Python、Node.js、Go這些。原因很簡(jiǎn)單畢業(yè)設(shè)計(jì)的評(píng)審系統(tǒng)里Java和Spring Boot的組合覆蓋率最高查重、答辯、運(yùn)行環(huán)境都成熟出了問(wèn)題網(wǎng)上隨手一搜就有答案不像冷門技術(shù)棧報(bào)個(gè)錯(cuò)都找不到人問(wèn)。2.1 技術(shù)棧組合與各組件職責(zé)后端我建議用一套極簡(jiǎn)組合Spring Boot 2.7.x MyBatis Plus MySQL 8.0 Lombok身份認(rèn)證用Sa-Token或JWT二選一。Spring Boot負(fù)責(zé)把整個(gè)Web應(yīng)用的骨架撐起來(lái)內(nèi)嵌Tomcat讓你不用額外部署容器MyBatis Plus在MyBatis的基礎(chǔ)上給了你單表CRUD的BaseMapper寫增刪改查不用自己拼SQL這對(duì)大量重復(fù)的數(shù)據(jù)操作來(lái)說(shuō)是實(shí)打?qū)嵉男侍嵘?。前端可以是純HTML Bootstrap jQuery開(kāi)發(fā)的后臺(tái)頁(yè)面也可以用Vue Element UI做單頁(yè)應(yīng)用。我的建議是如果目標(biāo)是穩(wěn)妥畢業(yè)優(yōu)先選服務(wù)端渲染頁(yè)面也就是用Thymeleaf模板引擎頁(yè)面直接放在Spring Boot的src/main/resources/templates目錄下控制器返回視圖名就能渲染。別小看這個(gè)選擇它直接決定了你項(xiàng)目的復(fù)雜度天花板——前后端分離意味著你要維護(hù)兩套工程、處理跨域、寫接口文檔對(duì)畢設(shè)來(lái)說(shuō)工作量至少多出40%。如果你已經(jīng)熟練掌握了Vue那就另說(shuō)用它做出來(lái)的界面確實(shí)更現(xiàn)代答辯時(shí)視覺(jué)分更高。數(shù)據(jù)庫(kù)選MySQL不做第二想MySQL 8.0的窗口函數(shù)、JSON類型都是加分項(xiàng)但你用到的基礎(chǔ)還是那幾張表的增刪改查關(guān)聯(lián)查詢。需要注意的一點(diǎn)是MySQL 8.0的驅(qū)動(dòng)類名變成了com.mysql.cj.jdbc.Driver時(shí)區(qū)要顯式配置serverTimezoneAsia/Shanghai很多第一次跑Spring Boot項(xiàng)目的人就死在這個(gè)細(xì)節(jié)上。2.2 架構(gòu)分層與目錄結(jié)構(gòu)畢設(shè)代碼最忌諱的就是把所有邏輯都塞在Controller里表面看著代碼量很多實(shí)際上一坨漿糊答辯時(shí)被問(wèn)“你項(xiàng)目怎么分層的”就會(huì)現(xiàn)出原形。典型的分層結(jié)構(gòu)是四層Controller接收請(qǐng)求、Service寫業(yè)務(wù)邏輯、Mapper處理數(shù)據(jù)庫(kù)交互、Entity對(duì)應(yīng)數(shù)據(jù)庫(kù)表結(jié)構(gòu)。以及一個(gè)放通用結(jié)果的包比如統(tǒng)一的返回體ResultT、全局異常處理器GlobalExceptionHandler。com.example.flowershop ├── controller ├── service │ ├── impl ├── mapper ├── entity ├── config ├── common │ ├── result │ ├── exception └── FlowershopApplication.java這里每個(gè)包都有明確的職責(zé)寫代碼時(shí)不會(huì)迷路論文的“系統(tǒng)設(shè)計(jì)”章節(jié)也有內(nèi)容可寫。Controller層只做三件事接收參數(shù)、調(diào)用Service、包裝返回值。Service層處理業(yè)務(wù)規(guī)則比如下單時(shí)要校驗(yàn)庫(kù)存減庫(kù)存和創(chuàng)建訂單一定要放在同一個(gè)事務(wù)里這些都是Service層的活。在答辯時(shí)你可以主動(dòng)告訴評(píng)委“我的分層結(jié)構(gòu)是參照阿里巴巴開(kāi)發(fā)規(guī)范設(shè)計(jì)的Controller層只做參數(shù)接收與結(jié)果包裝業(yè)務(wù)邏輯全部沉淀在Service層這樣每個(gè)方法都可以做單元測(cè)試?!边@句話一出來(lái)基本上技術(shù)環(huán)節(jié)的評(píng)分就穩(wěn)了。2.3 Spring Boot版本與其他框架的兼容性坑版本選擇是個(gè)無(wú)聲吃人的坑。很多人直接下載了Spring Boot 3.x結(jié)果發(fā)現(xiàn)javax.servlet變成了jakarta.servletMyBatis Plus的舊版分頁(yè)插件直接失效一大堆教程代碼全部報(bào)錯(cuò)項(xiàng)目被卡在建工程的第一個(gè)星期。這不是危言聳聽(tīng)Spring Boot 3.0是一個(gè)分水嶺它把JavaEE規(guī)范從javax遷移到j(luò)akarta命名空間很多第三方框架沒(méi)有跟上。我在這個(gè)項(xiàng)目里推薦的組合是JDK 1.8或JDK 11這兩種對(duì)企業(yè)級(jí)項(xiàng)目最友好且網(wǎng)上資料占比最高Spring Boot 2.7.182.x最后一個(gè)版本修復(fù)了大量漏洞且穩(wěn)定性極佳MyBatis Plus 3.5.3MySQL 8.0Maven 3.8這組版本在大量畢設(shè)項(xiàng)目中驗(yàn)證過(guò)兼容性最好。不要在畢設(shè)階段當(dāng)版本控你淋過(guò)的雨都有前人替你踩完了。提示如果你在pom.xml中引入了spring-boot-starter-parent的版本號(hào)那么依賴的傳遞性版本全部由父POM統(tǒng)管不要手動(dòng)給Spring Boot的starter欽定版本號(hào)否則會(huì)觸發(fā)依賴版本沖突。只需要為MyBatis Plus等非Spring Boot管理的依賴單獨(dú)指定版本即可。2.4 為什么不用前后端分離架構(gòu)我見(jiàn)過(guò)太多人咬著牙上了前后端分離Vue最后死在跨域、Token刷新、打包部署上。對(duì)于畢設(shè)來(lái)說(shuō)簡(jiǎn)單可靠是第一原則。采用Thymeleaf服務(wù)端渲染Controller和頁(yè)面天然同域不存在跨域問(wèn)題部署的時(shí)候直接mvn package打完一個(gè)jar包就完事。你只需要記住能用一套工程解決的問(wèn)題絕不拆成兩套。當(dāng)然如果題目寫了“基于Spring Boot Vue”或者你們學(xué)校明確要求前后端分離那就得用分離結(jié)構(gòu)。后端返回JSON前端用Vue3 Vite Element Plus渲染頁(yè)面。這種情況下你前期要額外做好三件事統(tǒng)一響應(yīng)體ResultT的設(shè)計(jì)code、msg、data三段式、跨域配置CorsFilter或CrossOrigin注解、接口文檔的維護(hù)。這些都做到了分離架構(gòu)才會(huì)真的香。3. 數(shù)據(jù)庫(kù)設(shè)計(jì)與核心表結(jié)構(gòu)這幾張表設(shè)計(jì)對(duì)了系統(tǒng)就成功一半數(shù)據(jù)庫(kù)設(shè)計(jì)是畢設(shè)的重頭戲也是論文里占篇幅最多的一部分。E-R圖、數(shù)據(jù)字典、表結(jié)構(gòu)說(shuō)明都是從這里出的。我下面直接講核心表的設(shè)計(jì)思路你照著這個(gè)骨架去填充自己的業(yè)務(wù)字段就行。3.1 六張核心業(yè)務(wù)表用戶表user簡(jiǎn)單的字段就夠用id、username、password、avatar、phone、role、create_time。密碼一定要加密存儲(chǔ)用MD5加鹽或BCrypt。如果你在論文中寫“用戶密碼明文存儲(chǔ)”答辯時(shí)必被問(wèn)“安全性怎么考慮”這就很尷尬了。正確做法是引入spring-boot-starter-security或者只用hutool的DigestUtil做MD5加鹽代碼量不大但回答“密碼安全”這個(gè)問(wèn)題時(shí)瞬間就有底氣了。分類表category這個(gè)表結(jié)構(gòu)非常簡(jiǎn)單id、name、sort、create_time。注意加一個(gè)sort排序字段因?yàn)轫?yè)面上要按順序展示分類“全部鮮花”之類的前端寫死即可。商品表product這是信息量最大的一張表。核心字段有id、category_id、name、cover_image、images多個(gè)圖片用JSON或逗號(hào)分隔、price、original_price、stock、unit單位如“枝”“束”“盆”、sales_count、status0下架/1上架、description、create_time。這里有兩個(gè)細(xì)節(jié)值得寫進(jìn)論文cover_image只存單張封面圖images用JSON數(shù)組存輪播圖sales_count記錄銷量用于“熱銷排行”排序status字段控制上下架不用的商品直接下架而不是刪除保留歷史數(shù)據(jù)。購(gòu)物車表cartid、user_id、product_id、quantity、checked是否選中、create_time。需要注意唯一約束同一用戶同一商品不能插入兩行如果用戶重復(fù)點(diǎn)擊“加入購(gòu)物車”應(yīng)該執(zhí)行數(shù)量加一而不是插入新記錄。這是數(shù)據(jù)庫(kù)層面約束和代碼層面邏輯的結(jié)合點(diǎn)。訂單表ordersorder_id訂單編號(hào)業(yè)務(wù)上不能用自增id暴露訂單量、user_id、total_amount、pay_amount、status、address_id或receiver_name/receiver_phone/receiver_address、remark、create_time、pay_time、ship_time、finish_time。訂單狀態(tài)是重點(diǎn)0待付款、1待發(fā)貨、2已發(fā)貨、3已完成、4已取消、5退款中。有時(shí)間戳字段記錄狀態(tài)變化的關(guān)鍵節(jié)點(diǎn)這在數(shù)據(jù)分析中很有價(jià)值。訂單明細(xì)表order_itemid、order_id、product_id、product_name、product_image、price、quantity、total_price。為什么在這里冗余product_name和product_image因?yàn)樯唐访Q和圖片隨時(shí)可能被修改訂單屬于交易快照必須記錄下單那一刻的信息。這個(gè)冗余設(shè)計(jì)在答辯時(shí)會(huì)成為你的加分點(diǎn)你要說(shuō)出“快照避免歷史訂單被商品改動(dòng)污染”這個(gè)理由。評(píng)論表commentid、user_id、product_id、content、rating、create_time。若系統(tǒng)規(guī)模小可以不做但如果想要界面豐滿一點(diǎn)一定要有評(píng)論功能。3.2 訂單狀態(tài)機(jī)設(shè)計(jì)訂單狀態(tài)不是簡(jiǎn)單的幾個(gè)數(shù)字而是一個(gè)狀態(tài)機(jī)。我在設(shè)計(jì)這個(gè)項(xiàng)目時(shí)用了一組常量去定義狀態(tài)然后在Service層嚴(yán)格約束狀態(tài)流轉(zhuǎn)路徑1待付款→ 2待發(fā)貨→ 3已發(fā)貨→ 4已完成 ↓ ↓ 5已取消 6退款這里有一個(gè)隱藏很深的技術(shù)點(diǎn)狀態(tài)流轉(zhuǎn)要在代碼里做校驗(yàn)。比如一個(gè)訂單當(dāng)前狀態(tài)是“已發(fā)貨”用戶就不能直接調(diào)取消接口把狀態(tài)改到5否則整個(gè)業(yè)務(wù)邏輯就亂了。我在OrderService里寫了一個(gè)changeOrderStatus(orderId, expectedStatus, targetStatus)方法用樂(lè)觀鎖的思想去校驗(yàn)當(dāng)前狀態(tài)確保狀態(tài)只能按圖中箭頭方向轉(zhuǎn)移。這個(gè)設(shè)計(jì)可以完整地寫進(jìn)論文的“訂單模塊設(shè)計(jì)”小節(jié)既體現(xiàn)出你對(duì)業(yè)務(wù)的理解也展示了你對(duì)并發(fā)數(shù)據(jù)一致性的基本認(rèn)知。3.3 外鍵與索引策略很多人在自制表結(jié)構(gòu)時(shí)喜歡亂加外鍵但真正到了企業(yè)級(jí)開(kāi)發(fā)中外鍵通常是避免使用的。原因很簡(jiǎn)單外鍵約束會(huì)帶來(lái)額外的鎖開(kāi)銷影響高并發(fā)寫入性能而且分布式場(chǎng)景下外鍵根本沒(méi)法用。畢設(shè)數(shù)據(jù)庫(kù)設(shè)計(jì)的最佳實(shí)踐是邏輯外鍵即在order_item表中有一個(gè)product_id字段指向product表但不在數(shù)據(jù)庫(kù)層面創(chuàng)建FOREIGN KEY約束由應(yīng)用代碼來(lái)保證引用完整性。索引方面基本規(guī)則是主鍵一定是聚集索引user_id、order_id、category_id、product_id這些高頻查詢字段要建普通索引登錄名username要建唯一索引防止重復(fù)。使用聯(lián)合索引時(shí)要注意最左前綴原則比如查詢條件是“某個(gè)分類下價(jià)格區(qū)間內(nèi)的商品”那么應(yīng)該建(category_id, price)的聯(lián)合索引而不是單獨(dú)建兩個(gè)索引。4. 核心功能模塊實(shí)現(xiàn)要點(diǎn)從登錄到下單的完整鏈路這一部分我就直接上實(shí)際編碼過(guò)程中的核心思路了每個(gè)功能模塊我都會(huì)點(diǎn)出該踩的坑和該注意的設(shè)計(jì)點(diǎn)。4.1 注冊(cè)登錄Session還是JWT若采用前后端不分離的Thymeleaf方案用Session保存登錄態(tài)是最簡(jiǎn)單自然的。登錄成功后session.setAttribute(userId, userId)在需要登錄的接口上通過(guò)攔截器檢查Session中是否有用戶信息沒(méi)有就重定向到登錄頁(yè)。前后端分離方案則用JWT。用戶登錄成功后后端生成一個(gè)Token返回前端前端存在localStorage中并在每次請(qǐng)求的Headers里攜帶Authorization: Bearer token后端寫一個(gè)JwtInterceptor解析Token。JWT的好處是無(wú)狀態(tài)缺點(diǎn)是你沒(méi)法服務(wù)端主動(dòng)踢人下線且一定要設(shè)置過(guò)期時(shí)間常見(jiàn)的是2小時(shí)不然Token泄露后等同裸奔。我在這個(gè)項(xiàng)目中用的是JWT Sa-Token。Sa-Token是一個(gè)輕量級(jí)的Java權(quán)限認(rèn)證框架比起Spring Security其配置要簡(jiǎn)單太多包含登錄認(rèn)證、權(quán)限認(rèn)證、Session會(huì)話、踢人下線等功能API設(shè)計(jì)非常直觀幾個(gè)核心方法就能搞通一套認(rèn)證鑒權(quán)體系。最關(guān)鍵的是畢設(shè)項(xiàng)目里它的中文文檔極其詳盡遇到問(wèn)題查起來(lái)不費(fèi)勁。若你想在論文里裝點(diǎn)門面可以寫“使用Sa-Token實(shí)現(xiàn)了基于Token的無(wú)狀態(tài)認(rèn)證機(jī)制支持分布式部署場(chǎng)景下的會(huì)話共享”這比“用Session存了一下”要高級(jí)得多。4.2 角色權(quán)限管理員和用戶的接口隔離用戶和管理員的操作權(quán)限天然不同。簡(jiǎn)單方案是在后端接口上做區(qū)分/admin/**路徑下的接口全部走管理員攔截器校驗(yàn)當(dāng)前登錄用戶角色是否為管理員其余路徑普通用戶可訪問(wèn)。注意這里一定要處理未登錄用戶訪問(wèn)購(gòu)物車、下單接口的情況不要返回500錯(cuò)誤而應(yīng)該返回統(tǒng)一的JSON提示“請(qǐng)先登錄”。MyBatis Plus的多租戶和邏輯刪除功能也可以順手用上。邏輯刪除就是在實(shí)體類上給deleted字段加TableLogic注解刪除操作變成更新操作數(shù)據(jù)不會(huì)真消失這在畢設(shè)里是安全性上的一個(gè)加分點(diǎn)寫論文時(shí)也能體現(xiàn)你對(duì)數(shù)據(jù)完整性的思考。4.3 購(gòu)物車與下單流程事務(wù)與并發(fā)購(gòu)物車邏輯不復(fù)雜難點(diǎn)集中在“提交訂單”這個(gè)操作上。一個(gè)正確下單流程應(yīng)該是根據(jù)購(gòu)物車選中的商品計(jì)算出總金額凍結(jié)商品庫(kù)存預(yù)扣庫(kù)存插入訂單表和訂單明細(xì)表清空購(gòu)物車中已下單的商品提交事務(wù)這里最關(guān)鍵的一點(diǎn)是第2步和第3步必須放在同一個(gè)事務(wù)里。如果在減了庫(kù)存之后、插入訂單之前系統(tǒng)報(bào)錯(cuò)但事務(wù)沒(méi)有回滾就會(huì)出現(xiàn)“庫(kù)存扣了但訂單沒(méi)生成”的臟數(shù)據(jù)。解決辦法就是加Transactional注解。但Transactional有個(gè)大坑——它默認(rèn)只對(duì)RuntimeException進(jìn)行回滾如果你在方法中捕獲了異常但沒(méi)有拋出來(lái)事務(wù)是不會(huì)回滾的。正確做法是try { ... } catch (Exception e) { TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); }或者直接不捕獲異常讓它向上拋。另一個(gè)隱藏問(wèn)題是庫(kù)存超賣。高并發(fā)場(chǎng)景下多個(gè)用戶同時(shí)購(gòu)買同一商品兩條update語(yǔ)句同時(shí)執(zhí)行可能把庫(kù)存減成負(fù)數(shù)。畢設(shè)項(xiàng)目雖然不會(huì)有真正的高并發(fā)壓測(cè)但你只要在簡(jiǎn)歷或面試中談到這個(gè)場(chǎng)景就該知道解決方案。最簡(jiǎn)單的方式是在SQL上做限制UPDATE product SET stock stock - #{num} WHERE id #{id} AND stock #{num}影響行數(shù)為0就說(shuō)明庫(kù)存不足需要提示用戶。這條SQL被很多企業(yè)項(xiàng)目用來(lái)做庫(kù)存扣減簡(jiǎn)單有效。4.4 后臺(tái)管理數(shù)據(jù)看板和文件上傳后臺(tái)管理模塊通常用Bootstrap后臺(tái)模板搭界面但推薦使用一個(gè)簡(jiǎn)單的可視化圖表庫(kù)ECharts。引入ECharts之后后端提供一個(gè)統(tǒng)計(jì)接口按周統(tǒng)計(jì)訂單量、按分類統(tǒng)計(jì)銷售額前端用Ajax拉數(shù)據(jù)渲染成折線圖或餅圖這樣一個(gè)“數(shù)據(jù)報(bào)表”功能瞬間撐起后臺(tái)管理頁(yè)面的專業(yè)度。整個(gè)統(tǒng)計(jì)接口不用寫復(fù)雜的SQL用MyBatis Plus的QueryWrapper配合GROUP BY就能搞定注意SQL里DATE_FORMAT的使用。文件上傳功能基本逃不掉鮮花商品的圖片總得有地方傳。簡(jiǎn)單可靠方案是上傳到本地服務(wù)器指定目錄然后配置靜態(tài)資源映射Configuration public class WebConfig implements WebMvcConfigurer { Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler(/upload/**) .addResourceMapping(/upload/**) .addResourceLocations(file: System.getProperty(user.dir) /upload/); } }這里記錄一個(gè)極易踩的坑IDEA中項(xiàng)目重新編譯時(shí)target目錄會(huì)被清理有人把圖片直接放在src/main/resources/static/upload里會(huì)時(shí)常丟失。正確姿勢(shì)是將上傳路徑徹底獨(dú)立于項(xiàng)目目錄之外比如在項(xiàng)目根目錄建一個(gè)upload/文件夾并且這個(gè)路徑最好在配置文件中可配置。5. 畢設(shè)論文撰寫與項(xiàng)目文檔組織代碼只是工作量的一半代碼寫完了不算完畢業(yè)設(shè)計(jì)的最終呈現(xiàn)是論文、答辯PPT和系統(tǒng)演示。論文寫得好不好直接影響導(dǎo)師對(duì)你工作量的判斷。我見(jiàn)過(guò)太多代碼寫得很扎實(shí)、論文卻邏輯混亂的學(xué)生最后只拿到中等成績(jī)非常可惜。5.1 論文大綱與每個(gè)章節(jié)核心內(nèi)容標(biāo)準(zhǔn)論文結(jié)構(gòu)通常包含以下章節(jié)每一章我都標(biāo)注了要寫的內(nèi)容重點(diǎn)第一章 緒論研究背景與意義、國(guó)內(nèi)外研究現(xiàn)狀、論文組織結(jié)構(gòu)。寫背景不能空談“隨著互聯(lián)網(wǎng)發(fā)展”而是要結(jié)合具體的鮮花零售行業(yè)場(chǎng)景比如鮮花作為非標(biāo)品的損耗率高、實(shí)體花店輻射范圍有限、即時(shí)配送需求強(qiáng)烈。第二章 相關(guān)技術(shù)介紹對(duì)Spring Boot、MyBatis Plus、MySQL、Thymeleaf或Vue的介紹。不要照抄框架官網(wǎng)簡(jiǎn)介要寫清楚你用它干了什么、為什么選它不選其他。第三章 需求分析可行性分析、功能需求用例圖用例描述、非功能需求性能、安全、易用性。第四章 系統(tǒng)設(shè)計(jì)系統(tǒng)架構(gòu)圖、功能模塊圖、E-R圖、數(shù)據(jù)庫(kù)表結(jié)構(gòu)設(shè)計(jì)。這一章是論文篇幅最大的部分務(wù)必把表結(jié)構(gòu)的設(shè)計(jì)理由講清楚。第五章 系統(tǒng)實(shí)現(xiàn)按模塊展示核心代碼截圖 運(yùn)行效果截圖 關(guān)鍵邏輯說(shuō)明。注意代碼不要貼一大堆沒(méi)用的重復(fù)代碼要選擇每個(gè)模塊里面最有技術(shù)含量的那一段通常是事務(wù)處理、權(quán)限校驗(yàn)、庫(kù)存扣減這幾類邏輯。第六章 系統(tǒng)測(cè)試測(cè)試用例表格 測(cè)試結(jié)果截圖。多寫幾條邊界值和異常用例比寫“登錄成功”這種沒(méi)營(yíng)養(yǎng)的用例強(qiáng)得多。畫用例圖、E-R圖時(shí)不要用Word自帶的繪圖工具丑到會(huì)讓導(dǎo)師懷疑你的審美。推薦用processon.com在線畫圖或者PlantUML快捷鍵畫出來(lái)再截圖貼進(jìn)Word專業(yè)度立馬上來(lái)。架構(gòu)圖和時(shí)序圖用draw.io或者Visio都可以。5.2 開(kāi)題報(bào)告與任務(wù)書怎么寫開(kāi)題報(bào)告的核心是研究?jī)?nèi)容和預(yù)期成果。研究?jī)?nèi)容部分不要只寫一句“開(kāi)發(fā)鮮花銷售系統(tǒng)”而是要拆成幾塊比如“基于RBAC模型的用戶權(quán)限管理”“基于狀態(tài)機(jī)的訂單全生命周期管理”“基于ECharts的銷售數(shù)據(jù)可視化分析”。預(yù)期成果部分寫清楚交付物可運(yùn)行的Web系統(tǒng)一套、項(xiàng)目源碼、數(shù)據(jù)庫(kù)腳本、以及一篇不少于XX字的畢業(yè)論文。好的開(kāi)題報(bào)告是在任務(wù)明確的前提下讓導(dǎo)師知道你的工作量是清晰可量化的。5.3 答辯PPT的邏輯線答辯PPT我建議控制在15頁(yè)以內(nèi)核心邏輯線是問(wèn)題花店管理痛點(diǎn)→ 方案系統(tǒng)能做什么→ 技術(shù)怎么實(shí)現(xiàn)的→ 演示跑一遍關(guān)鍵流程。時(shí)間線大概是5分鐘講解 3分鐘演示 2分鐘回答問(wèn)題。PPT頁(yè)面不要貼大段代碼要去貼關(guān)鍵截圖。比如訂單模塊貼一張“訂單狀態(tài)狀態(tài)機(jī)圖”比貼20行代碼更能展示你的理解。每一頁(yè)講解完畢都要“挖一個(gè)坑”讓評(píng)委老師順著你的思路來(lái)問(wèn)比如你講完庫(kù)存扣減的WHERE條件導(dǎo)師大概率會(huì)追問(wèn)“高并發(fā)情況下會(huì)不會(huì)有問(wèn)題”你接著就把樂(lè)觀鎖那套講出來(lái)。這種節(jié)奏在答辯中被稱作“主動(dòng)輸出”比被導(dǎo)師牽著鼻子問(wèn)要舒服得多。6. 常見(jiàn)問(wèn)題與Debug實(shí)錄運(yùn)行的每一步都可能踩坑開(kāi)發(fā)過(guò)程中有幾個(gè)高頻bug幾乎是每個(gè)做Spring Boot畢設(shè)的人都會(huì)遇到的。我盤點(diǎn)了一些最常見(jiàn)的場(chǎng)景、原因和解決方案做成一張速查表供你避坑。6.1 環(huán)境與項(xiàng)目啟動(dòng)類問(wèn)題第一個(gè)坑IDEA中Spring Boot項(xiàng)目啟動(dòng)失敗端口被占用。Error信息會(huì)提示Port 8080 was already in use。根本原因一般是后臺(tái)有殘留的Java進(jìn)程或者另一個(gè)項(xiàng)目占用了端口。解決辦法是netstat -ano | findstr 8080查PIDtaskkill /F /PID pid殺掉進(jìn)程。也可以在application.yml中改server.port換一個(gè)端口。第二個(gè)坑數(shù)據(jù)庫(kù)連接失敗 The server time zone value ?D1ú±ê×?ê±??。亂碼樣的時(shí)區(qū)錯(cuò)誤讓很多人以為是編碼問(wèn)題其實(shí)只是MySQL連接URL缺少時(shí)區(qū)參數(shù)。在jdbc連接串后加上?serverTimezoneAsia/ShanghaiuseUnicodetruecharacterEncodingutf8即可。第三個(gè)坑MyBatis Plus查詢報(bào)錯(cuò) Invalid bound statement (not found)。原因通常是Mapper接口和XML映射文件沒(méi)有綁定成功。檢查一下MapperScan是否掃描到了Mapper所在的包路徑XML文件中的namespace是否和Mapper接口的全限定名完全一致配置文件里mapper-locations路徑是否指向classpath*:mapper/*.xml。第四個(gè)坑Maven依賴下載速度極慢。換上阿里云鏡像倉(cāng)庫(kù)這是每個(gè)Java人必備的常識(shí)。在Maven安裝目錄/conf/settings.xml中加入mirror idaliyunmaven/id mirrorOfcentral/mirrorOf name阿里云公共倉(cāng)庫(kù)/name urlhttps://maven.aliyun.com/repository/central/url /mirror6.2 業(yè)務(wù)功能實(shí)現(xiàn)類問(wèn)題登錄功能邏輯看似沒(méi)問(wèn)題但始終進(jìn)不去系統(tǒng)。排查步驟先確認(rèn)前端表單的name屬性與后端實(shí)體字段對(duì)齊。典型的錯(cuò)誤場(chǎng)景是用Bootstrap模板時(shí)用戶名輸入框的nameusername卻寫成了nameuserName后端RequestBody解析時(shí)找不到對(duì)應(yīng)字段到位就是null。這種問(wèn)題用瀏覽器F12查看Network里的請(qǐng)求Payload一眼就能看穿。下單時(shí)庫(kù)存減少但訂單表里沒(méi)有數(shù)據(jù)。這個(gè)就是事務(wù)問(wèn)題。按我前面說(shuō)的檢查Transactional注解是否加在了public方法上以及異常是否被吞掉??梢耘R時(shí)在Catch里加日志輸出確認(rèn)事務(wù)是否回滾。Thymeleaf直接返回JSON字符串而不是頁(yè)面。要是你發(fā)現(xiàn)瀏覽器顯示的是大括號(hào)里一串JSON說(shuō)明Controller上多了ResponseBody注解或類上有RestController。Thymeleaf是視圖解析器兩者不能混用。要么去掉ResponseBody要么改方法返回值為正常頁(yè)面視圖。圖片上傳后訪問(wèn)404。這多半是靜態(tài)資源映射沒(méi)有生效檢查WebMvcConfigurer配置是否正確路徑拼寫、上傳文件所在目錄是否存在以及前端img標(biāo)簽的路由是否與addResourceHandler中的模式匹配。如果用了Nginx或Tomcat的外置部署方式還需檢查路徑是否映射到了外部文件夾。6.3 環(huán)境遷移部署的常見(jiàn)翻車點(diǎn)如果你的系統(tǒng)換了一臺(tái)電腦就跑不起來(lái)了大概率是三個(gè)原因。一是JDK版本對(duì)不上本地用11編譯、服務(wù)器只有8會(huì)報(bào)UnsupportedClassVersionError二是數(shù)據(jù)庫(kù)遷移時(shí)只導(dǎo)了業(yè)務(wù)數(shù)據(jù)沒(méi)把函數(shù)的定義一起導(dǎo)出三是application.yml里寫了本機(jī)絕對(duì)路徑換機(jī)器后找不到文件。規(guī)范做法是將所有配置文件中的路徑改成相對(duì)路徑數(shù)據(jù)庫(kù)連接信息和文件路徑統(tǒng)一提取到配置文件中部署時(shí)通過(guò)外部配置覆蓋。7. 項(xiàng)目擴(kuò)展與定制方向從“能畢業(yè)”到“有亮點(diǎn)”如果你的定位只是“能畢業(yè)”那做到上面這些就已經(jīng)完全夠用了。但如果你想拿高分或者想把項(xiàng)目作為求職簡(jiǎn)歷的項(xiàng)目經(jīng)歷來(lái)寫我建議你再額外做以下擴(kuò)展這些擴(kuò)展技術(shù)成本不大但呈現(xiàn)出的效果完全不一樣。7.1 功能性擴(kuò)展方向鮮花推薦功能這不需要多高深的算法。最簡(jiǎn)單的實(shí)現(xiàn)方式是“基于購(gòu)買記錄的協(xié)同過(guò)濾”統(tǒng)計(jì)用戶歷史購(gòu)買的分類分布在首頁(yè)推薦其最常購(gòu)買分類下的熱銷商品。SQL用GROUP BY category_id ORDER BY COUNT(*) DESC就能提取用戶偏好分類然后再查該分類銷量前N的商品作為推薦結(jié)果。論文里你可以把這個(gè)模塊稱為“基于用戶行為的個(gè)性化推薦系統(tǒng)”是不是檔次一下就上去了批量導(dǎo)入導(dǎo)出用EasyExcel組件給商品模塊增加Excel批量導(dǎo)入給訂單模塊增加導(dǎo)出功能。這對(duì)管理員來(lái)說(shuō)是非常實(shí)用的功能在答辯現(xiàn)場(chǎng)演示“一鍵導(dǎo)入500條商品數(shù)據(jù)”絕對(duì)比手動(dòng)一條一條添加更有說(shuō)服力。數(shù)據(jù)備份與恢復(fù)做一個(gè)小工具頁(yè)面核心邏輯是調(diào)用MySQL的mysqldump命令進(jìn)行定時(shí)備份備份文件存到服務(wù)器目錄中再在管理頁(yè)面保留最近N份備份列表。這個(gè)功能對(duì)花店老板來(lái)說(shuō)可能平時(shí)感受不到但它屬于企業(yè)級(jí)應(yīng)用必備的安全能力放在論文中“系統(tǒng)應(yīng)用與部署”這一塊很加分。7.2 技術(shù)性擴(kuò)展方向接口緩存對(duì)商品分類、熱銷榜單這種讀多寫少且不經(jīng)常變化的數(shù)據(jù)引入Spring Cache Redis緩存緩存命中率提升、數(shù)據(jù)庫(kù)壓力下降這是一個(gè)非常標(biāo)準(zhǔn)的企業(yè)級(jí)解決方案寫進(jìn)論文里就能體現(xiàn)出你在高性能設(shè)計(jì)上有意識(shí)。限流與熔斷在提交訂單接口上加一個(gè)簡(jiǎn)單限流使用Guava RateLimiter或Redis計(jì)數(shù)器實(shí)現(xiàn)滑動(dòng)窗口限流。答辯時(shí)你就能說(shuō)“防止惡意刷單”這比單純說(shuō)“我做過(guò)XX系統(tǒng)”顯得更貼近實(shí)際生產(chǎn)環(huán)境。部署Docker化把Spring Boot應(yīng)用打成Docker鏡像再寫一個(gè)docker-compose.yml把MySQL、Redis、應(yīng)用一次拉起。這套技能棧是當(dāng)前企業(yè)的主流部署方式寫到簡(jiǎn)歷里非常硬核。雖然畢設(shè)演示不一定需要Docker但你在項(xiàng)目文檔中附上部署的Dockerfile和啟動(dòng)腳本體現(xiàn)的是工程化思維。每個(gè)擴(kuò)展方向都值得花心思完善。我個(gè)人的體會(huì)是畢設(shè)項(xiàng)目的價(jià)值不在于炫技而在于每個(gè)功能點(diǎn)都能講清楚“為什么這樣做”。當(dāng)你把底層邏輯想透了無(wú)論是答辯還是面試問(wèn)到你任何一個(gè)細(xì)節(jié)你都能從容接住這個(gè)項(xiàng)目才會(huì)成為你職業(yè)道路上一個(gè)真正加分的作品。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
五月丁香啪啪综合| 五月丁香综合在线| 91大操| 婷婷爱婷婷| 99热在线看| 五月天社区| 色9色| 一起操最新网址| 天天综合久久| 婷婷成人五月天成人文学小说| 欧美精品A片一区在线观看| 99热精品在线| 91日日日| 玖玖热视频| 操碰99| 国产做爰视频免费播放| 99爱视频在线| 激情五月综合网最新| 武则天精品久久| 夜夜爽日日躁| 色婷婷狠狠干| 日韩一66精品| 婷婷五月激情热播| 色播五月婷婷| 思思99久久| 99精品视频在线观看| 欧美视频在线观看噜噜| 精品视频99看在线视频| 色色精品色| 91pornav在线| 丁香伊人五月色婷婷五十路| 国内精品免费一区二区2009| 97操资源婷婷| 黄色AAAA韩国guochansanji| 香蕉曰比| 亚洲国产网址| 男人的天堂97| 十区AV| 九九9久九9国产视频| 久久人人九九| 婷婷丁香五月亚洲17cao| 狠狠五月天| 激情婷婷五月天伊人在线观看| 欧美人人女女精品综合五月天| 国外亚洲成AV人片在线观看| 丁香五月花| 九九亚洲视频| 激情六月婷婷| AA片在线观看视频在线播放| 先锋av性爱成人电影| 七七色色综合| 五月丁香亭亭操逼| 77799热| 青草青草久热这里只有精品| 性爱先锋AV| 久久久五月五丁香| 性色欲情 网站| 五月婷婷婷综合网| 激情五月天久久丁香| 综合激情在线| 激情99。| 国产精品色婷婷AV综合色色| 国产成人AV在线播放| 99热这里是精品| 五月激情综| 色99欧洲色19| 欧美丁香五月| 综合激情站| 国产亚洲在线| 麻豆AV一区二区三区| 丁香九月婷婷| 丁香婷婷激情四射五月| 久99久在线| 九九久久综合| 激情综合网亚洲色图| 色综合天天网| 夜夜骑天天操| 久久免片| 综合 蜜月 婷婷| www.成人婷婷综合| 草草视频91| 深夜男女福利刺激影院一区| 激情五月天影院| 色噜噜狠狠色综无码久久合欧美| 日本色啪| 日本三级黄色大片| 激情网综合| 色综合久久88色综合天天99| 激情五月天小说网| 亚洲色频| 五月丁香拍拍激情综合| 九九热婷婷| 婷婷丁香在线| 成人无码中文| 五月天国产成人| 狠狠色官网| 99日这里只有精品| 亚洲色在线观看| www.97视频| 天天日P天天射P| 久青操| 夜夜骑日日操| www99在线观看视频| 久久精彩免费视频| av在线免费网站| 五月丁香猫咪久久婷婷综合视频激情四射网入口 | 五月天激情四射网站| 色婷婷久久| 风流少妇A片一区二区蜜桃| 色了色综合| 激情五月天影院| 五月色综合| 67久久| 毛片新网地| 九九综合精品| www色色com| 天天狠狠夜夜狠狠2023| sewuyuetingtingiii| 亚洲丁香五月综合| 五月激情偷拍婷婷| 久久婷五月综合| 久热久| Aα在线免费观看| 涩五月婷婷| 婷婷夜夜夜夜| 亚洲成人无码专区| 亚洲精99| 99爱在线视频| www激情| 激情五月丁香综合网站 | 午夜丁香综合婷婷| 五月婷婷在线观看| 欧美熟女99| 97碰 在线视频观看| 欧美97色| 97色在线视频| 大香蕉99热| 五月婷婷免费看| 五月丁香综合激情| 99色6爱9热| 欧美性爱5月天天天看| 丁香婷婷五月六月久久| 久久婷婷丁香视频网| 婷婷深爱色五月| 激情四射婷婷| www.婷婷亚洲基地| 日本综合久久| 性爱先锋AV| 五月婷婷六月激情| 丁香婷婷91在线观看视频| 天天碰天天插天天操| 精品一二三区久久AAA片| 狠狠色网| 婷婷色五月激情强奸四射| 久9热视频在线| WWW、日本色丁香co m| 久久新地址| 五月花激情网| 五月婷婷黄色| 久久久久久久丁香五月天婷婷| 成人网在线视频| 亚洲无码www| www.99成人视频| 五月婷婷 激情按摩| 天色综合网站| 九九热内射| 呦呦v线| 亚洲人妻av伦理| 亭亭玉立国色天香| 青青青在线视频国产| 久热只有这里有精品| 色五月91| 激情婷婷丁香色情五月天| 九九热免费视频| 亚洲色婷婷色| 九九婷婷激情综合网| 日日噜狠狠色综合久久| 婷婷成人在线| 99爱视频在线| 激情美女五月天激情在线| 亚洲乱码日产精品BD| 色99热| 婷婷性爱网| 久久久WWW| 九九九九这里只有精品| 久久这里99| www.com在线操视频免费观看| 无码人妻一区| 天搞天天天天天| 亚洲婷婷五月天| 色综合日日| 激情影院69| 99热精品在线观看| 一本道综合网| 激情综合五月婷婷| 99日本精品视频热| 超碰婷婷五月| 亚洲综合激情五月久久| 婷婷五月天高清无码| 五月停停色| 五月激情六月丁香| 色五月在线观看| 色婷婷A| 五月天久久久| 99久久这里只有精品| 大香蕉婷婷色| 色色草97| 内射人妻视频国内| 在线色色| 欧美人妻一区二区| 五月综亚洲| 97碰碰叉| 亚洲乱码日产精品BD| 五月婷婷丁香五月亚洲色| 乱精品一区字幕二区| 五月花综合视频| 天天爽夜夜爽夜夜爽精品| 久热一本| 可以看的AV| 激情五月天婷婷久久久久久久久久久| 国产色色小草视频| 国产黄大片在线观看画质优化 | 五月亭亭直播| 91嫩草国产线观看亚洲一区二区| 五月丁香综合| 五月丁香趴趴| 丁香五月亚洲综合丝袜| av在线资源| 亚州色色色| 五月天色婷婷激情综合| 97狠狠色| 综合性爱网| 日本乱子人伦在线视频| 夜夜撸日日操| 五月天婷婷丁香导航| 色久在| 亚洲操B视频| 97在线观看| 婷婷大香蕉| 狠狠草狠狠草| 丁香五月色欲| 五月激情综合深爱| 欧美97p| 五月丁香激情啪啪| 久久资源网五月婷| 黄色五月婷婷| 香蕉婷婷色五月| 婷婷五月丁香综合瑟瑟| 牛牛澡牛牛爽| 久热这里只有精品视频6| 精品久久9| 色色综合热| 中文字幕网伦射乱中文| 国产真人做爰视频免费| 疯狂做受XXXX高潮A片| 亚洲99综合| 婷婷狠狠操| 五月天停停成人网| 思思热99在线视频| 色五月女| 丁香五月天.com| 99热久久最新地址| 狠狠操.COM| 深爱激情小说五月婷婷| www狠狠| 五月丁香少妇A| 这里有精品99| 五月www| 精品久久人妻热| 五月激情丁香五月| 五月婷婷熟女| 国产婷婷五月天| 国精产品一区二区三区| 狠狠草狠狠草| 亚洲激情网| 九九综合九九| 91chinese在线| 久久曰曰| 草榴成人影片| 婷婷伊人75| 丁香五月综合激情性爱| 婷婷五月四狠狠| 色色色综合网| 日韩成人精品一区久久久久| 79精品视频在线观看,| 丁香成人综合| 天天婷婷色六月| 丁香婷婷视频一区二区| 婷婷丁香宗合888| 99人妻碰碰碰久久久久禁片| 国产成人一区二区三区在线观看| 九九成年视频| 五月婷婷色色色| 激情综合青草| 开心五月天激情网站| 开心五月网| 欧美色图天堂网| 任你爽视频| 激情五月黄色| 色色激情网| 激情网五夜婷婷| 午夜九九电影| 夜夜干 夜夜操| 久久99久久99精品免观看粉嫩| 久操人妻| av五月丁香婷婷网| 国产五月丁香在线| 99网99热| 国精产品一区一区三区免费视频| 一起肏在线视频| 日本啪啪天堂| 久久婷婷六月综合| 日本色色色| 色五月激情综合网站| 91超级碰在线视频| 九九sese| 日韩啪| 亚洲成人影视在线| 天天操B| 夜夜操少妇| 狠狠久久婷婷| 久久这有这里精品| 99操免费视频| 色欲久久99精品久久久久久| 九九熱最新視頻| 五月丁香花激情综合网| 99色色| 久久人视频| 国产亚洲99| 丁香五月婷婷影院| 99噜噜噜在线播放| www,com,五月色色| 伊人AV五月婷| 97日本操| 五月丁香五月丁香| 99熟女啪啪视频| 九九九九精品精| 91丨九色丨熟女| 激情五月婷婷老师| 日韩久久成人| 丁香五月天色综合| 五月天激情小说| 婷婷五月六月丁香| 国产一级婬片毛片| 色婷婷五月综合色婷婷| 久久99视频| 小色小蛇伊人婷婷色香五月| 天天爽天天爽| 天天夜天天色天天| 亚洲综合九九| www九九热| 天天做天天爱天天日| 丁香五月激情在线| 伊人在线大香蕉网| 日日艹思思热| 中文字幕成人版| 激情文学久久| 国产精品操| 激情www| 精品一二三区久久AAA片| 国产综合视频婷婷| 日韩AV片| 中文字幕在线播放视频| 五月天com| 欧美天堂久久| 五月丁香福利| 综合激情五月四射婷婷| 99re久久| 婷婷精品在线| 激情婷婷五月丁香啪啪啪| 国产色色网址网站| 老美AA片| 欧洲第一久色| 碰碰碰91| 99re热在线观看| 91日韩美女被插视频| 九九这里都是精品| 亚洲成人网站在线| 俺去也五月天婷婷| 思思热国产视频| 久久婷婷色| 亚洲色婷婷色| 久久婷青青草原| 久热这里只有精品66| 色婷婷六月| 天天操夜夜爽| 97干综合网| 激情 婷婷| 色婷婷啪啪啪啪啪啪| www,com,五月色色| 九九色综合| 婷婷五月天伊人| 韩国情人在线电视剧免费观看高清版全集| 欧美交换配乱吟粗大25P| VA国产在线综合网站| 九九热在线视频| 天天久久综合| 欧美色色色色色色| 91欧美| 色五月丁香五月激情五月激情| 亚洲五月婷| 丁香婷婷五月天色播| 91聚色综合网| 91爱啪啪| 99热精品一| www:99热视频| www.99视频| 爱性综合网| 五月日韩中文字幕| 日韩成人AV在线播放| 五月五婷婷网| 一本九九色| 激情久久综合| 丁香六月天堂| 久久这里都是精品免费| 国产性爱色| 九九热免费视频| 婷婷五月天六月| 人人九色| 婷婷综合九色伊人| 色欲av伊人久久大香线蕉影院| 夜夜人妻五月天| WWW色色色COM| 婷婷亚洲天堂| CAOBIBI| 色婷婷影视| 五月婷婷激情久久| 熟女婷婷网站一婷婷五月一丁香婷婷一婷婷激情网 | 丁香五月天啪啪激情综和网| 丁香婷色| 91n啪啪| www.99视频| 日韩十国产极品久久| 欧美在线97| 一起草AV入口| 日韩色色视频| 思思热久久艹| 99亚州综合精品成人网| 亚洲人人操BD| 色婷婷色情| 思思热久久阴99| 4399人妻无码久久久| 丁香婷婷浪潮AV久久综合| 色色五月婷| 久久女人天堂| 婷婷五月激情的图片| 另类图片婷婷五月天| 色色精品色| 日韩视频女神99| 激情人妻蜜夜系列区| 一起草av| 91啪啪视频| 婷婷五月天狠狠色| 天天影院色| 99久久精品网| 99热日本| 丁香五月天激情AV| 色欲香综合网| va婷婷在线| 九九精品在线视频观看| av国产精品偷| 超碰人人艹| 婷婷色色欧美| 国产超碰人人| 色婷婷69| 色级婷婷| 伦乱人妻| 丁香五月婷婷高清| 伊人大香蕉毛片| 五月天婷婷成人网| 超碰人人草| 99自拍视频| 日韩久热| 另类天堂| 色狠狠色| 女人高潮内射99精品| 婷婷狠狠干| 九九99九九99九九99视频网| 精品成人在线观看| 婷婷亚洲综合| 色情五月婷婷| 国产精品久久久久久久久久久久 | 人人草公开操| 日日干日日s| 狠狠搞综合色| 五月天成人在线视频丁香| 精品久久婷婷五月天| 五月天婷婷色五月天| 噜一噜免费视频| 亚洲激情免费久久| 天天草天天日| 欧美日韩成人在线网| 激情久久久久久久久久久| 黄色成人网站在线播放| 天天综合色| 日日做A爰片久久毛片A片英语| www.五月天| 91Chinese在线| 国产精品久久久久久久久久久久| 中文字幕高清av| 日本九九网| 99热18| AV 3P| 婷婷色五月色| 来吧亚洲综合网| 成人国产网站在线免费看| 人人操人人添人人摸97| www.日本久久videos| 婷婷 亚洲图片 丁香| 91成人性爱视频| 在线观看中文字幕| 韩国97天堂| 久久婷婷啪啪视频| 超碰狠狠色| 婷婷 伊人 久久| 丁香激情五月| 9191avse| 天天做好综合色| 九九这里只有精品| 五月天狠狠色| 这里只有九九精品| 成人在线日韩| 久久六月天| 国产精品涩涩涩视频网站| 99热观看| 深爱开心激情网| 五月天色在线| 欧美色色色色色| 成人AV片播放| 这里只有精品热| 亚洲天堂色色| 不卡的AV网站| 国产片天天爽夜夜爽| 日日日天天干| 丰满少妇猛烈A片免费看观看| 97在线观看| 六月丁香大香蕉| 亚洲经典小视频| 五月丁香六月欧美综合网站| 五月婷婷精品| 亚洲婷婷五月天激情综合| 在线成人网址| 欧美日韩国产日本精品四虎网网站物| 99re这里只有精品9| 嫩草乱码一区三区四区| 日本激情综合| 天天色五月| 九月丁香亭亭| 五月天社区婷婷丁香社区| 色情免费视频播放| 人妻丰满精品一区二区A片| 97亚洲婷婷| 艾小青av| 无码人妻丰满熟妇奶水区码| 亚洲夜五月| 人人操AV| 在线观看av网站| 日日夜夜婷婷| 国自产拍偷拍精品啪啪一区二区| 久久五月丁香婷婷| 婷婷丁香五月亚洲| 九月影院義母在线播放| 狠狠爱五月婷婷| 黄色AAAAAAA| 婷婷伊人五月| 高清不卡一区| 成人在线精品| 久操热线| 亚洲永久免费| 丁香五月激情啪啪| 思恩热国产视频右线观看| 午夜大香蕉| 人人草碰| 99网99热| 色婷婷狠| 99re思思久久| 久久婷婷六月| 疯狂做受XXXX高潮A片动画| 激情丁香婷婷六月天| 婷婷五月天开心网| 丁香婷婷六月婷婷六月婷婷六月婷婷| 在线视频99| 色域五月丁香| 婷婷五月天激情网| 欧美综合123区| 超碰91人人操| 天天 青草 制服丝袜 在线 | 色色激情五月| 五月天丁香网| 99re这里只有精品国产99| 欧美精品18| 免費亭亭成人| 99这里有精品| 五月丁香婷庭在线| 色综合久久综合| 久久久五月五丁香| 婷婷丁香社区网| 91精品综合久久久久久五月丁香| 激情五月丁香激情综合网| 亚洲成人av中文| 色XX综合网| 色婷婷五月在线| 99久久综合| 婷婷五月激情六月丁香| 日本三级大片| 色婷婷五月中文字幕在线dvd| 99丝袜精品视频网站| 久久激情天堂| 99热99热在线观看| 操比激情五月| 色噜噜婷婷| www.久久久久久久| 少妇2做爰HD韩国电影| 丁香激情婷婷网| 无码橾| 激情五月天电影| 欧洲日韩一区二区三区| 一起草av在线观看| 婷婷五月天社区| 欧美五月丁香| 99热精品网| 五月天激情日色在线| 激情综合网五月丁香| 天天日夜夜高潮| 五月丁香综合激情| 久久五月视频| 深爱激情综合网| 大香蕉五月天婷婷| 天堂呦 呦百度搜索-百度搜索| 九九色色| 色情五月丁香婷婷网| 丁香99| 在线另类| 婷婷操婷婷干婷婷射| 成人电影一区| 男人天堂AV在线一区二区| 超碰色人妾| 久热九九| 丁香五月婷婷日本| 亚洲最大成人综合网720P| 欧美激情综合| 五月天另类激情在线| 亚洲综合激情五月久久| 日本欧美国产| 婷婷狠狠操| aaaa久久| 天天干天天玩天天夜天天射天天操天天日蜜臀少妇 | 五月天激情久久| 深爱激情69热| 91九色PORNY肉丝在线| 婷婷在线操| 思思久久99| 色色色99| 色999亚洲人成色| 最新av在线观看| 丁香五月婷在线| 亚洲最大成人综合网720P| 久热这里只有精品6官网亚洲| 91九色视频| 丁香婷婷五月色成人网站| 五月婷婷亚洲| 成人国产欧美大片一区| 色五月亚洲五月天| 91蝌蚪窝视频在线| 婷婷综合色播网| 五月婷婷精品视频| 99热综合网| 九色 在线| 久re热视频| 久碰婷婷视频| 成人短视频在线| AV在线观看网站| 久久99婷婷| 久久综合激情| 国产精品色色| 婷婷五月天亚洲色| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 大天天伊人| 操逼六区| 色97啪啪| 大香蕉天堂| 97视频久久| 五月丁香婷婷六月| www.国产亚洲69ty.久久久久久久久久久久| 激情五月天婷婷| 色爱99| 色播五月婷婷| 日本无va视频| yirenjiqingshiping| 丁香婷婷视频| 99爱99操| 日夜操B| 狠狠操天天操| 97色精品视频| 91se在线观看| 欧美五月丁香啪啪响视频| 国产真人做爰视频免费| 99精品在这里| 激情久久综合| 成人美女网| 五月婷婷丁香在线| 激情综合区| 中字幕视频在线永久在线观看免费| 五月婷婷色色| 久久大香蕉丁香| 熟女激情五月天| www.婷婷五月天.com| 欧美黑人巨大性生话| 久久久久久五月天| 五月丁香婷婷色色色| 日韩成人综合网| 深爱1激情网| 久久色天堂| 亚洲精品久久久久久久久久飞鱼| 婷婷丁香人妻天天| 婷婷月五天在线在线看| 9|人妻人人操| 久久婷婷色| 五月丁香欧美综合免费视频| 亚洲综合另类| 少妇水多A片太爽了| 日本婷婷色日| 99操中文视频| 欧美性爱丁香五月| 大香蕉久艹| 99久久精品网| 久久久人妻人伦| 少妇水多A片太爽了| 五月婷婷视频| 2023天天日夜夜爽| 日本啪啪网| 亚洲无码 图片区| 色五月婷婷久久| 天天搞天天色综合| av 一区三区四区| 色色综合院| 午夜少妇在线观看视频| 成人在线综合| 五月丁香AV在线| 另类激情五月天。| 99久久新视频| 五月丁香啪啪| 超碰在线视屏| 五月天播播| 色婷婷在线视频综合| 婷激情五月天视频导航| 国产白丝在线一区| 99热精品网| 久综合4| 在线观看国产高清视频免费网站 | 婷婷色婷婷| 久久久91| 欧美日韩成人在线观看| 亚洲欧美一区二区三区爱爱动图| 色99视| 久久作爱| 大香蕉在线观看9| 成人国产欧美大片一区| se99视频| 六月丁香av| 久草热视频在线观看| 2025天天爽天天摸| WWW色综合| 97人人操在线| 久久精品系列| 国产婷婷久久| 嫩草视频。| AV中文网| WWW.久久.COM| 天天爽天天爽| 亚洲人人操| 九九黄色网| 六月婷婷综合激情| 九九精品碰| 婷婷伊人欧美| 新激情婷婷| 五月婷婷基地| 99热这里只有精品1025| 久青操| 99精品国产在热久久婷婷| 丁香五月激情在线| 婷婷五月天开心激情网| 99小视频网站| 婷婷亚洲色| 五月激情综合深爱| 久久久久久丁香五月| 蜜桃婷婷丁香| 激情婷婷丁香色五月| 99亚洲大片精品永久在线观看| 天天操夜夜夜夜爽| 亚洲av免费在线| 九九99九九99偷拍视频免费看| 爆乳熟女一区二区三区爆乳| 成人短视频在线免费观看| 就爱日五月天| 日韩久操婷婷| 日韩视频女神99| 看全色黄大色大片| 大香蕉精品视频| 午夜婷婷丁香| www.夜夜操.con| 人人人人人人人人人草| 2014天天爽| 成人视频九九| 天天操夜夜玩!| www.六月丁香看AV| 婷婷射丁香| 婷婷五月激情网| 97婷婷狠狠| 久久婷婷色| 99热这里都是精品| 国产成人精品亚洲线观看| 嫩草极品| 9999综合99综合人| 久久婷婷人人| 99操碰| 欧洲激情五月天婷婷| 天天色天天噜| 婷婷丁香人妻久久在线观看| 五月婷婷无码| 久久久久亚洲AV无码网影音先锋| 婷婷五月天久久久| 九九热在线视频| 日韩性爱AV| 激情性爱婷婷| 成人婷99最新| 六月婷婷狠狠| 婷婷五月丁香伊人| 九色91视频| 色久综合| 日逼影音先锋男人资源站| WWW久| 99免费综合网| 甈你aaaaa| 丁香六月激情综合| 99热都是精品| 热99色| 亚洲性爱电影| 激情婷婷五六月天| 九九热99精品在线| 人人摸人人干| 婷婷伊人綜合中文字幕| 91碰免费视频| 中文久久婷婷| 亚洲一色色色色色色色色| 五月开行婷婷色五月| 99热综合色图| 啪啪91| 综合久久六月| www.激情五月天。com| 丁香五月,激情五月,深爱五月| 五月激情偷拍| 可以看的AV| 99热xx| 一逼色综合| 久久久久久五月天| 色爱综合网| 中文网婷婷字幕婷| 开心丁五月| 激情小说在线视频| JAPANRCEP老熟妇乱子伦视频| 亚洲啪啪精品| 激情综合女人网五月播播| 激情五月天在线视频| 色五月激情五月| 丁香色婷婷色手机免费在线| 91碰| 91婷婷五月天嫩女| 欧美交换配乱吟粗大25P| 伊人五月综合网| 婷婷五月开心中文字幕在线| 成人 在线 日韩| 日本wwww在线| 一起草AV| 99爱视频| 激情久久伊人| 婷婷五月激情四月综合| 玖操97| 色天天狠狠干| 五月花在线观看视频| 成人精品视频99在线观看免费| 一起草日本| 丁香五月图片| 久久伊人婷婷| 五月亭亭欧美女人| 丁香五月亚洲婷婷| 色五月激情综合网| 天天综合网91| 丁香婷婷视频在线| 五月激香蕉网| 国产阿姨日皮艹逼内射视频 | 亚色网站小视频| 99福利导航| 丁香五月天日韩无码| 91狠狠综合久久久久久| 欧美影院| 九月av在线| 五月婷婷在线观看| 国产精品久久久久久久久久免费| 狠狠色色| pom538精品视频| 久久婷婷五月综合色丁香花| 婷婷五月天Av| 99热免费观看| 激情综合99| 裸体美女丁香五月天。| 亚洲狠狠丁香婷婷香蕉| 婷婷五日b| 99久久网站| 狠狠搞五月天| 五月丁香婷婷啪啪| 九九中文字幕九| 亚洲色激情| 五月婷婷综合成人| 亚洲国产精品综合色区| 色五月,com| 欧美性色五月天| 国产黄大片在线观看画质优化| 久久久久亚洲AV无码网影音先锋| 欧洲色| 国产综合81p| 日日操日日爽| 久777| 午夜婷婷六月天| 丁香五月狠狠在线观看| 婷婷色五月情| 超碰色热| 激情丁香图片| 91精品啪| xx久久| 久久久WWW| 亚洲精品视频在线| aaaaa黄色| 色色色999| 99国产小视频免费观看| 国产AV一区二区三区日韩| 五月综合婷婷网| 97丨九色丨国产丨PORNY| 免费试看小视频 99| 丁香五月婷中字在线| 色噜噜狠狠狠综合曰曰曰| 国产女18毛片多18精品| 天天日夜夜拍| 99综合自拍| 亚洲欧美综合7777色婷婷| 另类天堂| 天天做天天爱天天高潮| 色五月开心开心五月激情五月| 欧美成人猛片AAAAAAA| 丁香激情婷婷网| 色色色香蕉五月婷| 色色色无码| 91丁香五月| 五月婷六月| 五月深爱婷婷| 亚洲av电影网站| 极品人妻VideOssS人妻| 久久久ww| 久久久久久综合88| 开心婷婷五月激情网小说| 国产精品涩涩涩视频网站| 亚洲综合婷婷六月丁香五月| 97爱综合| 五月婷婷之综合激情| 婷婷色五月亚洲| 综合久久婷婷99| 噜啊噜在线| 另类激情五月天。| 激情婷婷丁香| 色五月婷婷天天操夜夜操| 第四色网婷婷| 五月天社区| 婷婷五月天干干| 久久久久久久久久久44| 99热国产免费| 天天干天天叉| 9精品在线| 香蕉久久国产AV一区二区| 人人操超踫| 99热精品99| 激情综合网激情五月天| 丁香五月综合在线观看| 最新日韩AV中文字幕| 超碰在线观看99| 婷婷五月天视频在线观看| 99噜噜噜| 婷婷五月天成人网| 亚洲性色XXXXX| 婷婷综合视频| 欧美成人猛片AAAAAAA| 成人va视频| 热无码A∨| 色色五月激情| 丁香五月性| 99色在线观看视频| 丁香六月啪| 五月丁香久久激情综合| 婷婷五月天激情文学| 精品,99| 超碰97干| 91在线97视频| 色综合伊人网| 久久久免费精彩视频| 97色婷婷| 思思热在线视频精品| 亚洲在线激情婷婷五月| 亚洲综合另类| 9色91视频| 人人爱操| 五月婷婷成人| 99视频在线观看欧| 99热精品超碰| 99精品偷自拍| 激情五月天开心| 99热大片| 9.1综合网| www热久久yy9| yw国产AV| 欧亚成人A片一区二区| 97色热| 婷婷丁香五月在线播放| 狠狠色激情在线| 激情久久肏屄视频| 热久久婷婷| WWW.国产| www夜夜| 天天干天天爽| 亚洲成人黄色网| 五月丁香六月欧美综合| 亚洲中文字幕av| 丁香五月综合久久| 亚洲成人av中文| 亚洲精品久久久无码| 久久亚洲激情五码| 91九色精品| 狠狠色综合精品视频在线| ss99热| 噜噜噜噜噜日本视频| 日本99久久| 五月天婷婷伊人| 伊人超碰在线| 色综合色香蕉网| 激情五月婷| 日日干天天射| 色七七九九| 色吧婷婷| 成人av中文字幕| 中文字幕精品在线观看| 在线观看免费狠狠色丁香香综合| 五月丁香五月婷婷| 五月亭亭网成人在线视频| 色色日本| 天天干,夜夜爽| 影音先锋天天日| 99碰网站| 69精品人人人人| 日韩色色视频| 五月婷婷啪啪| 国产精品扒开腿做爽爽爽A片唱戏 青青草国产亚洲精品久久 | 日本玖玖在线| 美女xx不卡| 国产午夜精品一区二区| 五月婷婷亚洲| 国产在线黄色| 97色久| 色区久久| 色五月婷色彩免播放器| 99热大全在线观看| 综合五月丁香久久| 这里只有精品视频在线观看免费| 伊人丁香六月婷婷| 综合99在线| 天天爱天天做综合| 久久婷婷激情五月天一区二区| 丁香五月天.com| 99黄色在线视频精品熟女| 97超碰在线观看免费| 9精品一区| 色婷婷丁香AV综合| 亚洲热久| 婷婷综合av| 丁香五月婷婷激情四射| 久久99精品久久久久久三级| 久久精品91视频| 日韩啪| 久久这里这里有精品免费视频| 五月亚洲激情| 久久 视频这里只有精总| 久久丁香五月| 欧美日韩91| 精品一二三区久久AAA片| 99视频综合网| 99精品久久久| 无码毛片992367| 婷婷综合五月天亚洲综合| 伊人五月婷婷| 中文人妻AV久久人妻18| 99视频精品全部观看10| 精品久久久999| 国内外色色色色色成人视频| 超碰色热| 亚洲av成人在线| 五月永久激情| 囯产精品久久欠久久久久久九大| 久久婷婷综合五月天| 4399啪啪视频| 97久人人| 五月天天天开心激情网| 五月丁香成人视频| 99热这里只有精品2| 岛国在线观看91| 伊人网碰碰| 色综合五月婷婷狠狠干| 精品爆操| AA片在线观看视频在线播放| 人人综合91网| 丁香狠狠| 99热亚洲精品| 99人妻碰碰久久久禁片| 99视频九九热| 欧洲亚洲欧洲99久久| 婷婷久久综| 极品精品一区二区三区在线| 五月婷婷亚洲| 日日操,夜夜撸| 六月色色| 丁香五月婷婷少妇| 26UUU成人网| 这里只有精品视频在线| 青青草免费公开视频| 狠狠狠狠狠狠色| 伊人9999| 色综合五月天| 99人妻碰碰碰久久久久| 婷婷五月天伦理| 亚洲成人av在线| 婷婷五月天亚洲综合网| 亚洲婷婷五月天综合| 思思99热| 久久久精品婷婷五月天| 国产99热在线看| 激情五月丁香婷婷| 九九操屄| 婷婷五月天成人五月天| 久久精品夜色噜噜亚洲a∨| 深夜婷婷 丁香| 亚洲人成网亚洲欧洲无码久久| 色五月五月婷婷| 综合色七七| 婷婷激情综合无月| 中文字幕在线免费观看视频| 激情国产五月| 狠狠人人| 性色五月天| 九九热re99re6在线精品| 日本激情综合| 老美AA片| 久er7久热| 色色色色色色网站| 中文字幕AV网址| 五月综合婷婷五月| 婷婷综合九色伊人| 五月天 综合 在线| 五月天综合婷婷| 狠狠爱激情网| 亚洲操B| 十二区无码| 激情五月天网页| 国产精产国品一二三在观看| 三级三久久线久久99久目本WW| 婷婷性爱五月天| 久久久噜噜噜久久人妻| 99热黄| 婷婷五月天男人影院色色网| 大战熟女丰满人妻AV| 六月丁香成人| 99热在线观看免费精品| 久久人人九| 五月婷婷草| 色婷婷影| 亚洲色热| 91九色 熟| 婷婷五点亚洲| 就爱日五月天| 丁香五月激情婷婷| AA片在线观看视频在线播放| 亚洲色五月婷婷| 99啪啪视频| 色~性~乱~伦~噜| 影音先锋一区二区三区| 一区二区三区XXXXXX| 五月激情综合美女久久| 97sese婷婷| 五月婷婷丁香在线| 人人人人人人人草| 久爱综合| 这里只精品热在线18| www.夜夜爱.com| 激情激情激情网| 婷婷大香焦| 成人电影丁香六月天| 人妻Av在线| 色情五月停停丁香| 激情综合婷婷久久| 高清无码入口| 亚洲成人另类| 色五月天丁香婷婷| 97视频91| 这里只有精品视频在线| 这里只有精品99视频| 综合AV在线| 丁香婷婷激情综合五月激情| 99热婷婷| 亚洲 无码 中文字幕 中出| 99re资源在线视频导航| 色色色色网色色网色色| 日韩精品无码AV| 天堂中文国产| 欧美色图天堂网| 人妻少妇色综合| 先锋男人99资源| 七七色综合| 丁香五月婷婷综合精品素人| 伊人超碰在线| 久久婷婷久久| 26uuu视频欧美| 亚洲熟妇AV乱码在线观看| 五月丁香AV在线| 日笨久久网| 亚洲综合色色| 99久久这里只有精品免费官网| 婷婷丁香熟女| 99热在线精品观看| 97干在线播放| 操人无码| 99热在线观看亚洲区| 一本色道久久88加勒比—| 97久久人人| 丁香五月激情综合在线观看| av五月天婷婷丁香| 色女人久久| 日本一级一片免费视频| 久久激情五月| 一级操逼内射在线视频| 五月丁香久人妻中文| 亚洲综合激情五月久久| 日日夜夜噜噜爽爽| 亚洲久久日| 丁香五月婷婷基地| 中文在线视频久1| 99热精品在线播放| 极品人妻VIDEOSSS人妻| 亚洲综合99| 色丁香五月婷婷婷| 六月丁香开心婷婷欧美| 婷婷色五月色| 久久只有精| 91操在线| 色综合色综合网| 久久爱婷婷| 99久久久免费| 色欲色欲久久宗合网| 久久色天堂| Www.婷婷五月| 久久久久婷婷| 狠狠干.com|