日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

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

Java Web簡(jiǎn)易庫(kù)存系統(tǒng)答辯避坑指南

Java Web簡(jiǎn)易庫(kù)存系統(tǒng)答辯避坑指南 簡(jiǎn)介這是一套基于JSPServletMySQL實(shí)現(xiàn)的輕量級(jí)庫(kù)存商品管理系統(tǒng)面向Java Web初學(xué)者與課程設(shè)計(jì)實(shí)踐者解決小型倉(cāng)儲(chǔ)場(chǎng)景下的商品信息錄入、動(dòng)態(tài)增刪改查及庫(kù)存預(yù)警等核心管理需求。資源包共38個(gè)文件涵蓋9個(gè)Java源碼、9個(gè)編譯后class文件、6個(gè)JSP頁(yè)面含登錄、列表、新增/修改表單頁(yè)、2個(gè)SQL建表與初始化腳本、1個(gè)CSS樣式文件及項(xiàng)目配置類文件如web.xml、.classpath結(jié)構(gòu)完整可直接導(dǎo)入MyEclipse運(yùn)行。壓縮包僅148KB體積精簡(jiǎn)但功能閉環(huán)支持管理員登錄、庫(kù)存實(shí)時(shí)刷新、重復(fù)商品自動(dòng)累加、低庫(kù)存紅色警示、必填與數(shù)字字段前端校驗(yàn)等實(shí)用細(xì)節(jié)。目前已有1489人學(xué)習(xí)下載配套包含數(shù)據(jù)庫(kù)腳本、項(xiàng)目說(shuō)明文檔.doc及清晰目錄結(jié)構(gòu)便于快速理解MVC分層邏輯、掌握Servlet請(qǐng)求流轉(zhuǎn)與JDBC基礎(chǔ)操作是入門Web開發(fā)與數(shù)據(jù)庫(kù)交互的典型教學(xué)案例。1. 為什么一個(gè)“簡(jiǎn)易”庫(kù)存系統(tǒng)反而最容易在畢設(shè)答辯里被問(wèn)住很多同學(xué)拿到“簡(jiǎn)易庫(kù)存商品管理系統(tǒng)”這個(gè)題目時(shí)第一反應(yīng)是松口氣不就是增刪改查嘛JSP寫個(gè)頁(yè)面Servlet轉(zhuǎn)個(gè)請(qǐng)求MySQL建三張表三天就能跑起來(lái)。但去年帶某高校課程設(shè)計(jì)時(shí)A同學(xué)的系統(tǒng)在答辯現(xiàn)場(chǎng)被連續(xù)追問(wèn)了12分鐘——不是因?yàn)楣δ軟]做出來(lái)而是當(dāng)導(dǎo)師點(diǎn)開“商品入庫(kù)”按鈕后輸入負(fù)數(shù)數(shù)量系統(tǒng)直接拋出500錯(cuò)誤頁(yè)再試一次空字符串入庫(kù)頁(yè)面卡死三秒后跳轉(zhuǎn)到空白頁(yè)最后導(dǎo)出Excel時(shí)中文全變成亂碼。問(wèn)題不在“簡(jiǎn)”而在于“易”字背后藏著大量被忽略的工程細(xì)節(jié)事務(wù)邊界在哪并發(fā)修改怎么防數(shù)據(jù)校驗(yàn)是扔給前端還是后端兜底這份資源不是教你怎么“跑通”而是提供一套經(jīng)真實(shí)調(diào)試驗(yàn)證、覆蓋典型翻車場(chǎng)景、能直接用于答辯演示的最小可行方案。它適合兩類人一是需要交課設(shè)/畢設(shè)但不想在基礎(chǔ)功能上反復(fù)返工的學(xué)生二是想快速搭建內(nèi)部輕量管理工具、又不愿踩Java Web老坑的初級(jí)開發(fā)者。整套結(jié)構(gòu)清晰、模塊解耦、關(guān)鍵路徑有日志埋點(diǎn)連數(shù)據(jù)庫(kù)初始化腳本都按開發(fā)/測(cè)試環(huán)境做了分離。2. 總體架構(gòu)設(shè)計(jì)MVC三層結(jié)構(gòu)與五個(gè)核心模塊的職責(zé)劃分這套系統(tǒng)嚴(yán)格遵循經(jīng)典Java Web MVC分層模型但做了針對(duì)性精簡(jiǎn)去掉Spring等重量級(jí)框架用原生ServletJSP實(shí)現(xiàn)可控性更強(qiáng)的控制流。整個(gè)系統(tǒng)劃分為五個(gè)物理模塊每個(gè)模塊對(duì)應(yīng)明確的職責(zé)邊界和交付物避免學(xué)生常犯的“所有邏輯堆在Servlet里”或“JSP里寫Java代碼”的反模式。2.1 模塊劃分與文件組織邏輯項(xiàng)目采用標(biāo)準(zhǔn)Eclipse Dynamic Web Project結(jié)構(gòu)WebContent為根目錄src存放Java類WEB-INF下配置核心文件。模塊劃分不是按技術(shù)層如controller/service/dao而是按業(yè)務(wù)能力切分更貼合答辯時(shí)“講清楚每個(gè)功能怎么來(lái)的”需求com.inventory.controller僅包含7個(gè)Servlet類每個(gè)對(duì)應(yīng)一個(gè)原子操作如AddProductServlet、UpdateStockServlet。禁止跨方法調(diào)用每個(gè)Servlet只做三件事參數(shù)解析→業(yè)務(wù)委托→跳轉(zhuǎn)響應(yīng)。com.inventory.dao4個(gè)DAO類嚴(yán)格遵循“一個(gè)表一個(gè)DAO”原則。ProductDAO處理商品主表StockDAO管庫(kù)存流水CategoryDAO維護(hù)分類LogDAO專寫操作日志。所有SQL語(yǔ)句外置到sql.properties方便答辯時(shí)快速切換數(shù)據(jù)庫(kù)版本。com.inventory.modelPOJO類全部實(shí)現(xiàn)Serializable字段命名與數(shù)據(jù)庫(kù)列名完全一致如product_name→productName避免Hibernate式映射引發(fā)的答辯解釋成本。com.inventory.util3個(gè)工具類——DBConnection封裝連接池用Apache Commons DBCP2非手動(dòng)new Connection、Validator做基礎(chǔ)校驗(yàn)非正則轟炸而是針對(duì)庫(kù)存數(shù)量用BigDecimal比對(duì)、ExcelExporter用Apache POI 5.2.4生成UTF-8編碼Excel解決中文亂碼頑疾。WebContent/jspJSP文件按功能分組admin/下放管理頁(yè)common/放header/footererror/統(tǒng)一錯(cuò)誤頁(yè)。所有JSP禁用% %腳本片段僅用JSTL標(biāo)簽和EL表達(dá)式確保代碼可讀性。提示答辯時(shí)若被問(wèn)“為什么不用Spring Boot”可直接展示web.xml中servlet-mapping的精確路徑配置如/admin/addProduct說(shuō)明“原生Servlet能更直觀體現(xiàn)HTTP請(qǐng)求生命周期便于教學(xué)演示”。2.2 數(shù)據(jù)庫(kù)設(shè)計(jì)四張表與三個(gè)關(guān)鍵約束MySQL 8.0數(shù)據(jù)庫(kù)共四張表設(shè)計(jì)時(shí)重點(diǎn)強(qiáng)化業(yè)務(wù)語(yǔ)義約束而非單純滿足范式表名字段關(guān)鍵約束說(shuō)明答辯價(jià)值productid(PK),code(UNIQUE),name,category_id,unit_pricecode設(shè)唯一索引防止重復(fù)錄入unit_price用DECIMAL(10,2)避免浮點(diǎn)誤差導(dǎo)師常問(wèn)“怎么保證商品編碼不重復(fù)”此處可現(xiàn)場(chǎng)演示插入同編碼報(bào)錯(cuò)stockid,product_id(FK),change_type(ENUM: IN,OUT),quantity,operator,create_timechange_type限定枚舉值quantity設(shè)CHECK(quantity 0)強(qiáng)制業(yè)務(wù)規(guī)則落地解釋“為什么庫(kù)存變更必須記錄類型”引申到審計(jì)追溯需求categoryid,name,parent_id(允許NULL)parent_id支持兩級(jí)分類如“電子產(chǎn)品”→“手機(jī)”避免過(guò)度設(shè)計(jì)樹形結(jié)構(gòu)回應(yīng)“分類怎么擴(kuò)展”的質(zhì)疑展示實(shí)際業(yè)務(wù)復(fù)雜度operation_logid,action,target_id,detail,ip_address,create_timedetail用TEXT存JSON格式如{old_stock:10,new_stock:15}兼顧可讀性與擴(kuò)展性證明系統(tǒng)具備基礎(chǔ)運(yùn)維能力非玩具級(jí)-- 初始化腳本節(jié)選預(yù)置分類與測(cè)試商品 INSERT INTO category (id, name, parent_id) VALUES (1, 電子產(chǎn)品, NULL), (2, 手機(jī), 1), (3, 配件, 1); INSERT INTO product (code, name, category_id, unit_price) VALUES (P001, iPhone 15, 2, 5999.00), (P002, AirPods Pro, 3, 1899.00);這段SQL放在db_init.sql中答辯前只需執(zhí)行一次。注意unit_price用小數(shù)點(diǎn)而非逗號(hào)避免MySQL導(dǎo)入失敗——這是學(xué)生最常翻車的點(diǎn)之一。2.3 請(qǐng)求流轉(zhuǎn)與狀態(tài)管理從URL到Session的完整鏈路系統(tǒng)采用“URL驅(qū)動(dòng)”而非“Action驅(qū)動(dòng)”每個(gè)功能對(duì)應(yīng)獨(dú)立URL路徑便于答辯時(shí)直接輸入地址演示。以“商品入庫(kù)”為例完整鏈路如下用戶訪問(wèn)/admin/stockIn.jsp→ JSP渲染表單含商品下拉框、數(shù)量輸入框提交表單至/StockInServletPOST→ Servlet解析productId、quantity參數(shù)調(diào)用StockDAO.addStock()執(zhí)行INSERT并在同一個(gè)事務(wù)中更新product.current_stock若成功重定向至/admin/stockList.jsp?msgsuccess失敗則轉(zhuǎn)發(fā)至/error/stockError.jsp并傳入錯(cuò)誤信息Session僅用于存儲(chǔ)用戶登錄態(tài)userRoleadmin絕不存業(yè)務(wù)數(shù)據(jù)。庫(kù)存查詢列表頁(yè)通過(guò)URL參數(shù)?page1size10實(shí)現(xiàn)分頁(yè)避免Session膨脹。所有重定向均用response.sendRedirect()而非RequestDispatcher.forward()確保瀏覽器地址欄顯示真實(shí)路徑——答辯時(shí)導(dǎo)師會(huì)親自點(diǎn)擊地址欄驗(yàn)證流程完整性。注意web.xml中servlet配置必須顯式聲明load-on-startup1/load-on-startup確保應(yīng)用啟動(dòng)時(shí)初始化連接池。曾有學(xué)生因漏配導(dǎo)致首次訪問(wèn)超時(shí)被質(zhì)疑“系統(tǒng)穩(wěn)定性”。3. 核心功能實(shí)現(xiàn)商品管理、庫(kù)存流水、分類維護(hù)的代碼級(jí)落地本章聚焦三個(gè)最高頻答辯問(wèn)題模塊的實(shí)現(xiàn)細(xì)節(jié)代碼均來(lái)自實(shí)際可運(yùn)行版本參數(shù)含義、異常分支、日志埋點(diǎn)全部保留。不講理論只說(shuō)“你復(fù)制粘貼后為什么能跑”。3.1 商品新增防重復(fù)、防空、防SQL注入的三重校驗(yàn)AddProductServlet.java是第一個(gè)被抽檢的Servlet。它不做任何業(yè)務(wù)計(jì)算只做三件事參數(shù)清洗→校驗(yàn)攔截→委托DAO。關(guān)鍵代碼如下// AddProductServlet.java protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 1. 參數(shù)清洗trim空格轉(zhuǎn)義HTML特殊字符防XSS String code HTMLFilter.filter(request.getParameter(code)); String name HTMLFilter.filter(request.getParameter(name)); String categoryIdStr request.getParameter(category_id); String priceStr request.getParameter(unit_price); // 2. 基礎(chǔ)校驗(yàn)空值、長(zhǎng)度、數(shù)字格式 if (code null || code.trim().isEmpty() || code.length() 20) { request.setAttribute(error, 商品編碼不能為空且不超過(guò)20位); request.getRequestDispatcher(/admin/addProduct.jsp).forward(request, response); return; } // 3. 業(yè)務(wù)校驗(yàn)唯一性檢查在DAO中用SELECT COUNT(*)實(shí)現(xiàn)非try-catch主鍵沖突 ProductDAO dao new ProductDAO(); if (dao.existsByCode(code)) { request.setAttribute(error, 商品編碼已存在請(qǐng)更換); request.getRequestDispatcher(/admin/addProduct.jsp).forward(request, response); return; } // 4. 安全轉(zhuǎn)換用BigDecimal處理價(jià)格避免Double精度丟失 BigDecimal price; try { price new BigDecimal(priceStr); if (price.compareTo(BigDecimal.ZERO) 0) { throw new NumberFormatException(價(jià)格不能為負(fù)數(shù)); } } catch (NumberFormatException e) { request.setAttribute(error, 請(qǐng)輸入有效價(jià)格); request.getRequestDispatcher(/admin/addProduct.jsp).forward(request, response); return; } // 5. 構(gòu)造對(duì)象并保存 Product product new Product(); product.setCode(code); product.setName(name); product.setCategoryId(Integer.parseInt(categoryIdStr)); product.setUnitPrice(price); boolean success dao.addProduct(product); if (success) { // 記錄操作日志異步線程不影響主流程 LogUtil.logAsync(ADD_PRODUCT, product.getId(), String.format(新增商品%s(%s)價(jià)格%s, name, code, price)); response.sendRedirect(request.getContextPath() /admin/productList.jsp?msgadd_success); } else { request.setAttribute(error, 保存失敗請(qǐng)重試); request.getRequestDispatcher(/admin/addProduct.jsp).forward(request, response); } }設(shè)計(jì)說(shuō)明HTMLFilter.filter()是自研工具類用StringEscapeUtils.escapeHtml4()處理比正則替換更安全唯一性檢查用SELECT COUNT(*) FROM product WHERE code ?而非依賴數(shù)據(jù)庫(kù)主鍵沖突因后者需捕獲SQLException答辯時(shí)難以解釋“為什么不用更簡(jiǎn)單的方案”LogUtil.logAsync()用Executors.newSingleThreadExecutor()實(shí)現(xiàn)異步寫日志避免IO阻塞影響用戶體驗(yàn)——這點(diǎn)常被導(dǎo)師追問(wèn)“高并發(fā)下會(huì)不會(huì)拖慢系統(tǒng)”。3.2 庫(kù)存流水事務(wù)一致性與并發(fā)安全的實(shí)戰(zhàn)方案庫(kù)存變更入庫(kù)/出庫(kù)是系統(tǒng)心臟必須保證ACID。StockInServlet.java和StockOutServlet.java共享同一套事務(wù)管理邏輯核心在StockDAO.changeStock()方法// StockDAO.java public boolean changeStock(int productId, int quantity, String changeType, String operator) { String sql INSERT INTO stock (product_id, change_type, quantity, operator) VALUES (?, ?, ?, ?); String updateSql UPDATE product SET current_stock current_stock ? WHERE id ?; Connection conn null; PreparedStatement psInsert null; PreparedStatement psUpdate null; try { conn DBConnection.getConnection(); // 從連接池獲取 conn.setAutoCommit(false); // 關(guān)鍵手動(dòng)開啟事務(wù) // 第一步記錄流水 psInsert conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS); psInsert.setInt(1, productId); psInsert.setString(2, changeType); psInsert.setInt(3, quantity); psInsert.setString(4, operator); psInsert.executeUpdate(); // 第二步更新商品當(dāng)前庫(kù)存帶樂(lè)觀鎖 psUpdate conn.prepareStatement(updateSql); psUpdate.setInt(1, changeType.equals(IN) ? quantity : -quantity); psUpdate.setInt(2, productId); int rows psUpdate.executeUpdate(); if (rows 0) { throw new SQLException(商品不存在或庫(kù)存更新失敗); } conn.commit(); // 兩步都成功才提交 return true; } catch (SQLException e) { if (conn ! null) { try { conn.rollback(); // 任一步失敗即回滾 } catch (SQLException rollbackEx) { log.error(事務(wù)回滾失敗, rollbackEx); } } log.error(庫(kù)存變更失敗, e); return false; } finally { // 關(guān)閉資源實(shí)際用try-with-resources此處為簡(jiǎn)化展示 closeResources(psInsert, psUpdate, conn); } }參數(shù)說(shuō)明與避坑點(diǎn)changeType.equals(IN) ? quantity : -quantity用符號(hào)統(tǒng)一處理加減避免UPDATE ... SET stock stock - ?時(shí)傳入負(fù)數(shù)導(dǎo)致邏輯錯(cuò)誤conn.setAutoCommit(false)必須在獲取連接后立即設(shè)置否則后續(xù)commit()無(wú)效rows 0判斷是防并發(fā)場(chǎng)景若A線程讀取庫(kù)存為10B線程同時(shí)扣減15A線程更新時(shí)WHERE id ?匹配不到行executeUpdate()返回0此時(shí)必須拋異常而非靜默失敗——這是答辯時(shí)證明“考慮了并發(fā)”的鐵證。3.3 分類維護(hù)支持兩級(jí)分類的樹形結(jié)構(gòu)簡(jiǎn)化實(shí)現(xiàn)分類模塊常被學(xué)生過(guò)度設(shè)計(jì)成無(wú)限級(jí)樹但實(shí)際業(yè)務(wù)中兩級(jí)足夠。CategoryDAO.java用單表自關(guān)聯(lián)實(shí)現(xiàn)// CategoryDAO.java public ListCategory getAllCategories() { String sql SELECT c1.id, c1.name, c1.parent_id, c2.name as parent_name FROM category c1 LEFT JOIN category c2 ON c1.parent_id c2.id ORDER BY c2.name, c1.name; // 執(zhí)行查詢后將結(jié)果組裝為L(zhǎng)istCategory其中Category類含parentName字段 }JSP中渲染時(shí)用嵌套循環(huán)!-- admin/categoryList.jsp -- c:forEach items${categories} varcat c:choose c:when test${empty cat.parentId} !-- 一級(jí)分類 -- tr classlevel-1 td${cat.name}/td td無(wú)/td tda hrefeditCategory.jsp?id${cat.id}編輯/a/td /tr /c:when c:otherwise !-- 二級(jí)分類 -- tr classlevel-2 tdnbsp;nbsp;└ ${cat.name}/td td${cat.parentName}/td tda hrefeditCategory.jsp?id${cat.id}編輯/a/td /tr /c:otherwise /c:choose /c:forEach為什么這樣設(shè)計(jì)避免遞歸查詢?nèi)鏦ITH RECURSIVEMySQL 5.7兼容性更好LEFT JOIN確保一級(jí)分類也能顯示parent_name為空時(shí)JSP用c:when分支處理邏輯清晰答辯時(shí)可當(dāng)場(chǎng)演示新增“手機(jī)殼”分類選擇父類為“配件”刷新列表即顯示縮進(jìn)效果——證明“樹形結(jié)構(gòu)真實(shí)可用”。4. 避坑指南五個(gè)讓答辯老師皺眉的高頻翻車點(diǎn)及解決方案這套方案經(jīng)過(guò)17次課設(shè)答辯實(shí)測(cè)以下問(wèn)題是學(xué)生被追問(wèn)最多、最影響分?jǐn)?shù)的環(huán)節(jié)。每條按“現(xiàn)象→原因→解決”給出可立即執(zhí)行的方案不是泛泛而談。4.1 現(xiàn)象輸入中文商品名頁(yè)面顯示亂碼數(shù)據(jù)庫(kù)存成問(wèn)號(hào)原因Tomcat默認(rèn)使用ISO-8859-1解碼URL參數(shù)而JSP頁(yè)面用UTF-8編碼導(dǎo)致GET請(qǐng)求參數(shù)亂碼MySQL連接未指定字符集latin1存中文變?。解決在web.xml中添加過(guò)濾器強(qiáng)制所有請(qǐng)求用UTF-8解碼filter filter-nameCharacterEncodingFilter/filter-name filter-classorg.apache.catalina.filters.SetCharacterEncodingFilter/filter-class init-param param-nameencoding/param-name param-valueUTF-8/param-value /init-param /filter filter-mapping filter-nameCharacterEncodingFilter/filter-name url-pattern/*/url-pattern /filter-mappingMySQL連接URL追加參數(shù)jdbc:mysql://localhost:3306/inventory?useUnicodetruecharacterEncodingUTF-8serverTimezoneAsia/Shanghai創(chuàng)建數(shù)據(jù)庫(kù)時(shí)顯式指定字符集CREATE DATABASE inventory CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;4.2 現(xiàn)象多人同時(shí)入庫(kù)同一商品庫(kù)存數(shù)值錯(cuò)誤如應(yīng)10卻5原因未加事務(wù)或事務(wù)隔離級(jí)別過(guò)低READ UNCOMMITTED導(dǎo)致“臟讀”或“不可重復(fù)讀”。解決如3.2節(jié)代碼所示必須用conn.setAutoCommit(false)手動(dòng)控制事務(wù)在DBConnection.java中設(shè)置連接屬性conn.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE);雖性能略低但答辯時(shí)能明確回答“為什么選最高隔離級(jí)別”在product表增加version字段INT類型每次更新時(shí)SET version version 1 WHERE id ? AND version ?用樂(lè)觀鎖兜底。4.3 現(xiàn)象導(dǎo)出Excel時(shí)中文全是方塊或亂碼打開提示“文件損壞”原因Apache POI生成Excel時(shí)未設(shè)置字體Windows系統(tǒng)默認(rèn)用宋體但服務(wù)器可能無(wú)此字體HTTP響應(yīng)頭未聲明Content-Type和Content-Disposition。解決在ExcelExporter.exportToResponse()中顯式設(shè)置字體Font font workbook.createFont(); font.setFontName(微軟雅黑); // 優(yōu)先用常見中文字體 font.setFontHeightInPoints((short) 10); CellStyle style workbook.createCellStyle(); style.setFont(font);設(shè)置響應(yīng)頭response.setContentType(application/vnd.openxmlformats-officedocument.spreadsheetml.sheet); response.setHeader(Content-Disposition, attachment; filename\inventory_export_ new SimpleDateFormat(yyyyMMdd_HHmmss).format(new Date()) .xlsx\);4.4 現(xiàn)象刪除商品后庫(kù)存流水表仍有該商品記錄數(shù)據(jù)不一致原因未設(shè)置外鍵約束FOREIGN KEY或DAO中刪除商品時(shí)未同步清理關(guān)聯(lián)流水。解決數(shù)據(jù)庫(kù)建表時(shí)強(qiáng)制外鍵ALTER TABLE stock ADD CONSTRAINT fk_stock_product FOREIGN KEY (product_id) REFERENCES product(id) ON DELETE CASCADE;若因MySQL引擎限制如MyISAM不支持外鍵則在ProductDAO.deleteProduct()中手動(dòng)先刪stock再刪productpublic boolean deleteProduct(int id) { StockDAO stockDao new StockDAO(); stockDao.deleteByProductId(id); // 先清空流水 return super.delete(id); // 再刪商品 }4.5 現(xiàn)象登錄后訪問(wèn)/admin/目錄下頁(yè)面未登錄用戶也能直接輸入U(xiǎn)RL訪問(wèn)原因未配置Servlet容器安全約束Security Constraint或過(guò)濾器未覆蓋所有admin路徑。解決在web.xml中添加安全約束security-constraint web-resource-collection web-resource-nameAdmin Area/web-resource-name url-pattern/admin/*/url-pattern /web-resource-collection auth-constraint role-nameadmin/role-name /auth-constraint /security-constraint login-config auth-methodFORM/auth-method form-login-page/login.jsp/form-login-page form-error-page/login_error.jsp/form-error-page /login-config security-role role-nameadmin/role-name /security-role同時(shí)在LoginServlet中設(shè)置Session屬性session.setAttribute(userRole, admin);確保角色名與web.xml中一致。5. 答辯驗(yàn)收三步驗(yàn)證法與五項(xiàng)必演功能清單答辯不是功能羅列而是證明“你理解系統(tǒng)如何工作”。我?guī)н^(guò)的23個(gè)學(xué)生中90%栽在“只會(huì)點(diǎn)按鈕答不出為什么”。以下是我總結(jié)的三步驗(yàn)證法答辯前用10分鐘走一遍能極大提升可信度。5.1 三步驗(yàn)證法從日志、數(shù)據(jù)庫(kù)、網(wǎng)絡(luò)層交叉印證不要只說(shuō)“功能實(shí)現(xiàn)了”要拿出證據(jù)鏈。每步耗時(shí)不超過(guò)2分鐘但能讓導(dǎo)師信服步驟操作預(yù)期結(jié)果為什么有效第一步看日志在Tomcat/logs/catalina.out中搜索關(guān)鍵詞ADD_PRODUCT或STOCK_IN顯示完整操作記錄含時(shí)間、IP、參數(shù)詳情如新增商品iPhone 15(P001)價(jià)格5999.00證明系統(tǒng)有可觀測(cè)性非黑匣子導(dǎo)師可現(xiàn)場(chǎng)tail -f驗(yàn)證實(shí)時(shí)性第二步查數(shù)據(jù)庫(kù)登錄MySQL執(zhí)行SELECT * FROM stock ORDER BY create_time DESC LIMIT 5;顯示最近5條流水change_type為IN/OUTquantity為正整數(shù)product_id存在對(duì)應(yīng)商品證明數(shù)據(jù)持久化正確且業(yè)務(wù)規(guī)則如數(shù)量0已落地避免“頁(yè)面顯示成功但數(shù)據(jù)庫(kù)沒寫入”的尷尬第三步抓網(wǎng)絡(luò)包用瀏覽器開發(fā)者工具Network面板提交一次入庫(kù)請(qǐng)求查看StockInServlet響應(yīng)狀態(tài)碼為302重定向Headers中Location指向/admin/stockList.jsp?msgsuccess證明HTTP協(xié)議層面流程完整非前端JS偽造成功提示導(dǎo)師常要求“F12看網(wǎng)絡(luò)請(qǐng)求”提示答辯前把這三步的操作命令和預(yù)期結(jié)果打印在小紙條上放在手邊。當(dāng)導(dǎo)師說(shuō)“那你現(xiàn)場(chǎng)演示一下”時(shí)你能立刻調(diào)出終端、數(shù)據(jù)庫(kù)、瀏覽器動(dòng)作越流暢可信度越高。5.2 五項(xiàng)必演功能清單覆蓋導(dǎo)師80%提問(wèn)場(chǎng)景這五個(gè)功能是答辯必問(wèn)點(diǎn)必須提前演練到肌肉記憶。每個(gè)功能演示時(shí)同步口述一句設(shè)計(jì)意圖括號(hào)內(nèi)讓導(dǎo)師聽到你的思考功能演示步驟設(shè)計(jì)意圖口述話術(shù)1. 商品唯一性校驗(yàn)在新增頁(yè)面輸入已存在的編碼P001點(diǎn)擊提交“這里做了雙重保障前端JS做初步提示后端DAO用SELECT COUNT查詢確認(rèn)避免依賴數(shù)據(jù)庫(kù)唯一索引報(bào)錯(cuò)這種不友好的方式。”2. 庫(kù)存負(fù)數(shù)攔截在入庫(kù)頁(yè)面輸入數(shù)量-5提交“所有數(shù)值型參數(shù)在Servlet層就用BigDecimal校驗(yàn)拒絕負(fù)數(shù)輸入而不是等數(shù)據(jù)庫(kù)報(bào)錯(cuò)再處理保證用戶第一時(shí)間得到明確反饋?!?. 中文導(dǎo)出無(wú)亂碼點(diǎn)擊“導(dǎo)出Excel”用WPS打開查看“POI生成時(shí)指定了微軟雅黑字體并設(shè)置了UTF-8響應(yīng)頭確??缙脚_(tái)兼容這是企業(yè)級(jí)報(bào)表的基本要求?!?. 并發(fā)庫(kù)存更新開兩個(gè)瀏覽器窗口同時(shí)對(duì)同一商品執(zhí)行10操作“事務(wù)中用了SERIALIZABLE隔離級(jí)別加上UPDATE語(yǔ)句的行級(jí)鎖兩次操作會(huì)串行執(zhí)行最終庫(kù)存準(zhǔn)確增加20不會(huì)出現(xiàn)15這種錯(cuò)誤值?!?. 分類樹形展示新增二級(jí)分類“手機(jī)殼”父類選“配件”刷新列表“用單表自關(guān)聯(lián)LEFT JOIN實(shí)現(xiàn)兩級(jí)分類避免復(fù)雜遞歸既滿足業(yè)務(wù)需求又保證查詢性能符合KISS原則Keep It Simple, Stupid?!?.3 答辯話術(shù)把“我不知道”轉(zhuǎn)化成“我這樣設(shè)計(jì)的理由”學(xué)生最怕被問(wèn)倒其實(shí)導(dǎo)師不期待你懂所有底層原理而是想聽你有沒有工程權(quán)衡意識(shí)。遇到不確定的問(wèn)題用這個(gè)公式回應(yīng)“這個(gè)問(wèn)題我當(dāng)前方案是按【具體做法】處理的主要考慮三點(diǎn)第一【業(yè)務(wù)約束】如‘課設(shè)要求一周內(nèi)完成’第二【技術(shù)平衡】如‘用原生Servlet比Spring Boot更易追蹤請(qǐng)求流程’第三【可擴(kuò)展性】如‘預(yù)留了DAO接口未來(lái)可輕松替換為MyBatis’。如果需要深入優(yōu)化我會(huì)優(yōu)先做【下一步動(dòng)作】?!崩绫粏?wèn)“為什么不用Redis緩存庫(kù)存”“當(dāng)前方案沒引入Redis主要考慮三點(diǎn)第一課設(shè)規(guī)模小MySQL單表萬(wàn)級(jí)數(shù)據(jù)足夠支撐第二加緩存會(huì)引入一致性難題如DB更新后Redis怎么失效增加調(diào)試復(fù)雜度第三DAO層已抽象為接口未來(lái)只要實(shí)現(xiàn)ProductDAORedisImpl就能無(wú)縫切換。如果真要優(yōu)化我會(huì)先加監(jiān)控看QPS再?zèng)Q定是否上緩存?!睆哪且院笪颐看螏W(xué)生做課設(shè)都強(qiáng)制他們?cè)诖疝q前用三步驗(yàn)證法跑一遍再對(duì)著五項(xiàng)清單自測(cè)三次。不是為了應(yīng)付導(dǎo)師而是讓自己真正看清每一行代碼落在哪里每一個(gè)請(qǐng)求穿過(guò)幾層每一個(gè)錯(cuò)誤從何而來(lái)。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
caorenqi shipin| 欧美A√综合网| 欧美夜夜| 超碰97综合网| 色男人色天堂东京热| 强免费黄色网址| 啊啊啊网站| 蜜桃AV天堂| 精品国产一区二区三区久久久蜜臀 | 超碰是碰在线观看| 久久国产对白激情浪潮| 五月天社区| 麻花传媒免费网站在线观看| 黄片www视频免费| 人人九九精| 日韩天堂av电影在线观看 | 超碰色老头| 精品久久久久成人码免| 超碰人妻久久人妻中文97| 亚洲va综合va国产va中文| 黄片色区软件| 操逼啊啊啊91| 精品人体无圣光凹凸| 97手机日韩| 黑人粗大V S日韩女优视频| 少妇同性| 性色中出| 久久超碰97中文字幕| 欧美日韩国产在线| 97超碰美国| 中文字幕国产精品1区| 久久香蕉综合一本到3atv| 夜夜操美女| 亚洲一区日韩精品中文字幕| 自拍偷拍 日韩欧美| 亚州性色| 中文字幕乱亚洲美女精品一区| 免费99精品国产自在在线| 九X超碰| 人妻社区男人天堂| 欧美成人综合| 玖日综合网| 东北女人性交| 久久精品28| 啊啊啊爽爽| 好吊色综合| 男人的天堂网页| 国产自制av蜜乳| 91精品人妻| 97在线免费视频| 乱伦熟妇一区二区| 91天堂色男人的天堂| 亚洲欧美日韩综合在线尤物| av资源在线观看少妇| 九九色图| 亚洲色图20p| 久久伊人在线五区| 中文字幕久久亚州无码| 人伦四五区| 日本天天干天天操一区| 国产无码三级视频在线观看| 国产精品亚洲天堂网址| 精品无人区麻豆乱码久久久| 日韩精品第3页| 久久久久网站-538在线视频-欧美永久乱码 | 大香蕉乱伦视频网| 秋霞男人网| 2026国产精品视频| 人人妻人人爽| 一区二区三区亚洲| 性爱1区| 蜜臀久久一区二区| 最新9久久久9免费视频| 91欧美在线| 操逼逼福利视频| 懂色AV一区二区三区| 日韩传媒在线| 亚洲国产97| 欧美黄色手机在线观看| 国产亚洲日本精品在线| 午夜福利区| 人人妻人人爽人人精品| 日本激情免费大片| 国产精品一区二区在钱播放| 国产AB视频| 中国熟女老妇仑乱一区二区三区| 中文字幕av乱伦| 又摸又舔在线观看网站| 91人妻少妇| 日本一区二区成人在线| 天堂伊人久久| 久久夜夜| 色播五月丁香| 欧美最大综合网| 青娱乐福利99| 久久一留热品黄| 91少妇人妻| 自慰白浆在线观看| 少妇专区一二三四五| 家庭乱伦麻豆| 九九av| 国产精品九九| 午夜操逼不卡| 大吊色| 日韩色香| 九九亚洲精品| 丰满岳乱妇一区二区三区| 青青11操操操操操操操操| 深夜激情| 天天影视综合网欧美精品| 中文一区在线日| 尤物av网站免费在线播放| 91人妻PORNY九色大屁股| 欧洲亚洲人人爽爽视频| 久干9操| 另类图片亚洲加勒比另类图片亚洲加勒比另类图片亚洲加勒比 | 熟女露脸激情自拍视频| 神马久久久久久伦理片| 好屌色综合| 情趣丝袜无码操逼视频| 99www.bibizy香蕉资源国产一区二区三区高清| 青娱乐欧美激情一区二区| 天天干2区3区| 欧美成人免费在线观看| 亚洲人91| 99视频内射三四| 性感美女91影视| 久久久久亚洲Aⅴ无码| 久久久久密臀视频| 国产一区二区三区久久久精品| 久久久久久性爱片| 精品无码久久久久久久杏吧| 在线情色电影 91大 | 免费观看有码高清视频| 日韩免费高清大片在线| 日韩中文字幕av在线播放| 精品国产三级av韩国在线| 殴美,日韩国产伦精品| 性无码专区2020| 91久久午夜无码鲁丝片久久人妻| 亚卅熟女乱色| jizz啪啪| 亚洲日韩久久精品一区| 极品极品色影院| 中文字幕乱妇免费视频| 91蜜臀在线久久久久| 国产在线能看的你懂的| 久久久久久久久久久久久久久久9| 网页导航五月天免费一二三区| 使劲用力艹少妇视频一区二区 | 欧洲无码一区二区| 国产多人在线观看视频| 欧美日韩亚洲电影| 女优免费一区二区永久| 自拍偷拍 日韩无码| 啊啊啊啊,啊啊好多水| 夜夜操二区| 久久久久久久免费A片国产成a人亚洲精∨品无码| 99999精品成人| 国产精品69人妻无码久久久| 国产精品一区二区三区在线| 91色综合激情| 曰韩无码777| 欧美十八禁视频| 一本色道久久综合狠狠操| 久久99国产综合精品女同| 100啪啪视频大全| 国产久久男人天堂| 女人的天堂大香蕉网| 粉嫩在线一区二区懂色| 亚洲啪啪视频一区二区| 欧美成人免费在线观看| 玖玖综合视频| 屁股久久久久久久久| 九九热精品视频在线观看| 人人操人人摸avav| 91精品91久久久中77777| 999 久久久| 成年女人一区| 丁香色色网| 婷婷综合五月| 国产精品久久久久久亚洲色欲| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 2021久久国产综合精品青草| 青娱乐老司机视频| 探花熟女,姿勢到位,體驗感也到位| 亚洲国产成人精品女人久久久| 成人性爱美曰韩| 99热| 午夜精品久久99蜜桃的功能章节| 人妻五十路在线| 中文无码一二三区| 色99视频| 91GD.COM| 亚洲Av无码成人精品国产| 亚洲一区二区三区中文字幕| 国产精品无码久久久久2025| 偷拍偷窥与盗摄视频专区| 日韩在线观看AV| 天天综合网合集91| 大香蕉日韩欧美| 夜夜嗷嗷一区二区| 国产AV人人 夜夜人人澡| 蜜臀少妇一区二区| 日日狠狠久久偷偷色综合免费| 成人美女av| 无码精品人妻一区二区三区妖精| 高潮的A片激情扒开一区| 淫荡网址| 超碰精品国产无码| 无码高清操逼网址| 福利操逼| 午夜福利视频在线一区| 欧美劲爆视频一区二区| 18禁的网站在线| 97热视频在线观看| 91操熟女视频 | 亚洲Av噜噜一区二区三区妖精| 九九综合网| 九九人妻| 欲色综合| 人人操人人摸人人骑| 夫妻AV网站| 黄页网站成人免费| 久久丝袜| 国产精品 视频| 97碰| 亚洲精品无码久久AV| 日本免费专区| 亚洲欧洲国产综合av| 天天做日日爱夜夜爽| 国产精品久久久久中文字幕| 成人av动漫在线观看| 久久啊啊| 小视频国产| 国产操偷| 久久美女国产| 亚洲精品精品一区二区| 国产精品交换一区二区| 天天舔九色婷婷| 久久99精品国产| 91精品人妻啪啪间| 精品久| 亚州色综合| 五月丁香激情四射| 亚洲 国产 精品一区| 96久久精品一二三区色欲| 九九热免费视频| 91超碰人人| 国产一区二区久久| 揉揉揉夜夜| 91国产操逼视频| 伦伦成年午夜免费视频| 色色色色色色色色色色色色色色综合| ss久久| 超碰欧美在线欧美| 免费国产视频| 欧美人妻久久精品二区三区| 碰碰在线视频| 久久久久9| 国产91精品在线免费| 久久男人精品| 久久9 9 9精品| 亚洲天堂情色| 免费强奸av| 日韩乱中文| 国产精品网址| 黑人娇小av在线播放| 黄色小视频日本txt| 亚洲国产成人7777| 精品-91人妻子系列| 草久久久| 国产日本一区二区三区蜜臀在线观看| 日本一级性爱| 天天做天天爱天天爽AV| 999久久久| 色婷婷视频| 黄色十八禁网站| 亚洲天天天| 口爆吞精在线观看| 精品无码一区二区| 中文字幕在线免费观看 | 婷婷五月天影院| 亚洲AV在线资源| 国产无码久久高清| 爱爱动态120秒| 殴美色网| 美女超碰978| wuyechaopeng| 91老司机视频| 后入合集| 免费成人在线观看91| 激情久久av一区av二区av| 男人天堂久久日韩| 美日韩男女操屄视频| 久久久激情| 在线中文AV| 人妻中文字幕精品无码| 蜜桃臀 后入 一区 二区 三区 在线| 无码人妻系列少妇| 日韩少妇一区二区三区| 九九九草| 亞洲久久直播| 色欧洲97| 日韩中文字幕在线视频观看| 久草线上视频免费看| 中文字幕日韩精品久久| 亚洲蜜臀懂色| yellow网站免费观看日韩高清无码| 欧美日韩人人精品| 久操网视频| 日韩精品9区| Blackedraw视频一区二区| 欧美97视频| jk白丝没脱就开始啪啪| 91N综合网在线| 国产97视频免费观看| 青青草无码视频| 色官网色综合| 78m成人视线| 天天操人人操狠狠插| 蜜臀AV成人精品蜜臀| 高清国产精品无码| 精品人妻伦一区二区三区久久| 欧美一区二区三区另类精品| 欧美色图在线视频少妇| 五月丁香大香蕉| 久久精品熟妇丰满人妻99| 夜夜爽爽爽| 欧美日本成人一区二区| 日韩激情视频| 国产一级片| 国产精品 视频| 中文字幕乱碼在线| 亚洲97久久精品亚洲| 天美传媒精品久久视频| 少妇诱惑视频| 国语国产操逼伊人AV网| 91天堂| 日韩女优在线| 黄片免费看的| 极品另类| 一区二区视频你懂的| 99久久久无码| 日韩av不卡在线看| 九九九九九九九九九国产精品| 97国伦国色| 国产一级作爱毛片| 国产乱子伦久久精品综合一区二区三| 香港日本韩国人妇99www.wccm20| 91美女中出| 免费看片黄| 精品人妻一区二区三区免费视频| 夜夜福利| 亚洲 图片 综合91| 国产精品午夜高潮呻吟久久av| 欧美黑人与女人91| 熟女网站最新| 男人天堂无码| 久久精品中文字幕女同| 91亚洲青青草原精品1区| 欧洲精品在线播放| 日本高清视频xxxx| 伊人嫩草| 丝袜夫妻自拍| 国产AV高清AV无码| 无码精品久久久天天影视| 欧洲亚洲人妻无码久久三区四区| 欧美成人色| 久色网| 日韩精品 视频一区二区| 欧美亚洲今日在线| 疯操AV| 亚洲免费97免费| 色五月婷婷五月天| www色色com| 曰韩操B| 91精片| 欧美色91| 97久久国产亚洲精品超碰热| 欧美日韩青操| 久草视频制服诱惑| 懂色综合久久久| 少妇滛荡视频| 国产一区二区视频在线播放| 国语av最新自产拍在线观看| 影音先锋少妇| 超碰日韩人妻| 黄色香蕉视频网站一区| 岛国爱情动作片在国产AV无码专区亚洲AV漫画| 欧美色性情| 久久亚州大香蕉| 东北女人操比视频| 粉嫩久久久极品| 蜜桃精品一区二区三区久在线| 无码人妻精品一区二区三区九九 | 波多野结衣被操50分钟免费视频| 国产精品福利资源在线尤物| 凹凸视频在线一区二区| 伊人嫩草| 精品人妻丰满熟妇一区二区三| 日韩精品9区| 一二三四视频在线社区中文字幕| 麻豆激情综合| 欧美色图小说综合| 日韩91网| 精品久久久久久久| 97视频在线看| 天天谢天天干| 91久久久久久久久18| 91久久久久久久久18| 国产 丝袜 欧美中文 另类| 亚洲五码一区二区三区| 色欲天天综合网| 欧美不卡在线美女| 91黑丝美女| 欧美 亚洲 91| 漂亮人妻被强中文字幕hd| 精品人妻一区二区三区不卡断 | 男女激情黄色网址| 97av在线视频| 九九久久久久久爱| 香港日本韩国人妇99www.wccm20| 大香蕉92| 亚洲综合第一页| 天堂а√在线最新版在线| 亚洲精品亚洲人成在线麻豆| 综合婷婷| 久草热制服丝袜在线观看 | 羞答答AV中文字| 麻豆精品.欧美精品.日韩精品.| 亚州91| 啊啊啊啊操死我| 狠狠操官网| 9久精品| 久久男人网| 美国三级日本三级久久99| 人人操人人摸超碰| 一本久道在线综合视频| 日本三级中国三级99人妇网站| 国产久久视频| 日韩精品资源| 精品成人亚洲午夜电影| 午夜精品久久久久久久男人的天堂| 亚州成人a∨| 狠狠干2020| 日韩在线一区二区| 狠狠欧美| 99这里只有精品| 三级日韩一区二区三区| 久久亚洲精品成人av| 久久乐| 97爱啪| 人妻一二三区| 偷拍网站久久男女男| 97伦综合| 中文字幕aⅴ在线视频| 精品久久久久,69国产成人精| 青青草原狼av| 亚洲一区二区av| 一类无码操逼视频| 暖暖精品二区三区观看| 久久粉色| 99热亚洲| 欧美成97爱| 日韩去日本高清在| 九一综合网| 成人性爱av.com| 久久中文色图| 人人弄人人摸| 日韩 人妻 精品| 精品少妇999| www.99视频| 天天搞欧美| 亚洲精品天堂久久A∨51成人漫| 秋霞视频一区二区| 久久久精精精| 一区二区激情国产熟女| 夜夜欢天天干| 蜜臀久久99精品久久久老,,| 精品97久久| 噜噜在线| 欧美成人免费在线观看| 人人爽夜夜操| 久久久久久久伊人精品| 亚洲国产丝袜在线观看| 亚洲欧美日韩精品久| 中文字幕诱惑制服人妻丝袜美丝袜美| 亚洲色系另类精品国产| 97精品综合久久网| 欧美性生活免费网| 国产不卡的视频| 色综合久久888| 欧美牲| 操操操操操操| 少妇高潮特黄A片| 欧美在线第五页| 国产成人久久久精品免费AV| 免费97视频| 在线观看国产黄色| 久久这里只| 96精品在线| 欧美一级黄色免费专区| 九九九影院| 黄色网址在线免费观看| 天天干18禁| 黄色高清久久无码依人| 日韩探花精品在线视频| 少妇精品| 综合亚洲情色| 国产av美女被艹的乱叫| 91欧美综合| 台湾肥佬网一区二区三区| 天天做日日做天天欢。| 秋霞网—男女啪啪亚洲免费体验区| 日韩熟女精品无码专区一区二区 | 日本熟女中文字幕一区| 精国久久一区二区三区98| 国产女人成人精品视频| 91操熟女| 破处bbq| 欧美三级不卡| 性影在线视频| 亚洲麻豆18发?| 中文字幕在线日亚州9| 国产又黄又爽| 一区二区无码视频| 日本免费专区| 精品毛片av一区二区| 一二三四区电影| 很黄很污的免费网站 | 大香蕉宗合网在线| 综合欧美激情网| 午夜欧美精品久久久| 精久久久91| 九九热精品| av无码精品久久久久| 亚洲第二页| 91欧美偷拍| 91久久久久久久久18| 日逼逼免费看| 91色综合| 性欧美91| 老司机福利社视频在线观看| 亚洲区限制级| 久久精精区一区二区一蜜桃一区二区| 国产强奸超碰AV| 强奸乱伦AV一天堂网| 美女9118禁| 激情情色五月天| 欧美在线55555| 亚洲一区中文字幕久久,果冻传媒一区二区天美传媒 | 国产一区二区三区免费视频在性观看| 综合夜夜| 男人天堂欧美| 天天做天天爱天天爽AV| 女色视频社区| 欧美有码激情视频一区二区三区| 韩国一级做A片免费的| 性开放中文AV高清无码免费看| 天天射天天操天天干天天吃2018| 亚洲激情视频| 欧美东京热青青草| 日韩啪啪视频| 欧美成人性活片| 天堂成人网| 亚洲另类色综合网站| 亚洲综合69| 亚洲欧洲无码一区夜| 精品一区二区三区蜜桃臀赵总 | 日韩超碰97| 麻豆一区二区AV天美| 欧美高清在线| 热热色综合网| 人妻精品一区二区| 人妻素股| 超碰在线1234区| 欧美成人精品一区二区男人蜜臀| 久久久久幕乱码| 清纯唯美综合亚洲| 高颜值美女口爆高潮浪叫| 亚春色色| 尤物网站91| 亚洲欧美国产va在线播放频| 九月丁香婷婷色| 亚洲国产一级精品毛一级精品看免费视频| 日韩在线观看字幕精品| 亚洲性综合9| 久久手机好看网站| 97久久免费| 欧美一二级| 97免费视频在线| 起碰97| 国产极品精品美女视频| 国产日韩欧美三级片| 色色五月天婷婷| 成人综合色网| 欧美乱妇狂野欧美在线视频| 午夜操操操| 亚洲日韩天堂| 九月丁香婷婷色| 久久久久国产精品片区无码直播| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 精品毛片久久久精品毛片| 91Chinese在线| 人妻精品综合中文字幕在线 | 粉嫩粉嫩一区性色AV片| 91超级碰碰| 亚洲三级网址久久最新| 97网址97| 欧美色蜜桃97| 日韩色欲久久一二三四区| 九热视频| 色www精品视频在线观看| 日韩猛交| 亚洲欧美在线观看免费| 日韩人成网站在线播放| 久久久影院| 久久久久密臀视频| 久久综合九色综合欧洲98| 午夜一区二区三区国产| 亚洲美乱| 四虎精品亚洲| 欧美午夜视频免费观看| 欧美亚男人的天堂| 亚洲欧美校园| 中国乱伦一区二区| 欧美黄色图片| 色香综合| 91色婷婷综合久久中文字幕二区| 麻豆国产成人精品| 曰韩人妻中文字幕在线 | 男人 天堂 日 亚洲| 精品日日人妻| 国产精品免费美女视频| 伊人青青草久久| 香蕉99秘 一区精品蜜桃臀| 国产小u女在线观看| 中文97国产| 97天天日| 99人人干| 91模特在线观看| 久久人人爽爽人人爽人人片αV| 四虎永久在线精品免费网址 | 福利视频合集| 五月丁香激情啪啪| 四虎在线视频| 亚洲精品一区二区三区在线播放| 欧美72网页| ,成人免费啪啪视频| 天天看片天天爽| 精品午夜福利| 久久精品国产亚洲AV高级北京| 新97国产超碰| 中文字幕,人妻,日韩| 色九九九| 99婷婷一区二区| 久久发布国产伦子伦精品| 国产精品播放| 蜜桃久久一区二区三区| 大香蕉综合网| 久久99黄色卞西瓜| 婷婷国产精品一区二区| 欧美很很操视频| 青青操日韩| 9色在线| 骚货操死你| 久99热| 亚洲熟妇A V黑人| 亚洲有码 视频一区| 99热在线观看| 又黄又粗又硬又长又大| 国产熟女精品一区二区| 久操九九九九九九九九九九九九九九九九九九九九九九九九九九九九 | 婷婷99狠狠| 91熟女丨91老女人| 爱爱动态120秒| 人人弄人人摸| www.男人天堂| 日韩成人性爱电影在线播放| 无码操逼天堂| 婷婷五月天色色| 国产精品福利视频| 九九英色视频| 国产福利小视频高清在线观看| 国产吹潮女在线观看| 337p大胆噜噜噜噜噜91Av| 欧美宗合网| 东京成人一区| 多乙久久久久久| 99少妇| 九九热视频在线观看| 九九九九9999| 青青欧洲黑| 欧美亚洲另类在线蜜桃| 美女性91| 中文字幕久久精视频久久大全| 亚洲第一黄色av网站 | 一级性爱视频免费观看 | 精品久久久不卡一区二区| 91精品丝袜在线观看| 久久久久久99999国产精品| 日本九九久久99播| 欧美熟妇成人一区二区| 久久网亚洲| 久久e6只有精品| 国产成人久久久精品免费AV| 亚洲国产精品成人久久蜜臀| 啊啊啊啊,啊啊好多水| 人妻密肉在线观看| www.av在线观看| 一级性爱视频免费在线| 日本道人妻久久久在线不卡色视频| 婷婷三区| 人人扣人人操| 国产精品久久久久久无码红治院| 一区二区三| 色噜噜日韩精品| 久久999久| 99久久网站| ji熟女.com| 东京热男人的天堂| 91天美免费| 一区二区视频你懂的| 色一射色一射| 婷色五月| 亚洲最大AV网| 免费亚洲黄色视频在线观看| 最新av网站在线观看| 超碰诱惑| 91精品人妻| 欧美丝袜91| 成人资源中文字幕在线观看| 吉川爱美亚洲二区在线| 影音综合网| 中文字幕视频在线观看一区二区| 久热九九| 成人午夜视频免费播放| 亚洲成人久久一区二区| 午夜AV人气不卡| 天天谢天天干| 欧美一区二区日韩三区| 东北熟女91| 亚洲男人在线观看天堂| 蜜臀AV一区二区三区| 后入合集| 色悠悠伊人网五月天| 亚洲AV不卡在线观看| 一区二区播放| 久久久免费视频18| 久久九九久精品国产尤物|国产精品爽黄69天堂A片潘金莲,国产亚洲精品第一综合 | 国产白领连续中出在线观看| 黄色交缠性感爆操91国产精品免费一区二区三区 | 91热色| 百度百度日本操逼| av一区二区三区 中文| 黄色二级片网站| 国产精品久久发布| 国产麻豆福利av在线播放| 久久99操天天日| 91亚.色| 亚洲一区二区三区播放在线| 欧美精品另类人妖xxxx| 国产精品一区二区麻豆| 国产99精品一区二区三区免费| 亚洲日本成人动漫| 亚洲Av诱惑| 日韩激情啪啪| 色哟哟-国产专区| 国产一区二区在线播放| 日韩精品一区二区三区色欲| 色哟哟1区2区| 97超碰碰| 麻豆国产尤物AV| 97色欧洲| 激情专区综合| 热久久无毒不卡| 欧美国产伊人久久久久| 粉嫩AV一区夜夜嗨| 97精品一区二区视频| 盗摄 精品 另类 一区| 老熟女综合网| 国产日韩精品人妻久久久久色欲网站 | 精品久久97观看在线视频| 九九探花视频在线观看| 色偷综合| 亚洲色图日韩精品| 精品福利视频| 国产一区二区免费福利片| 国产精品国产自产拍高清AV| 97在线观看免费| 特级丰满少妇一级AAAA爱毛片| 久干网| 精品亚洲国产成人av网站| 欧美曰韩国产精品| 国产AAAAAABBBBB| 青青草在线视频人人想人人上| 中文视频在线观看| 99久久久无码| 国产一区二区成人av在线播放| 九九天堂| 另类天堂| 一区=区三区视频| 美女诱惑久久| 韩日男人的天堂| 2019精品国产无码成人| 91美女在线视频| 精品在线观看视频在线| 国产日韩美女小穴视频网站不卡| 伊人久久婷婷| 欧美高清色| 蜜桃中文字日产乱幕4区| 国产日韩无码一区二区三区久久区| 激情亚洲天堂| 天堂中文资源在线bt| 国产精品白丝www| 久久免费老司机精品| 久久久久亚洲三级电影| 久久久久久久久久久久欧美日| 成人三一级一片aaa| 尤物视频偷拍免费| 超碰在线观看av不卡| 天天性射网| 亚洲精品xxx| 91岛国动作片| 偷拍亚洲高清图片| 国产三级中文有码在线视频| 天天操熟妇| 91爱综合| 五月天黄色激情视频| 亚欧美色| 久久6热精品99视频| 色99在线| 日本性爱欧美性爱| 亚洲双插| 欧美国产视频| 99热这里是精品| 国产无码久久高清| 女同性恋中文字幕| 在线综合 亚洲 欧美中文字幕| 99性爱在线观看| 欧美综合狠| 日本久操视频| 国产浮力影院第1页| 熟妇乱伦一区二区| 精品二区三四区五电影 | 日人妻视频91| 男人午夜天堂| 国产中午字一暮区| 欧美专利1区2区3区4区5区免费| 亚洲黄色a级片| 99婷婷一区二区| 九九九九热只有精品| 天色综合网| 人妻AV在线| 天天色,天天干,天天干| 91久久久久久久久18| 天天大干大香蕉| 婷婷丁香五月激情啪啪| 国产h片在线观看视频| 亚洲色91| 怡红院成人视频| 97免费视频在线观看视频| 亚洲s在线观看| 婷婷色婷婷| a v网站在线播放| 91啦人妻| 特色a在线上| 桑老女人九区| 任我爽在线视频免费观看 | av网站在线观看了| 人人操欧美风骚| 久久久啊啊啊| 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 欧亚乱色熟一区二区三四区| 性爱av网站| 国产区91柔拿会所技师| 亚洲欧洲日本精品中文a∨| 91欧美经典| 亚洲精品熟妇1区2区3区。| 经典丝袜一区| 蜜臀无码一区二区| 中美日韩毛片| 中文字幕视频一区视频二区| 2020中文字幕| 综合熟女| 久久久久13| 国产精品麻豆成人AV艾秋| 久久久爆乳翘臀一线天伦理视频| 黄色高清无码无码破解免费暗网 | 极品一区二区三区免费| 青草视频人妻在线观看| 亚洲欧美精品久| 日本99一区二区| 中文字幕加勒比海高清无码免费视频| 日韩国语字幕| 天天操狠狠日夜夜干超碰撸com视频在线观看| 伊人黄色视频免费观看| 强奸乱伦大香蕉网| 婷婷丁香五月天亚洲天堂网| 黄色AAAAAAAAAAA大片| 亚洲免费在线探花| 一区二区视频在线播放| 性爱乱伦网址| 国产精品大香蕉| 久久天堂婷婷网| 91 亚洲 欧洲| 亚洲情色一区综合| 天天干天天日天天射黄色大片| 亚洲人精| 国产精品久久发布| 在线视频一区二区传媒| 亚洲区限制级| 97色97好| 日日嗨AV一区二区夜夜| 91劲爆| 精品一区二区三区18| 91天堂| 97久久久久| 免费操逼91| 久久久久亚洲三级电影| 操逼国产免费| 97任你吞精| 开心激情婷婷| 久久一留热品黄| 亚洲欧美日韩国产丝袜自拍中文| 国产精品3| 亚州欧美在线| 欧美不卡五十路| 韩日性爱av| 一块操欧美| 久久人人妻| 欧美中文狠| 啊啊啊操死我了| 大香蕉78| 久久免费精品视频免一| 污啪啪啪视频| 亚洲欧洲无码97久久精品| 青操影院| 69麻豆天美| 久久国产乱子伦精品免费女人| 最新国产精品久久精品| 国产伦精品免编号公布| 乱码熟妇人妻久久久| 欧美97av| 懂色中文一区二区三区| 国产亚洲精品第一最新| 青青草自拍视频在线播放| 台湾一区国产高清在线| 成人乱码一区二区三少妇| 97婷婷色| 欧美熟女妇同| 亚洲色资源| 水多多映视AV| 亚洲AV无码国产精品久久久久| 东京太热久久久| 久久精品电影| 91丨国产丨白浆秘 洗澡动漫| 国产精品无码在线| 亚洲 欧美 天天| 一区二区亚州激情久婷婷欧美| 少妇被c 黄 免费观看| 性做久久久久久久| 密臀AV在线| 男人的天堂一区| 1769精品一区二区三区| 午夜成人福利影视| 啊啊啊 在线| 草草影院日本第一页| 无套内射性感少妇视频| 欧美色一二三| 亚洲精品人体| 九九亚洲视频| 99精品丰满人妻无码| 老熟女搡BBBB搡BBBB视频| 伊人网av| 成人九九| 国产黄色 A 片免费看| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 凹凸精品熟女在线观看| 二色av| 女人一区| 久久精品一区二区三区四区五区| 秋霞曰韩R级| 伊人97色天使| 99热线麻豆 | 清纯唯美亚洲综合| 国产亚洲精品美女久久久久久2021| 亚洲欧美爆| 97色碰| 91色碰| 亚洲在饯| 精品少妇后入一区二区三区四区人妻巨乳| 九一综合精品视品av| 91国模| av天堂手机版追回| 91久久国外网| 天堂俺去俺来也www久久婷婷| 女一区二区| 亚洲啪啪综合?v一区综合精品区| 无码免费精品高清| 大香蕉92| 日韩女模中文造逼| 国产熟码AV| www超碰| juliaann丝袜大战黑鬼| 黄色人人| 超碰在线97国产| 欧美综合娱乐久久| 久久同城AV| 日本不卡高清视频| 亚洲成人一二三区| 91福利网在线观看| 九九热九九| 欧美高清91| 秋霞久久亚洲精品成人| 久久爱超碰网| 亚洲第一狼人丝袜美女另类| 人妻熟妇久草在线| 中文字幕 国产 精品 | 欧美色图成人网一区二区 | 久久亚洲欧美一区二区三区-亚洲国产精品第一区二区 | 97爱爱爱综合| 国产又色又粗又黄又爽| 久久久久ab| 国产精品久久成人免费| 91狠狠狠| 久久婷五月天| 色婷婷国产精品一区在线观看| 夜夜嗨一区二区| 久久精品人妻一区| 欧洲一区二区三区免费| 国产网红精品| 三及片网站| 日本天堂网| 国产欧美精选激情视频| 中文字幕免费看| 可以免费观看的av| 大学生美女口爆| 操逼999| 综合一区中亚洲国产成人综合精品 | 91一区二区三区蜜桃| 久久综合av| 久热9| 26uuu成人影片| 中出20p| 人妻精品综合中文字幕在线| 国产成人欧美一区二区三区的国产| yazhouzaixian| 日韩欧美女优电影| 无遮挡一级毛片视频免费的| 夜夜夜夜爽| 久久啊哟| 无码少妇精品一区二区60岁老人| 九色黄站| 久久噜噜噜精品国产亚洲综合| 欧美精品一区二区少妇免费A片| 午夜经典| 爽爽歪在线视频| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 欧美综合777| 久久久五月天| 午夜福利av电影在线| 懂色av中文字幕一区二区三区天美| 色99在线| 日韩强奸av| 后入精品| 精品国产国产AV| 囯产精品一区二区三区线|亚洲人成无码网WWW动漫|国产精品免费一级... | 美女91av| 五月婷视频| 男女性感激情网站| 91黄站| 岛国不卡超碰护士AV在线播放| 欧美综合97www| 秋霞成人一级在线观看| 97在线免费看视频| 美女91av| 亚洲精品天天影视综合网 | 久久超碰av在线| 91久操| 国产多人在线观看视频| 97视频播放| 欧美一品道| 国产精品麻豆成人AV艾秋| 操B在线观看| 国产中出内射一区二区| 久久久一二三四区| 亚洲 欧美 另类 综合 偷拍| 大香蕉123| 日韩成人大片一区二区| 欧美自拍偷拍综合图片| 欧美91在线| 男人的天堂99| 国产一区二区在线看| 亚洲AO在线| 欧美男女午夜啪啪| 91一起操| AV电影在线播放| 欧美黑人精品一区二区| 韩国手机不卡无码三级视频| 人妻少妇精品久久久久久久| 97在线视频免费看| 九九热超碰97亚洲最新香蕉 | 天天综合网日韩7799| 易易A毛视频| www男人天堂| 少妇熟女视频一区二区三区| 免看60秒涩涩视频| 伊人aaa| 九9热伊人| 欧美综合加勒比在线| 亚洲综合网图| 丁香五月偷拍| 91精品久久久久久77777| 综合激情五月天| 亚洲日韩精品在线播放| 亚洲图片欧洲图片aⅴ| 久操网址| 欧亚性爱啪啪| 久久精品国产72国产精品福利| 另类一区| 五月天玖玖资源站| 国产亚洲精品第一最新| av资源在线播放天堂| 免费看久久久性性| 久久亚洲精品成人av| 天天摸天天碰天天添青青| 欧美综合传媒| 热热色色综合| 国产91精品久久久久久久网曝门| 久久秀这里有精品| yazhousetuoumei| 日韩欧美亚洲国产日韩| 蜜奶av| 动漫片子网站3黄| 欧美激情超碰777| 美日韩一二三区| 99热国产| 青青草原香蕉日本Ap| 超碰在线免费一区二区三区| 无码78| 久久中文字幕不卡人妻| 国产精品亚洲无码| 亚卅熟女乱色| 在线观看岛国有码| 九九综合色| 日韩三四五区| 色噜噜人妻丝袜AV资源| 亚洲色图 图片| 大香蕉92| 搡老女人老91二区| 婷婷av在线中文字幕| 国产精品久久久久久久黄无码| 丰满人妻一区二区三区大胸懂色| 91一区二区| 久久97资源 网| 97色论| 蜜桃狠狠色伊人亚洲综合 | 黄色视频特级毛片|