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

ARTICLE DETAIL

資訊詳情

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

二手交易系統(tǒng)JavaWeb課設(shè)完整實(shí)戰(zhàn):從需求分析到部署排錯

二手交易系統(tǒng)JavaWeb課設(shè)完整實(shí)戰(zhàn):從需求分析到部署排錯 簡介這是廣東工業(yè)大學(xué)軟件工程專業(yè)課程設(shè)計(jì)的實(shí)戰(zhàn)成果實(shí)現(xiàn)了一個功能完整的基于Web的二手商品交易系統(tǒng)。系統(tǒng)采用B/S架構(gòu)前端使用HTML/CSS/JavaScript后端為PHP數(shù)據(jù)庫為MySQL涵蓋用戶注冊登錄、商品發(fā)布、瀏覽搜索、在線留言、交易狀態(tài)跟蹤等核心模塊。壓縮包共97個文件以46個PHP源碼、1個SQL建庫腳本、1個DOC設(shè)計(jì)報告、1個TXT使用說明書為主另含大量JPEG/PNG/GIF圖片素材整體大小3.17MB目錄結(jié)構(gòu)清晰便于按需閱讀。配套文檔由3113006452陳聰撰寫包含需求分析、UML用例圖與類圖、數(shù)據(jù)庫E-R圖及表結(jié)構(gòu)說明并附軟件安裝配置與使用說明書可指導(dǎo)Tomcat/Apache與MySQL環(huán)境搭建、項(xiàng)目導(dǎo)入及運(yùn)行。這份資源既適合課程設(shè)計(jì)參考也可作為畢業(yè)設(shè)計(jì)入門范例或Web開發(fā)學(xué)習(xí)案例目前已有42人瀏覽學(xué)習(xí)。 做軟件工程課設(shè)接到“基于Web的二手商品交易系統(tǒng)”這個題目時我第一反應(yīng)是“這不是個老掉牙的商城系統(tǒng)嗎”但真正從零跑完一版帶完整源碼、數(shù)據(jù)庫和設(shè)計(jì)文檔的項(xiàng)目后我發(fā)現(xiàn)這個題目的水比我預(yù)想的深得多。它不像電商秒殺系統(tǒng)那樣拼高并發(fā)也不像人工智能項(xiàng)目那樣拼算法創(chuàng)新它比拼的是你對軟件工程全流程的理解對業(yè)務(wù)建模的把握以及對一套完整Web項(xiàng)目從設(shè)計(jì)到部署的掌控力。這篇文章我就以廣東工業(yè)大學(xué)軟件工程課設(shè)這個項(xiàng)目為藍(lán)本把選題思路、技術(shù)棧選型、數(shù)據(jù)庫設(shè)計(jì)、核心功能實(shí)現(xiàn)、文檔組織、部署排錯整個過程拆開講清楚希望給正在做類似課設(shè)或者想獨(dú)立練手Web開發(fā)的朋友一份可以直接參考的實(shí)操指南。1. 項(xiàng)目定位與需求分析二手交易課設(shè)到底在練什么1.1 為什么這個選題適合做軟件工程課設(shè)軟件工程課設(shè)和普通編程作業(yè)最大的區(qū)別在于它考察的不只是“代碼能不能跑”而是“整個軟件生命周期你能不能駕馭住”。二手商品交易系統(tǒng)這個題目之所以經(jīng)典是因?yàn)樗臉I(yè)務(wù)復(fù)雜度剛剛好用戶、商品、訂單、交易這些核心概念非常直觀不需要深度行業(yè)知識也能快速理解但同時又足夠支撐起完整的需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、測試和部署流程。我當(dāng)時在需求分析階段就先畫了三張圖用戶用例圖、系統(tǒng)功能結(jié)構(gòu)圖、業(yè)務(wù)流程圖。用例圖定角色功能結(jié)構(gòu)圖定模塊業(yè)務(wù)流程圖定數(shù)據(jù)走向。這三張圖畫完整個項(xiàng)目的骨架基本就出來了后面寫代碼只是往骨架里填肉。很多同學(xué)上來就寫代碼寫到一半發(fā)現(xiàn)功能混亂、表結(jié)構(gòu)對不上就是因?yàn)樘^了這一步。1.2 需求邊界劃定三角色模型與權(quán)限范圍二手交易系統(tǒng)和普通電商最大的區(qū)別在于“買家”和“賣家”是同一個人群里的兩個身份。我賣出一件閑置商品時我是賣家買一件別人的舊書時我是買家這意味著系統(tǒng)不能用兩個完全獨(dú)立的模塊去處理用戶體系必須在賬號體系上統(tǒng)一、在業(yè)務(wù)角色上分離。我把系統(tǒng)用戶劃分為三類角色角色核心功能關(guān)鍵權(quán)限游客瀏覽商品、搜索僅可查看注冊用戶買家/賣家一體發(fā)布商品、修改/下架商品、下單購買、管理訂單、個人資料管理操作本人數(shù)據(jù)管理員用戶管理、商品審核/下架、分類管理、公告管理全表操作但需審計(jì)這里有一個容易被忽視的需求點(diǎn)加一個“管理員”角色。課設(shè)評審老師特別看重系統(tǒng)的完整性和安全性完全沒有后臺管理的網(wǎng)站在答辯時會被追問“如果有惡意用戶發(fā)布違規(guī)商品怎么辦”。所以哪怕管理員功能做得簡單一點(diǎn)也要有。1.3 核心業(yè)務(wù)閉環(huán)與用例拆解二手交易系統(tǒng)的核心閉環(huán)是注冊登錄 → 發(fā)布閑置 → 瀏覽搜索 → 下單購買 → 賣家處理訂單 → 確認(rèn)收貨 → 互相評價。評級功能如果時間緊迫可以不做但前面五個環(huán)節(jié)是閉環(huán)主干缺一個系統(tǒng)就不完整。在用例拆解階段我建議把每個用例的屬性寫清楚用例名稱、參與者、前置條件、主流程、異常流、后置條件。比如“買家下單購買”這個用例前置條件是“商品處于在售狀態(tài)且買家不擁有該商品”主流程是先提交訂單再生成訂單記錄異常流是“商品已下架”和“庫存不足”后置條件是“商品狀態(tài)變?yōu)橐驯慌南隆?。這些文字寫起來有點(diǎn)枯燥但后面寫接口時根本不用再想業(yè)務(wù)邏輯直接按用例翻譯成代碼就行。2. 技術(shù)選型與系統(tǒng)架構(gòu)被低估的“簡單”技術(shù)棧2.1 課設(shè)場景下的技術(shù)棧取舍很多同學(xué)在做Web課設(shè)時會陷入技術(shù)選型的糾結(jié)用ServletJSP還是Spring Boot用不用前后端分離要不要加Redis我的建議是先問自己這個項(xiàng)目的主要目標(biāo)是什么。軟件工程課設(shè)的核心目標(biāo)是展示“軟件工程過程”而不是展示你用了多少花哨的框架。我用的是經(jīng)典JavaWeb技術(shù)棧JSP Servlet MyBatis MySQL Tomcat。這套組合放在今天不算新潮但它有個天然優(yōu)勢——結(jié)構(gòu)足夠“樸素”老師一眼就能看清你的分層邏輯。Controller處理請求、Service處理業(yè)務(wù)、Mapper操作數(shù)據(jù)庫每一層職責(zé)單一打分的時候老師看到的就是“這個學(xué)生確實(shí)理解了分層架構(gòu)”。如果用了Spring Boot全家桶Comtroller里直接寫業(yè)務(wù)、連Service層都省了反而容易被質(zhì)疑“為了框架而框架沒有軟件工程思想”。2.2 分層架構(gòu)與工程目錄規(guī)劃我最終采用的是經(jīng)典MVC三層架構(gòu)加DAO層工程目錄結(jié)構(gòu)如下secondhand-trading-system/ ├── src/ │ ├── main/ │ │ ├── java/com/school/secondhand/ │ │ │ ├── controller/ # 控制層接收請求、返回視圖 │ │ │ ├── service/ # 業(yè)務(wù)層處理具體業(yè)務(wù)邏輯 │ │ │ ├── dao/ # 數(shù)據(jù)訪問層封裝數(shù)據(jù)庫操作 │ │ │ ├── entity/ # 實(shí)體類對應(yīng)數(shù)據(jù)庫表 │ │ │ ├── filter/ # 過濾器登錄校驗(yàn)、編碼處理 │ │ │ ├── util/ # 工具類分頁、文件上傳、字符串處理 │ │ │ └── interceptor/ # 攔截器統(tǒng)一權(quán)限管理 │ │ └── resources/ │ │ ├── mybatis/ # MyBatis映射文件 │ │ ├── db.properties # 數(shù)據(jù)庫配置 │ │ └── log4j.properties # 日志配置 │ ├── webapp/ │ │ ├── jsp/ # 視圖頁面 │ │ ├── static/ # css/js/images │ │ └── WEB-INF/web.xml # Web配置文件這個分層有個關(guān)鍵好處哪里出問題一眼就能定位。頁面渲染出錯查JSP接口參數(shù)問題查Controller業(yè)務(wù)邏輯問題查Service數(shù)據(jù)查詢問題查Mapper。我在開發(fā)過程中至少有三分之一的時間是靠著這種清晰的邊界快速定位bug的。2.3 為什么建議保留純JavaWeb實(shí)現(xiàn)方式雖然我后來在工作中大量使用Spring Boot但如果讓我重新做一次這個課設(shè)我依然會選擇直接用Servlet。原因很簡單直接寫Servlet能讓你真正理解HTTP請求是怎么被處理的。請求如何到達(dá)服務(wù)器、參數(shù)如何解析、Session如何管理、響應(yīng)如何寫回瀏覽器——這些內(nèi)容在Spring Boot里全被封裝掉了但軟件工程課設(shè)恰恰需要你展示對這些基礎(chǔ)知識的掌握程度。一句話總結(jié)技術(shù)選型原則課設(shè)不是生產(chǎn)環(huán)境你要選的是“最能展示自己理解深度”的棧而不是“看起來最前沿”的棧。3. 數(shù)據(jù)庫設(shè)計(jì)二手交易系統(tǒng)的核心支柱3.1 從ER分析到核心業(yè)務(wù)表數(shù)據(jù)庫設(shè)計(jì)是二手交易系統(tǒng)里最值得花時間的一部分。我最初設(shè)計(jì)的表數(shù)量是5張用戶表、商品分類表、商品表、訂單表、訂單明細(xì)表后來在寫代碼過程中發(fā)現(xiàn)還需要地址表于是加成了6張。每次功能開發(fā)中需要新表時我都會停下來反思最初的分析哪里遺漏了這也是一種很好的復(fù)盤訓(xùn)練。各表之間的核心關(guān)系是用戶與商品是一對多商品與分類是多對一訂單與用戶是多對一訂單與訂單明細(xì)是一對多。ER圖建議用工具畫我用的是draw.io畫完導(dǎo)出圖片直接貼到設(shè)計(jì)文檔里答辯時老師會重點(diǎn)看這個。3.2 核心表結(jié)構(gòu)與字段設(shè)計(jì)說明這里給出兩張核心表的建表SQL一張是用戶表一張是商品表CREATE TABLE t_user ( id INT NOT NULL AUTO_INCREMENT COMMENT 用戶ID, username VARCHAR(50) NOT NULL COMMENT 用戶名, password VARCHAR(64) NOT NULL COMMENT 密碼加鹽哈希, nickname VARCHAR(50) DEFAULT NULL COMMENT 昵稱, phone VARCHAR(20) DEFAULT NULL COMMENT 聯(lián)系電話, avatar VARCHAR(255) DEFAULT NULL COMMENT 頭像地址, create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT 注冊時間, status TINYINT DEFAULT 1 COMMENT 狀態(tài)1正常 0禁用, PRIMARY KEY (id), UNIQUE KEY uk_username (username) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COMMENT用戶表;CREATE TABLE t_goods ( id INT NOT NULL AUTO_INCREMENT COMMENT 商品ID, seller_id INT NOT NULL COMMENT 賣家ID關(guān)聯(lián)t_user.id, category_id INT NOT NULL COMMENT 分類ID, title VARCHAR(100) NOT NULL COMMENT 商品標(biāo)題, description TEXT COMMENT 商品描述, price DECIMAL(10,2) NOT NULL COMMENT 價格, original_price DECIMAL(10,2) DEFAULT NULL COMMENT 原價/參考價, cover_image VARCHAR(255) DEFAULT NULL COMMENT 封面圖, images TEXT COMMENT 多圖地址逗號分隔, status TINYINT DEFAULT 1 COMMENT 狀態(tài)1在售 2已拍下 3已下架 4已賣出, view_count INT DEFAULT 0 COMMENT 瀏覽量, create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT 發(fā)布時間, update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 更新時間, PRIMARY KEY (id), KEY idx_seller_id (seller_id), KEY idx_category_status (category_id, status), CONSTRAINT fk_goods_seller FOREIGN KEY (seller_id) REFERENCES t_user (id) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COMMENT商品表;有幾個字段設(shè)計(jì)經(jīng)驗(yàn)值得單獨(dú)說。第一所有表都用utf8mb4字符集而不是utf8。utf8在MySQL中最大只支持3字節(jié)字符而用戶昵稱里如果用戶輸入了emoji比如“交易”用utf8會直接報錯或存成亂碼。這個坑我一開始就踩了后來統(tǒng)一改成了utf8mb4。第二價格字段用DECIMAL(10,2)而不是FLOAT或DOUBLE。浮點(diǎn)數(shù)在計(jì)算機(jī)中本身就不是精確保存的0.10.2不等于0.3這種問題在金額計(jì)算中是致命的。DECIMAL是定點(diǎn)數(shù)專門用于金額場景這是金融系統(tǒng)和交易系統(tǒng)的基本常識。第三商品表加了一個status字段來管理生命周期。部分同學(xué)會用“刪除商品”這個動作來管理但真正做交易系統(tǒng)時你應(yīng)該用狀態(tài)字段因?yàn)樯唐芬坏┊a(chǎn)生訂單記錄就不能被物理刪除否則訂單明細(xì)表會關(guān)聯(lián)不到商品數(shù)據(jù)。狀態(tài)字段讓商品可以在在售、已拍下、已賣出之間流轉(zhuǎn)也方便管理員做下架處理。第四所有表都帶create_time和update_time字段。前者用于按時間排序后者方便排查數(shù)據(jù)更新的問題。這兩個字段幾乎是業(yè)務(wù)系統(tǒng)標(biāo)配不要省。3.3 事務(wù)與并發(fā)下單扣庫存的正確姿勢下單操作涉及三步檢查商品狀態(tài)、更新商品狀態(tài)為已拍下、生成訂單記錄。這三步必須是一個事務(wù)任何一個步驟失敗前面的操作都要回滾。我用MyBatis的TransactionManager配合Spring的聲明式事務(wù)實(shí)現(xiàn)Transactional(rollbackFor Exception.class) public Order createOrder(Long buyerId, Long goodsId) { Goods goods goodsDao.selectById(goodsId); // 校驗(yàn)商品存在且在售 if (goods null || goods.getStatus() ! GoodsStatus.ON_SALE) { throw new BusinessException(商品不存在或已被拍下); } // 校驗(yàn)不能買自己的商品 if (goods.getSellerId().equals(buyerId)) { throw new BusinessException(不能購買自己發(fā)布的商品); } // 更新商品狀態(tài) goodsDao.updateStatus(goodsId, GoodsStatus.ORDERED); // 創(chuàng)建訂單并插入 Order order new Order(); order.setGoodsId(goodsId); order.setBuyerId(buyerId); order.setSellerId(goods.getSellerId()); order.setAmount(goods.getPrice()); order.setStatus(OrderStatus.PENDING_PAYMENT); orderDao.insert(order); return order; }這里有一個并發(fā)場景兩個買家同時看到同一件商品同時下單。如果只做了“查狀態(tài)再更新”兩步兩個線程都可能查到“在售”狀態(tài)然后都執(zhí)行更新最后生成兩筆訂單。解決辦法有兩種一是用數(shù)據(jù)庫的樂觀鎖在更新語句中加入版本號條件UPDATE t_goods SET status2, versionversion1 WHERE id? AND status1二是用悲觀鎖SELECT ... FOR UPDATE鎖住商品行。我在課設(shè)中用的是樂觀鎖方案因?yàn)榇a改動最小而且足夠說明我理解了并發(fā)問題。答辯時老師問到并發(fā)場景我把這個方案解釋清楚是一個明顯的加分項(xiàng)。4. 核心功能實(shí)現(xiàn)從登錄到交易閉環(huán)的代碼細(xì)節(jié)4.1 用戶模塊注冊登錄的校驗(yàn)與安全處理用戶模塊是整個系統(tǒng)的入口安全處理必須一開始就做對否則后面所有功能都暴露在風(fēng)險中。密碼存儲不能用明文也不能用簡單的MD5。我在課設(shè)中使用的是加鹽MD5方案注冊時隨機(jī)生成一個鹽值把“密碼鹽值”拼接后做MD5數(shù)據(jù)庫存鹽值和哈希值。登錄時取出鹽值重新計(jì)算哈希再比對。雖然比不過BCrypt但至少能讓老師看到你對密碼安全有概念。public String encryptPassword(String rawPassword, String salt) { String salted rawPassword salt; for (int i 0; i 10; i) { salted DigestUtils.md5Hex(salted); } return salted; }注冊時還需要做的事情包括用戶名唯一性校驗(yàn)、兩次密碼一致性校驗(yàn)、手機(jī)號格式正則校驗(yàn)、用戶名非法字符過濾防SQL注入和XSS。這些校驗(yàn)既要在前端做一遍提升用戶體驗(yàn)也必須在后端做一遍保證數(shù)據(jù)安全。前端校驗(yàn)可以被繞過后端校驗(yàn)才是真正的防線。登錄成功后我用Session保存用戶基本信息同時設(shè)置Session超時時間為30分鐘。每次請求通過Filter統(tǒng)一檢查是否有登錄用戶沒有就跳轉(zhuǎn)到登錄頁。這里要注意靜態(tài)資源css、js、圖片要排除在登錄校驗(yàn)之外否則連登錄頁的樣式都加載不出來。4.2 商品模塊發(fā)布、圖片上傳與分頁檢索商品發(fā)布是用戶使用頻率最高的功能之一實(shí)現(xiàn)時有兩個關(guān)鍵點(diǎn)圖片上傳和列表分頁。圖片上傳我采用的方案是本地磁盤目錄存儲 數(shù)據(jù)庫存相對路徑。前端表單提交時用multipart/form-data格式后端用Servlet的Part接口獲取文件流。圖片路徑我做了重命名用“時間戳隨機(jī)數(shù)原始擴(kuò)展名”拼成新文件名避免重名覆蓋。同時限制了文件大小最大2MB和文件類型jpg、png、gif防止用戶上傳超大文件把服務(wù)器寫爆。String fileName System.currentTimeMillis() _ UUID.randomUUID().toString().substring(0, 8) extName; String uploadPath request.getServletContext().getRealPath(/) upload; File dir new File(uploadPath); if (!dir.exists()) { dir.mkdirs(); } part.write(uploadPath File.separator fileName);商品列表頁的分頁是我手動實(shí)現(xiàn)的PageHelper效果用的是MySQL的LIMIT語法加計(jì)算總頁數(shù)public PageResultGoods pageQuery(String keyword, Integer categoryId, int pageNum, int pageSize) { int offset (pageNum - 1) * pageSize; ListGoods list goodsDao.pageQuery(keyword, categoryId, offset, pageSize); int total goodsDao.countQuery(keyword, categoryId); int totalPages (int) Math.ceil((double) total / pageSize); return new PageResult(list, pageNum, pageSize, total, totalPages); }分頁的細(xì)節(jié)點(diǎn)是首頁和尾頁的頁碼要限制范圍pageNum傳1時不能算出負(fù)數(shù)的offset傳1000時不能一直查出空數(shù)據(jù)。JSP頁面的分頁組件我封裝成了一個JSP標(biāo)簽傳到頁面的參數(shù)就只有當(dāng)前頁和總頁數(shù)其他邏輯都封裝在后臺。4.3 訂單模塊狀態(tài)機(jī)驅(qū)動與操作權(quán)限控制訂單模塊是整個系統(tǒng)里最容易寫亂的地方因?yàn)橛唵卧诓煌A段有不同的狀態(tài)不同角色在不同狀態(tài)下的操作權(quán)限也不同。我用一個狀態(tài)機(jī)來管理訂單狀態(tài)含義可以執(zhí)行的操作目標(biāo)狀態(tài)0 待付款訂單已創(chuàng)建等待買家付款買家付款/取消1 待發(fā)貨 / 4 已取消1 待發(fā)貨買家已付款等待賣家發(fā)貨賣家發(fā)貨2 待收貨2 待收貨賣家已發(fā)貨等待買家確認(rèn)買家確認(rèn)收貨3 已完成3 已完成交易完成無可評價-4 已取消訂單關(guān)閉無-我在代碼里用了一個OrderStatus枚舉類來管理這些狀態(tài)和流轉(zhuǎn)避免在Service層里寫一堆魔法數(shù)字。這里舉個核心方法示例public void confirmReceive(Long orderId, Long currentUserId) { Order order orderDao.selectById(orderId); if (order null) { throw new BusinessException(訂單不存在); } if (!order.getBuyerId().equals(currentUserId)) { throw new BusinessException(無權(quán)操作該訂單); } if (order.getStatus() ! OrderStatus.SHIPPED) { throw new BusinessException(訂單狀態(tài)不允許確認(rèn)收貨); } orderDao.updateStatus(orderId, OrderStatus.COMPLETED); }這段代碼看起來簡單但包含三個關(guān)鍵點(diǎn)第一是業(yè)務(wù)校驗(yàn)訂單是否存在第二是權(quán)限校驗(yàn)只有買家本人能操作第三是狀態(tài)校驗(yàn)必須是已發(fā)貨狀態(tài)才能確認(rèn)收貨。三個校驗(yàn)缺一不可這是我踩過坑后才總結(jié)出來的。4.4 攔截器與安全過濾課設(shè)也要有安全意識安全管理不只是一句“登錄后才能訪問”這么簡單。我加了一個全局過濾器來處理三件事編碼統(tǒng)一、登錄校驗(yàn)、防XSS過濾。filter filter-nameGlobalFilter/filter-name filter-classcom.school.secondhand.filter.GlobalFilter/filter-class /filter filter-mapping filter-nameGlobalFilter/filter-name url-pattern/*/url-pattern /filter-mapping在GlobalFilter里完成三件工作第一設(shè)置請求和響應(yīng)的編碼為UTF-8解決中文亂碼。這里有個細(xì)節(jié)request.setCharacterEncoding(UTF-8)只對POST請求有效GET請求的亂碼需要在Tomcat配置里改URIEncodingUTF-8。第二判斷請求路徑是否在白名單里。白名單包括登錄頁、注冊頁、靜態(tài)資源、商品列表和詳情頁等不需要登錄就能訪問的路徑。其他路徑一律檢查Session中是否有登錄用戶。第三對用戶輸入做簡單的HTML標(biāo)簽過濾防止基本的XSS攻擊。雖然不如專業(yè)的ESAPI庫全面但在課設(shè)場景下已經(jīng)能解決90%的問題。5. 設(shè)計(jì)文檔撰寫讓答辯老師眼前一亮的關(guān)鍵5.1 文檔結(jié)構(gòu)應(yīng)該怎樣組織軟件工程課設(shè)的文檔質(zhì)量有時候比代碼質(zhì)量還重要因?yàn)槔蠋煵豢赡茉谀愦疝q前把所有代碼都看一遍他主要通過文檔來了解你的項(xiàng)目。我按標(biāo)準(zhǔn)軟件工程文檔結(jié)構(gòu)來寫包括五個部分需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、系統(tǒng)測試、項(xiàng)目總結(jié)。需求分析部分要畫用例圖、寫用例說明、放功能需求列表、放數(shù)據(jù)字典截圖。概要設(shè)計(jì)部分要畫系統(tǒng)架構(gòu)圖、功能模塊圖、數(shù)據(jù)庫ER圖。詳細(xì)設(shè)計(jì)部分要寫核心模塊的設(shè)計(jì)說明附上關(guān)鍵類圖和時序圖。測試部分要貼測試用例表和測試結(jié)果截圖。項(xiàng)目總結(jié)部分寫遇到的問題和解決方案。5.2 讓文檔“有分量”的細(xì)節(jié)第一每個模塊的核心功能都要截圖圖比文字更有說服力。我在每個功能模塊下都放了“功能描述操作步驟運(yùn)行截圖”三段式描述老師只看截圖就能大致判斷系統(tǒng)完成度。第二測試部分不要只寫“測試通過”。我按功能點(diǎn)列出了測試用例表每條用例包含用例編號、測試內(nèi)容、操作步驟、預(yù)期結(jié)果、實(shí)際結(jié)果、是否通過。偶爾也留一兩條“導(dǎo)出Excel亂碼然后修復(fù)”的失敗用例這反而能體現(xiàn)測試的真實(shí)性。第三文檔里的所有圖不要手畫用工具生成。用例圖用StartUML或ProcessOnER圖用MySQL Workbench反向生成架構(gòu)圖用draw.io。手工畫的圖不規(guī)范一眼就能看出來。5.3 源碼組織與README給評審留個好印象源碼目錄要有清晰的注釋結(jié)構(gòu)。我習(xí)慣把代碼中的類分為四類實(shí)體類、工具類、業(yè)務(wù)類、控制類每類的類注釋寫明類的職責(zé)。關(guān)鍵業(yè)務(wù)方法上加方法注釋寫明業(yè)務(wù)邏輯和輸入輸出。項(xiàng)目根目錄放一個README.md內(nèi)容包含項(xiàng)目簡介、功能清單、技術(shù)棧、環(huán)境要求、部署步驟、默認(rèn)賬號。這樣老師拿到源碼后按README的步驟5分鐘就能把項(xiàng)目跑起來這個體驗(yàn)對評審來說非常加分。我在README的部署步驟里寫的是# 1. 創(chuàng)建數(shù)據(jù)庫 secondhand并導(dǎo)入 sql/secondhand.sql # 2. 修改 src/main/resources/db.properties 中的數(shù)據(jù)庫連接信息 # 3. 使用 IDEA 打開項(xiàng)目配置 Tomcat 9Deployment 選擇 war exploded # 4. 啟動項(xiàng)目訪問 http://localhost:8080/secondhand/ # 5. 管理員賬號 admin/123456測試用戶 user1/1234566. 本地運(yùn)行與部署排錯實(shí)錄6.1 從零復(fù)現(xiàn)環(huán)境準(zhǔn)備與啟動流程如果你拿到源碼后想讓項(xiàng)目跑起來按以下步驟操作安裝JDK 8、Tomcat 9、MySQL 5.7或8.0開發(fā)工具用IDEA社區(qū)版即可。創(chuàng)建一個名為secondhand的數(shù)據(jù)庫導(dǎo)入項(xiàng)目中SQL文件。注意MySQL 8.0的驅(qū)動配置和5.7不一樣驅(qū)動類名要改成com.mysql.cj.jdbc.DriverURL要加serverTimezoneAsia/ShanghaicharacterEncodingutf8mb4。修改db.properties中的數(shù)據(jù)庫賬號密碼。IDEA中配置TomcatDeployment選擇war exploded模式Application context設(shè)為/secondhand/。啟動項(xiàng)目瀏覽器訪問對應(yīng)地址。6.2 高頻問題排查速查表問題現(xiàn)象原因分析解決方案頁面全部亂碼請求/響應(yīng)編碼不一致確認(rèn)Filter中設(shè)置了UTF-8JSP頁面頂部加% page languagejava contentTypetext/html; charsetUTF-8%Tomcat啟動失敗端口被占用8080端口被其他程序占用netstat -ano數(shù)據(jù)庫連接報錯驅(qū)動類名或URL配置錯誤檢查MySQL版本對應(yīng)的驅(qū)動類名8.0用com.mysql.cj.jdbc.Driver商品圖片上傳后頁面不顯示上傳路徑和訪問路徑不一致確認(rèn)上傳目錄是webapp/upload圖片URL拼接的路徑和物理路徑對應(yīng)登錄后訪問頁面又跳回登錄頁Session寫入失敗或Cookie被禁用檢查Filter的路徑匹配規(guī)則確保一次請求只經(jīng)過一次登錄校驗(yàn)購買自己的商品沒有限制缺少業(yè)務(wù)校驗(yàn)在下單Service中增加buyerId ! sellerId判斷6.3 幾個只有實(shí)操才會踩到的坑第一個坑是Tomcat的GET請求亂碼。我花了大半天排查最后發(fā)現(xiàn)request.setCharacterEncoding只解決POST表單的亂碼GET請求帶中文參數(shù)時Tomcat默認(rèn)按ISO-8859-1解碼必須在server.xml里配置URIEncodingUTF-8。第二個坑是MyBatis的#{}和${}混用。這是我一開始圖方便在動態(tài)查詢里用了${}拼接排序字段后來被SQL注入演練工具掃出了漏洞才狠下心把所有用戶輸入都用#{}傳參。第三個坑是JSP頁面引入CSS和JS時用了相對路徑導(dǎo)致在二級URL頁面下樣式全部丟失。解決方法是統(tǒng)一用${pageContext.request.contextPath}拼接靜態(tài)資源路徑這個坑幾乎每個做JavaWeb課設(shè)的同學(xué)都會踩一次。7. 關(guān)于這次課設(shè)我想再啰嗦幾句做完整套系統(tǒng)后我最大的體會是軟件工程課設(shè)的評分標(biāo)準(zhǔn)從來不是“功能越多越好”而是“工程過程是否規(guī)范”。一個功能完整但沒寫文檔、沒做測試、代碼耦合得一塌糊涂的項(xiàng)目和一個功能適中但需求分析清晰、分層合理、測試完善、文檔規(guī)范的項(xiàng)目后者在答辯時拿到的分?jǐn)?shù)通常更高。如果你現(xiàn)在正在做類似的課設(shè)我的建議是先花一周時間把需求、表結(jié)構(gòu)、接口定義全部定下來再花兩周時間寫代碼留一周做測試和寫文檔、準(zhǔn)備答辯。很多同學(xué)習(xí)慣邊寫代碼邊改需求結(jié)果越改越亂最后文檔全是編的。這個項(xiàng)目做完之后我建議你還可以繼續(xù)擴(kuò)展把支付模擬改成微信支付沙箱、加一個Redis緩存熱點(diǎn)商品瀏覽量、把Session登錄改成JWT令牌、部署到云服務(wù)器上去。每一步擴(kuò)展對應(yīng)的都是實(shí)際工作中的一個真實(shí)場景做完這些你才算是把這門課學(xué)透了。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
国产av天堂| 久久五月天婷婷| 日本啪啪天堂| 思思视频久久| 婷婷激情五月天7| 91操人视频| 日本九九视频| 99久热| 婷婷五月天av小说| 99精品无码| 久久九九re热| 九九色热| 狠狠五月天婷婷激情网。| 成人五月天色天堂| 伊人在线视频| 这里只有精品1| 综合www色| 激情图片五月天| 五月婷婷,狠狠操| 99色在线视频| 国产色婷婷亚洲| 五月激情天| 狠狠香婷婷五月| 亚洲精品无AMM毛片| 五月停停激情网| 色99最新网址| 99热这里只有精品66| 九九热a| 免费亚洲婷婷| 天天影院色| 六月丁香婷婷亚洲中文玖玖| 操逼六区| 99热天堂| 色婷婷91激情小说| 99热久| 婷婷丁香五另类网站| 第九色区AV在线| www.99视频| 婷婷97碰碰| 只有精品在线观看| 五月婷婷成人网首页| 97亚洲婷婷| 中文字幕91,综合| 乱精品一区字幕二区| 99热这里只有精品99| 狠狠色婷婷777| 青草青草视频2免费观看| 深爱婷婷网| 五月天狠狠网站| 亚洲AV无码成人精品区电影网| 五月天社区婷婷丁香社区| 亚洲AV免费在线| 超碰国产AV| 国产高潮白浆一区二区| 极品人妻VIDEOSSS人妻| 99亚州综合精品成人网| 中文幕无线码中文字蜜桃| 激情五月天开心| 婷婷开心久久| 婷婷五月丁香欧洲| 激情五月天网| 五月丁香久久综合| 色丁香五月| 色色综合日韩| 欧美亚洲999| ay2区| 九九無碼| 婷婷五月天免费| 久久这里只有精品久久| 五月丁香综合久久| 91狠狠色色丁香婷婷综合久久| 欧美性猛交AAAA片黑人 | 思思re99视频在线观看| 这里只有精品视频看看| 天天做天天爱天天爽在| 色六月视频| 色亚洲无码| 五月色婷婷亚洲 | 国产av网| 99在线热| 婷婷五月天堂网| 人人看人人97| 亚洲 25P| 婷婷五月天亚洲激情戏精品| 五月天婷婷基地| 丁香五月婷婷偷拍| 激情婷婷丁香| 久久丁香综合精品综合| 色99在线观看| 国产成人网址| 99思思热只有在这里看| 五月六月丁香激情| 操97免费超级视频| 草草女人亚洲| 99久久婷婷五月| 国产黄大片在线观看画质优化| 激情都市另类| 9|在线观看视频| 日韩人人操| 五月天停停日日| 97人人干人人操| 99国产精品白浆在线观看免费 | 六月激情婷婷综合| 操逼巨乳91| 人人摸人人干| 在线播放人妻| 综合亚洲六月婷婷在线| 99热8| 久久婷婷综合五月天| 日日操天堂| 五月婷婷偷拍| 色五月婷婷久久爱| 五月婷婷激情久久| 东北熟女高潮99综合99| 丁香六月色情| 丁香六月啪啪| 激情婷婷丁香五月天小说| 中文无码婷婷| 操操操操操电影网| 99ri国产在线| 97亚洲视频在线| 亚洲成人在线综合| 丁香五月六月综合激情| 日本人妻久久| 亚洲日本激情| 91性高潮久久久久久久久| 色99在线视频| 九九综合色| 婷婷综合五月天亚洲综合| 91肏| 综合亚洲AV| 激情五月综合六月丁香婷婷狠狠干| 另类小说色婷婷| 疯狂做受XXXX高潮A片| 91久操| 婷婷丁香人妻天天爽| 成人精品视频99在线观看免费| 五月丁香六月色| 日日操天天| 国产成人综合在线| 丁香97综合| 欧洲日韩一区二区三区| 91久久久久久久久18| 六月激情网| 婷婷丁香红五月91C| 久久综合图片| 99亚州综合精品成人网| 婷婷激情五月视频| 久久总和99| 99热色婷婷| 综合久久人妻| 欧美性猛交99久久久久99按摩| 中美日韩成人在线| 99综合网| 99久久久免费| 性综合网| 五月激情基地| 久青草大香蕉| 都市激情五月婷婷亚洲| 日韩免费99| 狠狠色综合网站久久久久| 色综合99| 就爱啪啪婷婷| 97成人在线视频精品| 97丁香五月| 久久色六月| 五月开心深爱激情网| 日本97人人| 六月丁香社区| 久久久中文| 99性色| 婷婷丁香色五月天久久88| 激情丁香五月婷婷| 欧美激情综合色综合色| 亚洲五月婷婷| 我爱婷婷五月天综合88| 四季AV综合网| 99热这里只有精品9| 日本色色网站| 婷婷久久综合久色| 99久在线精品| 91久久精品国产91性色TV| A A色色| 玖玖九九9999在线观看视频精品| 人妻激情综合| 九月婷婷丁香| 久99在线| 六月丁香av| 色区久久| 久久婷婷五月综合色和| 欧美人妻一区二区| 色亚洲视频| 九九操屄| 五月丁香777| 综合久久久婷| 欧美美女视频| AV操逼网| 99玖玖免费视频| 婷婷九月综合| 欧美情色电影一区二区| 婷婷五月天综合久久| 亚洲超碰在线| 色五月丁香婷婷| 伊人9草在线观看| 国产三级片91| 99热这里只有精品13| 九九久久网| 五月天操逼网| 久久久久亚洲AV综合| 丁香五月婷婷在线视频| 67194成I人在线观看线路1| 激情无码五月天| 久久9热好| 玖玖热视频| 久久资源网五月婷| 九九色网专区| 天天摸天天肏| 婷婷丁香五月天中文字幕| 丁香五月婷婷欧美成人色图| 丁香综合网| 婷婷五月色情| 免费看欧美成人A片无码| 韩国天天婷婷| 5月婷婷6月丁香aV| 日本在线视频播放91| 九九无码| 99久久极情精品一区| 激情久久五月天| 免费无码毛片一区二区A片| 色五月综合激情| 日日噜狠狠| 国产毛片欧美毛片久久久| 五月天婷婷激情小说电影| 婷婷久月| www,99色| 大伊香蕉精品视频在线| 久久丁香| 五月久久婷婷天堂视频| 色色热日| 99国产精品久久久久久久久久久| 玖玖在线视| 插插插色综合网| 成人网站av免费网站推荐| 中文字幕按摩做爰| 婷婷婷婷色| 五月丁香六月婷婷综合网缴情| 亚洲综合99| 精品99*| 新97人人上人人| 综合网五月天123| BlACKEDRAW视频一区二区| 亚洲99综合| 狠狠色五月| 日本一级| 99热全是精品| 天天视频精品9| 六月丁香五月婷婷| 久婷婷| 色综合天天天天做夜夜| 六月伊人婷婷| 丁香激情五月综合网| 婷婷久久影院| 激情综合另类| 色五月综合网站| 99热这里| 亚洲欧美成人在线| 婷婷五月综合激情免费| 五月激情网站| 思思热国产| 久久激情网| a色色色色色| 九月色婷婷综合| 超碰无码老师| 日本色超碰| 99在线免费视频| 五月丁香啪啪综合| 激情五月天伊人影院| 丁香五月天激情五月天激情五月天激情网| 久久婷婷激情五月天一区二区| 伊人久久大香线蕉综合网站| 六月丁香啪| 久久五月天免费网站| 日本97在线| 日本操片| 综合色天天| 久久这里有精品在线观看| 99成人小视频| 九九激情| 久热视频这里只有精品| 亭亭五月丁香五月天激情| 久久九九在线视频| 国产三级秋霞| 亚洲第一综合| 九九AV在线| 美国十月色婷婷在线观看| 99热在线只有精品| 中文字幕AV网址| 人妻啪啪啪| 十月色综合| 深情五月天| se99视频| 色热久| 91黄操| 99re免费精品视频| 天天日夜夜| 婷婷97狠狠成人网站| 欧洲色区| 久久精彩视频99| 欧美高潮9| 亚洲激情六月丁香| 天天射美女| 欧美A级网站| 韩国情人在线电视剧免费观看高清版全集 | 国产激情在线| 涩五月婷婷| 色综合色色色| 99re久久| 国产日产亚系列精品版优势| 激情五月天情色| 久久免费丁香| 人人爱干人人爱草| 五月婷婷基地| www色五月| 亚洲激情网| 丁香午夜天| 中文字幕在线日亚洲9| 日产精品久久久久久久蜜臀| 综合 蜜月 婷婷| 99色五月| 天天噪夜夜爽| 婷婷 伊人 久久| 91九九| A片试看120分钟做受视频红杏 | 天天干天天做| 99热官网| 毛片蕉地一二| 六月丁香视频网站| 狠狠色噜噜狠狠狠狠综合| 伊人网大香| 五月婷婷久久综合| 91综合色噜噜| 欧美色激情四射| 99热这里都是精品| 亚洲无码www| 99热18| 亚洲 无码 中文字幕 中出| 日日夜夜爽| 丁香五月日韩| 五月丁小婷婷激情四射| 熟女激情网| 九九亚洲综合| 日本激情五月天‘| 综合色播| 午夜丁香综合婷婷| AV国产有码| 九九热大香蕉| 免费一区二区三区| 丁香婷婷免费| 五月婷婷啪啪啪| 久久五月婷6 9| 99精品一二三四视频| 婷丁香五月天| 97久久超碰| 抽插特写| 五月天婷婷丁香蜜桃91| 成人日韩欧美| 伊人玖玖网| 丁香婷婷久久激情| 开心五月婷婷| 99热在线精品播放| 俺去也五月天| 五月丁香色停停啪啪啪| 天天草婷婷五月| 久久久99免费视频| 色婷婷五月在线| 丁香综合日产精品久久| 免费国产VA国产免费| 五月色影院| 农村熟妇高潮精品A片| 午夜爱爱网站| 婷婷免费视频| 99综合99| 婷婷五月天激情五月天网站| 高清无码入口| 色婷婷久久| 囯产精品久久欠久久久久久九大| 99热这里有精品2| 激情五月最新网址| 超碰在线观看99| 丁香五月婷婷六月婷婷| 色婷插| 色五月丁香五月| 亭亭色网| 久久精品一区二区三区四区| 伊人五月天在线| 欧美三级黄色片久久| 国产超碰在线| 色欲色香伊人| 91丨九色丨东北熟女| 99碰碰| 这里只有精品视频一区| 欧美日综合| 精品成人无码A片观看香草视频| 亚洲天堂久久| 99噜噜噜| 1024操逼视频| 色综合久久99色| 99激情视频| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 婷婷五月天xxx| 久草五月天| 五月丁香久| www.99热精品| 亚洲AV网址| 99激情| 久久加勒比| 激情婷婷五月| 最新av在线观看| 狠狠99| 九九99九九99九九99视频网| 99欧美| 99re久久| 五月丁香| 一区二区你懂的| 五月天激情国产综合AV| 丁香五月天社区婷婷| 少妇人妻综合色6699| 99热在线播放精品| 五月婷婷,狠狠操| 婷婷五月电影| 色色com| 色五月xxx| 婷婷五月色| 伊人六月丁香婷婷| 五月激情婷婷图片基地| 婷婷五月天激情小说| 伊人激情综合| 国产免费av在线| 丁香激情五月少妇| 婷婷色啪| 婷婷午夜| 久久人妻久久| 久月婷婷| 2025神马午夜福利| 91久久电影| 狠狠干综合| 精品亚洲国产成AV人片传媒| 2025色婷婷| 超级碰碰碰碰视频| 操碰97| 丁香五月人妻熟女| 无码yw| 久久五月天综合| 天天天天天操| 玖玖五月| 无码成人AAAAA毛片AI换脸| 天天色,天天日,天天做| 色碰碰视频| 超碰在线caop| 婷婷色亚洲| 亚洲深喉AV| 99热色精品| 色婷婷五月天中文字幕| 伊人大香蕉毛片| 强伦轩人妻一区二区电影| 五月天激情综合网站| 亚洲一二三网| 色婷婷丁香五月| 五月婷导航| 五月丁香激情四射| 综合久久十| 四虎成人精品永久免费AV九九| 日日爽日日操| 亚洲乱码日产精品BD| 九九热精品6| 久草大| 七月丁香婷婷 色色| 日韩在线视频网站| 婷婷五月丁香六月天亚洲综合| 婷婷午夜综合| 性色九九| 欧美成人精品A片免费一区99| 五月婷婷在线综合| 五月天色婷婷小说| 四虎成人精品永久免费AV九九| 熟惀91九色在线| 激情久久久久久久久久久| 激情五月天之六月婷婷| 久久婷婷啪啪视频| 日本三级色| 婷婷五月色| 激情六月色| 91啪级电影| 五月激情婷婷四射| 国产午夜精品一区二区三区嫩草| 九九热99视频| 亚洲最大激情无码| 五月丁香久久丝袜啪啪| 色色色视频免费无码 | 9热在线观看| 久久性爱网| 丁香六月欧美| 综合激情五月婷婷| 丁香五月成人社区| 激情婷婷综合网| 激情五月婷婷| 日韩精品AV一区二区三区| 婷婷五月综合色拍| 尔尔AV一区| 激情五月天色爱| 激情小说五月丁香在线视频观看视频| 狠狠爱激情网| 五月天丁香婷婷社区| 成人五月天综合网| 亚洲精品国产熟女久久久| 97碰在线视频| 黄色片区子| 激情综合五| 99av视频| 99热这里只有精品22| 99er在线观看| 深爱激情网婷婷| 五月婷婷干干干| 久操福利| www.91久久| 色婷婷偷拍| 91久久免费| 另类图片五月天婷婷| 五月丁香亭亭电影久久| 99婷五月| AV网址大全在| 五月丁香花激情啪啪网| 激情婷婷黄色五月| 视频1区2区| 91亚洲免费片| 人妻激情视频| 日韩 中文 欧美| www.五月天婷婷| 日韩精品成人在线| 夜夜干天天操| 97人人射| 无码激情AAAAA片-区区| 久热精品免费视频4| 综合色五月亭亭| 99热 精品在线| 日韩一本操| 影音先锋91网站在线观看| 少妇人妻偷人精品无码视频新浪| 综合色图婷婷| 99久久婷婷五月| 桃色五月天| 九月色婷婷| 丝袜大香蕉| 婷婷激情六月综合| …亚洲黄色在线播放日韩、av中文a…| 五月丁香六月欧美| 国产婷伊人| 激情五月丁香色婷婷| 亚洲热热视频| 婷婷六月丁香激情| 99热这里只有精品9| 碰碰女| 日日夜夜干| 五月丁香婷婷综合网色欲| 丁香五月av在线| 蜜桃婷婷丁香综合久久开心亚洲| 天天激情视频| 国产3p露脸普通话对白| 天天干天天干天天干天天干天天| 国产精品久久久久9999小说| 五月天无码视屏播放| 99熟女| 天天综合久久| 五月天久久久| 这里只有免费的精品| 四色99久久| 色色色999| 精品无码久久久久久久久| 香蕉视频性爱BB做爱| 热久久色| 人人澡天天色天天做| 色婷婷丁香五月天激情综合网| 色欲久久久久| 婷婷爱五月天| 久草婷婷视频| 侠女刀之记忆电影在线看免费| 久久99成人性爱高清视频| 婷婷五月激情中文字幕| 另类少妇人与禽zOZZ0性伦| 欧美性爱丁香五月| 婷婷五月丁香六月| 欧美综合五月丁香六月婷| 中文字幕激情综合| 成人无码髙潮喷水A片| 丁香五婷| 久久婷婷欧美| 亚洲色啪| 婷婷综合天堂| 99色这里| 天天看A片| 久久99这里只有精品视频| 99超级碰碰| 性做久久久久久久免费看| 久久婷婷东京热| 思思视频这里是精品| 亚洲色网络| 99ER热精品视频| 亚洲无aV在线中文字幕 | www.五月天婷婷姐姐| 久色激情| 高清a片基地| 五月天婷婷六月激情网| 99这里有精品| 九九久久9 9在线观看| 国产AV影片| 国产白丝在线一区| 丁香六月激情国产| 国产又色又爽又黄又免费| 日本一毛片| 婷婷激情五月天小说| 激情婷婷五月| 婷婷六月视频| 99热在线只有精品| 日韩日比视频在线| 69婷婷丁香午夜| 日本人妻A片成人免费看片| 艹色18p| 六月丁香婷婷尤物| 色噜噜狠狠色综合日日| 亚洲高清在线| 激情久久五月天| 丁香五月很很肏| 这里只有国产精品在线| 五月天色色色| 婷婷久久欧美| 久热9| 九热免费视频| 欧美日韩成人一区二区| 中文网婷婷字幕婷| 综合色色色| 激情影院69| 2025天天爽天天摸| 97干干干丁香| 亚洲十月婷婷综合| 婷婷五月欧美综合| 少妇口诉沐足视频播放器网址| 五月婷婷色丁香| 天天操天天操天天操天天操天天操天天操天天操天天操天天操 | 婷婷无码视频| 超碰九九热| 天堂综合久| 久久五月丁香| 激情久久综合网| 五月丁香六月婷婷久久| 婷婷伊人视婷婷婷| 激情五月激情综合网| 九月婷婷综合在线| 亚洲色99| 日韩在线一级| 午夜婷婷久久| 91色噜噜狠狠狠狠色综合| 97色色综合| 久婷久婷| 99热.com| WWW丁香五月| 欧美色综合天天久久综合精品| 天天婷婷天天| www.99热国产| 99综合色| 97在线刺激| 国产成人网址| 蜜臀A∨在线水帘洞| 极品少妇XXXX精品少妇偷拍| 99re思思热这里| 中文字幕婷婷9月天| 深爱激情69热| 六月丁香婷婷色狠狠久久| 丁香五月激情五月| 亚洲av网址| 几激情五月婷婷色五月色天堂| 97干婷婷| 久草五月天| 丁香五月婷婷姐| 91人人爱| 五月天成人在线播放| 丁香五月影视| 99精品偷自拍| 丁香六月婷婷综合欧美| 激情五月婷| 五月丁香在线偷拍视频| 五月综合激情图片| 色综合综合色| 天天色综合综合| 99热这里全都是精品| 久久久亚洲精品一区二区三区浴池 | av免费在线看不卡无毒| 天天日天天爽夜夜爽| 91婷婷色 | 五月天综合色| 六月丁香婷婷综合色播| 2050人人操免费工开爱| 九九在线视频| 插插插丁香五月婷婷| 久热A片| 久久婷婷婷| 九九99视频精品| 久久受www免费人成| 人人操人人干AV| 五月激情五月丁香| 五月色激情综合网| 99热这里只有精品9| 激情五月婷婷综合色播小说| 久草视频一,二三四| 99色| 热99在线精品| 国产又黄又爽又激情不遮挡视频在线观看| 久久sp免费视频| 99色在线| 五月婷婷激情五月| 五月丁香在线视频观看| 亚洲av网址| 另类少妇人与禽zOZZ0性伦| 五月婷婷六月丁香激情| 第四色色六月色综合| a毛片二逼wwwwwwwwww| www.婷婷五月| 色综合色色色| 色婷五月丁香久亚洲| 久久精品99久久| AV网在线| 亚洲五月花| 欧美婷婷五月丁香| 9999热精品在线免费播放| 99玖玖在线视频| 五月丁香婷婷综合激情基地| 91色在线/日韩| 久久3级片| 99精品网| 秋霞成人毛片一级A片| 天天五月情| 久热这里有精品视频| 丁香婷婷超碰 | 91精品久| 丰满少妇猛烈A片免费看观看| 1024操逼视频| 日日操夜夜骑| 婷婷五月天亚洲精品| 丁香婷婷精品视频| 99热综合网| 日韩AV一区二区三区| 人妻内射一区二区在线视频| 亚洲五月婷| 丁香成人五月天| 日韩人妻操逼视频| 69婷婷丁香午夜| 五月丁香激情综合啪| 六月丁香综合| 久久九九@| 色婷婷玖玖影院| 欧美日本不卡黄色片| 久久97久久99久久综合欧美| 亚洲精品色| 婷婷伊人网| 久久99操| 99啪| 五月丁香六月成人| 激情 婷婷| 色五月天在线观看| 丁香五月激情啪啪| 色日本网| 五月激情婷婷开心| 开心五月深爱激情| 天天做天天爱天天玩夜夜爽| 天天狠狠色噜噜| 色婷婷婷综合五月天| 丁香五月天色综合| 色情·com| 再綫Av免费視品| 国产99美少妇| 第四色色六月色综合| 热九九在线| 99色综合网| 婷婷五月天播| 亚洲一色色色色色色色色| 久久这里只精品66| 亚洲一色色色色色色色色| 成人色站,在线视频,看片-SS1AV| 五月丁香日本片| 免费色色色| 色五月婷婷成人视频| 色亚洲中文| 久热最新视频 | 大香蕉久久| 欧美噜噜免费观看| 丁香婷婷综合五月天| 日操五月婷| 丁香六月毛片| 99亚洲无码| 激情五月天婷婷五月天| 免费看欧美成人A片无码 | 日韩一级网站| 婷婷五月天堂| 婷婷激情五月吧| 五月丁香在线国产 | 人伦30P| 午夜一区| 99久热这里有精品| 五月天色网站| 色欧洲| 人人摸人人操人人爽| 五月激情六月综合| 少妇人妻偷人精品无码视频新浪 | 9色在线| 婷婷五月丁香五月| 久久这里有精品在线观看| 天天天天天日| 日日干天天射| 九九热精品视频在线观看| 风流少妇A片一区二区蜜桃| 精品一区久热| 亚洲综合一区二区| 99re思思热在线视频| 色婷婷六月开心中文字| 少妇激情五月天| 丁香五月激情婷婷| 激情内射人妻1区2区3区| 伊人超碰在线| 丁香五月婷婷啪啪啪| 亚洲激情丁香五月基地| 天天做天天爱天天爽综合网| 99久久99九九九99九他书对| 亚洲中文字幕在线观看| 伊人超碰在线| 思思久久网| 天天夜夜六月丁香五月婷婷老师| 婷婷五月影院| 国产精产国品一二三在观看| 99在线视频喷水| 久久免费9| wwccc久久久| 新激情五月天天在线网| JAPANRCEP老熟妇乱子伦视频 | 99只有这里是精品| 久久在线大香蕉| 人妻久久久| 亚洲成人无码免费| 狠狠色婷婷7| 91婷婷五月天嫩女| 综合激情婷婷| 光棍影院日韩精品| 婷婷五月激情基地| 思思热闹这里只有精品| 狠色狠色综合久久| 久久丁香五月天| 碰超亚洲| 丁香色色网| 韩国天天婷婷| 激情99| 日韩一级网站| 开心五月深爱五月婷| 色婷婷a v| 激情6月| 玖玖国产视频一区| 婷婷五月激情视频在线| 日日日日日| 色九月欧美| 这里只有精品免费视频在线观看| 亚洲色在线观看| 色婷婷五月天无码视频| 婷婷五月天无码视频| 综激情网| 色站9/| 日日夜夜噜噜爽爽| 久青草影院| 丁香婷婷色九月| 五月开心深爱激情网| 国产精品久久久久久亚洲毛片| 婷婷五月激情欧美| 天天狠狠干| 久久精品国产AV一区二区三区 | 亚洲激情av| 夜夜撸夜夜骑| 国产精品成人网址| 99成人精品| 色欲一区二区三区精品A片| 五月天激情网址| 五月天激情视频五月天| 久久久天堂国产精品女人| 中文字幕av久久爽一区| 丁香婷婷情色五月天| 老师高潮流白浆喷水的A片| 亚洲激情99| 久久国产色| 97在线综合| 婷婷激情视频| 97婷婷狠狠久久综合9色| 天天爽天天摸| 91性交在线播放| 人人舔人人色人人高潮| 亚洲综合九九| 五月婷婷六月丁香免费| 狠狠综合| 亚洲午夜av| 丁香婷婷九月| 狠狠爱五月婷婷| 亚洲综合五月| 色99无码| 日本爆乳片手机在线播放| www.九月婷婷丁香.com| 婷婷伊人五月天| 日本操B片| 五月丁香操亭亭网| 99人人干人人操| www.henhengan| 五月丁香婷婷综合视频| 好色婷婷| 91视频五月丁香| 久久最新色| 五月停停色色丁香| 在线99热| 五月天成人综合| 欧美激情五月天婷婷| a网站免费观看| 天天色五月| 色欧美一级| 激情综合亚洲色婷婷五月| 九九精品免费视频99| 激情久久综合网| www.99操.com| 亚洲六月婷婷| 超碰色综合| 一起草AV| 99这里的视频都是精品| 国产美女无遮挡裸体毛片A片| 色婷婷六月激情| 亚洲五月六月婷婷| 久久黄色片| 五月丁香婷婷成人版| 色99日韩| 综合亚洲色色| 国产欧美熟妇另类久久久| 操日本人妻视频| 99热黄| 天天肏高清在线| 色五月综合网| 大陆极品少妇内射AAAAAA| 亚洲色综合性| 91久久久久久久91| 五月丁香六月婷婷网| 日本va欧美va精品发布视频| 久久婷婷青青草| 五月天婷婷影院影院观看| 九九re精品视频在线观看| 亚洲天天| 婷婷综合五月色播| 91色吧网| 五月天色综合| 天天天天色天天天天天干| 999久久久国产精品| 五月丁香综合激情网| 激情纯色婷婷五月天在线不卡视频| 五月天婷婷无码| 99综合自拍| 久月丁香爱婷婷综合| 伊人狼人干| 日本色99| 日日夜夜青青草| 日韩美女羞羞网站在线观看| 99热这里只有精品2| 五月色情网| www.婷婷,com| 婷婷精品视频| 婷婷射丁香| 99热99干| 嫩草免费视频| 在线中文av| 五月天电影网| 99热播放| a性生活久久无| 婷婷六月激情| 六月丁香激情综合| 亚洲激情av| 热婷婷av| 色婷婷色情| 色色丁香五月| 久久视频在线视频| 婷婷激情人妻| 亚洲 无码 中文字幕 中出| 97黑人精品区| 免费观看全黄做爰的视频| 超碰爱爱爱| 五月丁香亚洲五月| 91一起艹| 东北熟女高潮99综合99| 91狠狠综合久久| 亚洲操操操| 久久婷婷五月草视频在线播放| 超碰国产AV| 久久一级AV| 五月天婷婷在线AN| 色色色com| 一二三区视频韩国| 婷婷精品| 五月丁香综合网| 玖玖精品婷婷| 五月婷婷亚洲色视频| 97成人视频| 99热99这里只有精品| 9热网站| 激情婷婷狠狠干| 香蕉久久国产AV一区二区| 99这里只有免费的精品| 五月丁香亭亭| 狠狠干天天内射| 丁香五月色情| 天天日天天摸天天| 成人无码髙潮喷水A片| 欧美噜噜免费观看| 中文字幕婷婷在线| 五月婷婷伊| 午夜69成人做爰视频| 日本超碰在线| 丁香六月综合激情| 人人爱人人摸人人澡| 丁香五月婷婷六月婷| 人人操99| 超级黄色片| 丁香九色不卡aaa| 欧美色激情四射| 99久热| 99亚洲精品视频| 9久久久久| 99色在线观看视频| 色情五月婷婷| 婷婷丁香五月亚洲综合网在线视频观看| 99爱在线| 人人爽人人射-美女久久久久久久久久-成人AV | 精品成人在线观看| 伊人久久大香线蕉综合网站| 影音先锋男人av资源站| 国产做A爰片毛片A片美国| 激情五月天网| 五月婷色| 色婷视频| 综合色99| 粉嫩av蜜桃av蜜臀av| 人妻久热| 国产午夜精品一区二区| 久色资源| 日婷婷久久开心| 激情欧美五月丁香| 五月天婷婷激情综合| 五月婷婷婷婷| 日日爽日日爽| 99热无码首页| 婷婷激情五月天激情| 久久婷婷六月综合| 亚州色色色| 色色AV色色色东莞| www.婷婷五月天| 五月婷婷丁香啪啪| 99热天堂| www.99在线| 狠狠狠狠狠狠草| xx色综合| 色婷婷五月综合在线| 五月婷婷婷婷婷| 99综合一区| 五月婷婷,六月丁香| 99色精品| 久久久久婷| 97狠狠色| 超碰99热| 国产精品日本一区二区在线播放 | 91综合国免费久入| 久久久婷婷| 丁香五月性| A片试看120分钟做受视频红杏| 国内一级片| 天堂网操| www.五月天婷婷| 99热18| 丁香五月AV在线| 人妻尝试久久久久久久久久久久| 婷婷激情五月天在线| 91狠狠综合网| 午夜少妇在线观看视频| 99热成人| 色色网站免费观看| 九九激情综合| 九九热99在线视频| 96精品成人无码A片观看金桔| 99热碰碰| 丁香五月婷婷色| 天堂婷婷五月在线| 超碰猛烈的性猛交| 奇米色大香蕉| 风流少妇A片一区二区蜜桃| 97婷婷丁香| 99日这里只有精品| 婷五月天在线草| 亚洲成人免费在线| 婷婷五月天精品| 九久九精品| 精品人妻伦一二三区久久| 婷婷五月天综合久久| 99er精品视频| 人人看人人草人人摸| 色色色777| 久热成人| 成人av观看| 九色视频入口91| 婷婷五月天天| 国产亚洲精品AAAAAAA片| 五月激情啪啪| 久久看婷婷| 国产精品VA在线| 五月之婷婷| 丁香五月人妻熟女| 2023天天日夜夜爽| 噜综合| 久久婷婷六月综合| 欧美丁香五月97色| 色色丁香五月| 日亚二欧美| 婷婷激情综合色五月久久图片| 五月丁香亚州综合网| 狠狠一日| 伊人狼人干| 操大屄五月天视频| 97人人干视频| 天堂在线伊久| yjzz亚洲国产| 久久久全国免费视频| 天天操天天干天天射| 色婷婷呢狠禁久禁| 色五月亚洲| www.99riav99| 超碰人人在线观看| 97成人在线视频| 精品国婬伦V无码久久久| 色亭亭丁香五月天| 狠狠色婷婷丁香五月| 亚洲精品中文字幕成人片| 激情综合在线播放| 丁香五月停停基地| 97色欧美| 影音先锋一区| 色五月激情视频在线综合| 五月香蕉综合| 玖玖精品资源| 99免费视频网| 超碰高清在线| 综合综合色色| 777久久综合视频| 国产精品-91JQ就要激情网91JQ6.91JQ27.CASA:16888 | 99在线观看精品视频| 色香蕉影院| 碰97 久| 婷婷五月丁香激情图片| 玖玖五月丁香| 97啪啪| 激情婷婷五月天伊人在线观看 | 久久精品国产一区二区三区四区| 国精产品一区一区三区免费视频| 五月天另类小说久久小说网| 91九色无码内射| 熟女激情网| 婷五月天在线草| 国产精品日韩十五区| 猫咪伊人久久| www.色综合| 婷婷色色综合| 波多野结衣AV无码Porn| 99小视频| 丁香五月婷婷成人网| 色五婷婷在线视频| 亚洲婷婷丁香| 亚洲蜜乳AV| 99热这里只要精品免费| 精品一二三区久久AAA片| 五月丁香日本片| 六月婷婷五月天| 大香蕉九操| 欧美熟女视频 色婷婷| 色五月天堂| 丁香九月激情久久| 狠狠xx| 五月黄色婷婷| 婷婷五月成人系列| 草草色情综合网| 五月婷婷婷自由综合| 99精品偷自拍| 九九免费精品在线视频| 五月天婷婷小说| 九九热这里只有精品7| 成人AV在线网站| 九九99热| 99久在线| 久久ww| 色五月在线播放| 国产成人+综合亚洲+天堂| 伊人激情啪啪| 丁香六月婷婷久久高清| 在线视频99| 91大神操美女| se99视频| 色热久资源| 99色视频| 99在线观看视频精品| 九九成人| 狠狠色狠狠鲁| ai97re99一本| www.五月丁香| 99色五月| AA丁香综合激情| 深爱 五月天| 欧美三级巜人妻互换| 久久久五月婷婷| 久久婷婷五月综合色天| 在线观看婷婷5月| 中文无码婷婷| 五月丁香成人网| 欧美丁香六月激情视频| 热99视频精品在线| 一级无码作爱片| 婷婷五月花丁香| 六月婷婷色色色| www.99热这里只有精品| 丁香五月婷婷五月天在线| 亚洲亚洲人成综合网络| 99热这里只有精品国产精品| se.久久视频在线观看| 欧美日比视频| 91婷婷丁香五月天免费视频网站| a久久| 狠狠色婷婷六月激情网| 久久九⑨| 另类图片天天影视在线观看| 深爱五月激情网| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 五月天婷婷丁香视频| 色婷婷色丁香色欲av| 蜜桃人妻无码AV天堂三区| 伊人婷婷五月天| 青草视频在线观看视频| 五月丁香六月婷婷综合网缴情| 婷婷色五月开心五月| www.夜夜操| 人人摸人人干人人做| 91成人看片| 二色av| 色狠久| 日本人妻A片成人免费看片| 国产成人精品一区二三区熟女在线| 欧洲电影在线观看免费版英语版 | 婷婷97碰碰| 五月停停999| 色色五月婷婷久久| 大伊香蕉玖玖爱| 亚洲激情综合| www.yw色| 国产精品成人AV在线| 成人婷婷| www久久久| 激情六月丁香综合|