免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

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

Java Web學(xué)生信息管理系統(tǒng)開(kāi)發(fā)指南:從選型到部署避坑

Java Web學(xué)生信息管理系統(tǒng)開(kāi)發(fā)指南:從選型到部署避坑 簡(jiǎn)介這是一份面向高校計(jì)算機(jī)相關(guān)專業(yè)學(xué)生的畢業(yè)設(shè)計(jì)資源提供基于Java Web技術(shù)的學(xué)生信息管理系統(tǒng)完整源碼與論文文檔。系統(tǒng)采用MVC架構(gòu)和DAO設(shè)計(jì)模式涵蓋學(xué)生信息、課程、成績(jī)和用戶權(quán)限等核心管理模塊可用于學(xué)籍管理、學(xué)生檔案跟蹤等場(chǎng)景。資源包共62個(gè)文件壓縮包大小4.29MB包含20個(gè)Java源碼文件、3個(gè)JSP頁(yè)面、3個(gè)CSS樣式及MySQL建表SQL腳本等代碼結(jié)構(gòu)清晰、注釋完整配套論文涵蓋需求分析、系統(tǒng)設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)與測(cè)試報(bào)告便于直接部署運(yùn)行和學(xué)習(xí)二次開(kāi)發(fā)。目前已有30人學(xué)習(xí)適合需要快速理解Servlet、JSP、JDBC及分層架構(gòu)實(shí)踐的開(kāi)發(fā)者參考。1. 學(xué)生信息管理系統(tǒng)為什么這個(gè)老題目至今還有人搶著選在高校課程設(shè)計(jì)和本科畢業(yè)設(shè)計(jì)里“基于Java Web技術(shù)的學(xué)生信息管理系統(tǒng)”是出現(xiàn)頻率最高的題目之一甚至可以說(shuō)是 Java Web 課程設(shè)計(jì)案例源碼搜索榜上的常青樹(shù)。這個(gè)題目的生命力來(lái)自三個(gè)巧合工程量恰好夠一個(gè)學(xué)生在兩周內(nèi)完成知識(shí)點(diǎn)恰好能串起從 Servlet 到 JSP 再到數(shù)據(jù)庫(kù)的完整鏈路論文又恰好能從需求、設(shè)計(jì)、實(shí)現(xiàn)、測(cè)試各寫兩章不至于沒(méi)話可說(shuō)。對(duì)選這個(gè)題的人來(lái)說(shuō)真正的難點(diǎn)從來(lái)不是“做不做得出”而是“跑得穩(wěn)、答得出、論文和代碼對(duì)得上”。這篇內(nèi)容就按選型、建表、編碼、部署、避坑、論文對(duì)齊這條線把常見(jiàn)做法和踩過(guò)的坑一次講清。2. 技術(shù)選型怎么定JSPServlet 和 Spring Boot 兩條路我該選哪條2.1 傳統(tǒng) JSPServlet答辯最穩(wěn)代碼每一行都在自己手里如果目標(biāo)是“盡快交付、順利答辯”JSPServlet 是絕大多數(shù)人的答案。原因很直接這個(gè)方案里你寫的每一行代碼都是課程里學(xué)過(guò)的登錄邏輯、權(quán)限判斷、數(shù)據(jù)庫(kù)連接全都在你的掌控范圍內(nèi)。答辯老師讓你現(xiàn)場(chǎng)改一個(gè)字段名、加一個(gè)查詢條件你能打開(kāi)代碼直接改這是最加分的表現(xiàn)。常見(jiàn)做法的技術(shù)棧是三件套JSP 做頁(yè)面展示Servlet 做請(qǐng)求分發(fā)和業(yè)務(wù)控制DAO 類用 JDBC 操作 MySQL。這套結(jié)構(gòu)天然就是 MVC論文里的“系統(tǒng)架構(gòu)圖”也容易畫View 是 JSPController 是 ServletModel 是 DAO 和 JavaBean。依賴少部署環(huán)境也簡(jiǎn)單Tomcat 8.5 或 9.0 都能跑網(wǎng)上能搜到的排錯(cuò)答案也最多。它的短板也很明顯代碼寫多了會(huì)顯得“土”頁(yè)面里容易混進(jìn) Java 腳本片段重定向和轉(zhuǎn)發(fā)如果分不清代碼就會(huì)亂成一團(tuán)。但這些短板是可以通過(guò)約束自己來(lái)彌補(bǔ)的比如強(qiáng)制自己只用 JSTL 而不是腳本片段、寫操作一律走 POST。對(duì)于課程設(shè)計(jì)和畢設(shè)來(lái)說(shuō)這些約束足夠讓代碼達(dá)到合格水平。還有一個(gè)被很多人忽略的點(diǎn)大部分學(xué)校 Java Web 課程教的就是 JSPServletJDBC你用這個(gè)技術(shù)棧做畢設(shè)是順著課程來(lái)的答辯時(shí)不需要解釋“我為什么不用課程里教的東西”。2.2 Spring Boot 路線代碼更規(guī)范但要答得上“封裝”另一條路是 Spring Boot。它的優(yōu)勢(shì)很實(shí)在內(nèi)嵌 Tomcat不用單獨(dú)裝容器Maven 管理依賴不用手動(dòng)往 WEB-INF/lib 里塞 jar 包代碼結(jié)構(gòu)和工程化程度都比傳統(tǒng) JSP 方案高出不少。如果讀者將來(lái)要投的是 Java 開(kāi)發(fā)工程師崗位Spring Boot 是簡(jiǎn)歷上繞不開(kāi)的關(guān)鍵詞用畢設(shè)提前練手是一舉兩得的事也是 java 面試題里高頻出現(xiàn)的話題。但選擇這條路線是有代價(jià)的。答辯老師如果比較傳統(tǒng)很可能會(huì)追問(wèn)一句“課程設(shè)計(jì)題目要求的是 Java Web你這個(gè) Spring Boot 算不算 Java Web”你要能答得出來(lái)“Spring Boot 底層仍然是 Servlet 容器DispatcherServlet 只是把 doGet/doPost 封裝得更簡(jiǎn)潔了”才能把這個(gè)問(wèn)題圓住。答不出這一層老師很容易判斷你是套了模板而不理解原理。另外從“現(xiàn)成源碼”的角度看網(wǎng)上的 Spring Boot 項(xiàng)目復(fù)雜度普遍偏高攔截器、全局異常、MyBatis 映射、DTO 轉(zhuǎn)換這些概念疊加在一起對(duì)基礎(chǔ)薄弱的學(xué)生來(lái)說(shuō)能在答辯前把整個(gè)請(qǐng)求鏈路講清楚是一件比寫代碼本身更耗時(shí)間的事。2.3 選型結(jié)論一張表和一個(gè)建議對(duì)比維度JSPServletSpring Boot學(xué)習(xí)成本低課程內(nèi)容直接覆蓋中要額外理解框架封裝部署方式外置 Tomcat配置簡(jiǎn)單內(nèi)嵌容器IDE 一鍵啟動(dòng)答辯風(fēng)險(xiǎn)低不會(huì)出現(xiàn)“你用什么框架”追問(wèn)中要能解釋 Boot 與 Servlet 的關(guān)系簡(jiǎn)歷價(jià)值弱屬于基礎(chǔ)技能強(qiáng)貼近企業(yè)級(jí)開(kāi)發(fā)失敗排查網(wǎng)絡(luò)資料極多版本沖突問(wèn)題更多需要 Maven 基礎(chǔ)適合人群求穩(wěn)、追求效率交付面向就業(yè)、愿意多花時(shí)間我的建議偏向傳統(tǒng)方案如果一個(gè)月后就要答辯現(xiàn)在還沒(méi)有完整的代碼骨架那就選 JSPServlet別給自己加戲。如果距離答辯還有三個(gè)月且畢業(yè)后確定要找 Java 后端方向Spring Boot 值得投入。換一個(gè)角度說(shuō)這個(gè)選題的代碼骨架是可復(fù)用的你把它改成健康飲食推薦系統(tǒng)、圖書借閱系統(tǒng)、課程管理系統(tǒng)核心還是登錄和增刪改查技術(shù)選型的邏輯不會(huì)變。3. 庫(kù)表設(shè)計(jì)與核心代碼五張表加一個(gè)外鍵把學(xué)生管理的最小閉環(huán)跑通3.1 先建表學(xué)生、班級(jí)、課程、成績(jī)、用戶五張表的關(guān)系怎么設(shè)計(jì)學(xué)生信息管理系統(tǒng)的核心數(shù)據(jù)模型不太復(fù)雜常見(jiàn)的做法是設(shè)計(jì)五張表學(xué)生表、班級(jí)表、課程表、成績(jī)表、用戶表。班級(jí)表和學(xué)生表是一對(duì)多關(guān)系學(xué)生表和課程表通過(guò)成績(jī)表關(guān)聯(lián)用戶表獨(dú)立存放登錄賬號(hào)。下面這套 SQL 可以直接在 MySQL 里執(zhí)行字符集統(tǒng)一用 utf8mb4避免中文亂碼。CREATE DATABASE IF NOT EXISTS student_db DEFAULT CHARACTER SET utf8mb4; USE student_db; -- 班級(jí)表先建因?yàn)閷W(xué)生表要引用它的主鍵 CREATE TABLE class_info ( id INT PRIMARY KEY AUTO_INCREMENT, class_name VARCHAR(50) NOT NULL, department VARCHAR(50) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4; -- 學(xué)生表學(xué)號(hào)唯一班級(jí) ID 關(guān)聯(lián) class_info CREATE TABLE student ( id INT AUTO_INCREMENT PRIMARY KEY, stu_no VARCHAR(20) UNIQUE NOT NULL, name VARCHAR(30) NOT NULL, gender VARCHAR(4), birthday DATE, phone VARCHAR(15), email VARCHAR(50), class_id INT, CONSTRAINT fk_stu_class FOREIGN KEY (class_id) REFERENCES class_info(id) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4;-- 課程表 CREATE TABLE course ( id INT AUTO_INCREMENT PRIMARY KEY, course_no VARCHAR(20) UNIQUE NOT NULL, course_name VARCHAR(50) NOT NULL, credit DECIMAL(3,1) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4; -- 成績(jī)表聯(lián)合唯一鍵防止一個(gè)學(xué)生同一門課重復(fù)錄入 CREATE TABLE score ( id INT AUTO_INCREMENT PRIMARY KEY, student_id INT NOT NULL, course_id INT NOT NULL, score_value DECIMAL(5,2), UNIQUE KEY uk_stu_course (student_id, course_id), CONSTRAINT fk_score_student FOREIGN KEY (student_id) REFERENCES student(id), CONSTRAINT fk_score_course FOREIGN KEY (course_id) REFERENCES course(id) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4; -- 用戶表存放系統(tǒng)登錄賬號(hào) CREATE TABLE user ( id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(30) UNIQUE NOT NULL, password VARCHAR(64) NOT NULL, role VARCHAR(20) DEFAULT admin ) ENGINEInnoDB DEFAULT CHARSETutf8mb4;這套表結(jié)構(gòu)有兩個(gè)值得注意的細(xì)節(jié)。第一個(gè)是成績(jī)表里的聯(lián)合唯一鍵 uk_stu_course它保證同一個(gè)學(xué)生同一門課只能有一條成績(jī)記錄這個(gè)約束在論文的數(shù)據(jù)庫(kù)設(shè)計(jì)章節(jié)里是可以寫進(jìn)“數(shù)據(jù)完整性設(shè)計(jì)”的答辯時(shí)能主動(dòng)提出來(lái)會(huì)是加分項(xiàng)。第二個(gè)是外鍵的使用課程設(shè)計(jì)階段用外鍵把關(guān)系顯式表達(dá)出來(lái)代碼里也能少寫一些校驗(yàn)邏輯如果論文里要畫 ER 圖五張表的主外鍵關(guān)系正好能畫出一張完整的圖不會(huì)顯得內(nèi)容太單薄。3.2 登錄邏輯從請(qǐng)求到 Session 的最短路徑登錄功能是整個(gè)系統(tǒng)最容易被答辯老師追問(wèn)的部分因?yàn)樗麄兺ǔ5谝粋€(gè)演示操作就是登錄。常見(jiàn)做法是 LoginServlet 接收表單參數(shù)調(diào)用 UserDao 查詢數(shù)據(jù)庫(kù)成功后把用戶對(duì)象放進(jìn) Session失敗則重定向回登錄頁(yè)并帶錯(cuò)誤標(biāo)志。注意設(shè)置請(qǐng)求編碼這一步不能省否則中文用戶名會(huì)亂碼。WebServlet(/login) public class LoginServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding(UTF-8); String username request.getParameter(username); String password request.getParameter(password); UserDao userDao new UserDao(); User user userDao.findByUsernameAndPassword(username, password); if (user ! null) { HttpSession session request.getSession(); session.setAttribute(loginUser, user); // 轉(zhuǎn)發(fā)到學(xué)生列表這里不用轉(zhuǎn)發(fā)用重定向避免表單重復(fù)提交 response.sendRedirect(request.getContextPath() /student?actionlist); } else { response.sendRedirect(request.getContextPath() /login.jsp?error1); } } }這段代碼里有幾個(gè)習(xí)慣值得保持先設(shè)置 UTF-8 編碼再用 PreparedStatement 查詢而不是拼接 SQL 字符串最后用重定向而不是轉(zhuǎn)發(fā)來(lái)結(jié)束登錄請(qǐng)求。之所以用重定向是因?yàn)槿绻脩舭?F5 刷新頁(yè)面轉(zhuǎn)發(fā)會(huì)重復(fù)執(zhí)行提交邏輯重定向則不會(huì)。關(guān)于密碼課程設(shè)計(jì)階段用明文存儲(chǔ)比較常見(jiàn)但如果論文里想體現(xiàn)一點(diǎn)安全意識(shí)可以在 UserDao 里用 MD5 加鹽簡(jiǎn)單處理答辯時(shí)能說(shuō)出來(lái)“密碼沒(méi)有明文存儲(chǔ)”印象分會(huì)好很多。3.3 學(xué)生增刪改查DAO Servlet 的分層骨架學(xué)生信息的增刪改查是系統(tǒng)的核心功能我用一個(gè) StudentServlet 接收 action 參數(shù)來(lái)區(qū)分操作類型用 StudentDao 封裝所有 SQL。這個(gè)寫法的好處是 Servlet 里沒(méi)有 SQL、DAO 里沒(méi)有 HTML代碼職責(zé)清晰論文“系統(tǒng)設(shè)計(jì)”章節(jié)的類圖也容易畫。WebServlet(/student) public class StudentServlet extends HttpServlet { protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding(UTF-8); String action request.getParameter(action); if (list.equals(action)) { ListStudent list new StudentDao().findAll(); request.setAttribute(studentList, list); request.getRequestDispatcher(/student_list.jsp).forward(request, response); } else if (add.equals(action)) { // 從表單讀取字段并調(diào)用 insert Student stu new Student(); stu.setStuNo(request.getParameter(stuNo)); stu.setName(request.getParameter(name)); stu.setClassId(Integer.parseInt(request.getParameter(classId))); new StudentDao().insert(stu); response.sendRedirect(request.getContextPath() /student?actionlist); } else if (delete.equals(action)) { int id Integer.parseInt(request.getParameter(id)); new StudentDao().deleteById(id); response.sendRedirect(request.getContextPath() /student?actionlist); } } }StudentDao 里對(duì)應(yīng)的方法寫法也很固定核心是讓 SQL 和參數(shù)分離。以 findById 為例先用占位符寫 SQL再通過(guò) PreparedStatement 傳參。這樣做有兩個(gè)好處——避免字符串拼接出錯(cuò)同時(shí)天然防 SQL 注入這個(gè)點(diǎn)在答辯時(shí)可以主動(dòng)說(shuō)出來(lái)。public Student findById(int id) throws SQLException { String sql SELECT s.*, c.class_name FROM student s LEFT JOIN class_info c ON s.class_id c.id WHERE s.id ?; try (Connection conn getConnection(); PreparedStatement ps conn.prepareStatement(sql)) { ps.setInt(1, id); try (ResultSet rs ps.executeQuery()) { if (rs.next()) { Student stu new Student(); stu.setId(rs.getInt(id)); stu.setStuNo(rs.getString(stu_no)); // 省略字段映射... return stu; } } } return null; }關(guān)于 getConnection 方法常見(jiàn)做法是在 DAO 里寫一個(gè)私有方法每次獲取一個(gè)連接并設(shè)置時(shí)區(qū)參數(shù)。連接串里必須帶 serverTimezone 和 characterEncoding否則 MySQL 8 會(huì)直接報(bào)錯(cuò)后面避坑章節(jié)里細(xì)說(shuō)。另外編輯功能可以復(fù)用 findById 做回顯再通過(guò)一個(gè) update 方法落庫(kù)這里不再展開(kāi)。3.4 列表頁(yè)渲染用 JSTL 而不是 Java 腳本片段列表頁(yè)是系統(tǒng)里信息展示量最大的頁(yè)面常見(jiàn)做法是 StudentServlet 把 List 塞進(jìn) request 域然后轉(zhuǎn)發(fā)給 student_list.jsp頁(yè)面用 JSTL 標(biāo)簽遍歷輸出。很多老教程喜歡在 JSP 頁(yè)面里寫% for(...) %那種寫法在課程設(shè)計(jì)里雖然能跑但答辯老師看了會(huì)皺眉因?yàn)槟_本片段和 HTML 混在一起維護(hù)性很差。% page contentTypetext/html;charsetUTF-8 languagejava % % taglib prefixc urihttp://java.sun.com/jsp/jstl/core % html body table border1 tr th學(xué)號(hào)/thth姓名/thth性別/thth班級(jí)/thth操作/th /tr c:forEach items${studentList} varstu tr td${stu.stuNo}/td td${stu.name}/td td${stu.gender}/td td${stu.className}/td td a href${pageContext.request.contextPath}/student?actioneditid${stu.id}編輯/a a href${pageContext.request.contextPath}/student?actiondeleteid${stu.id} onclickreturn confirm(確定刪除該學(xué)生嗎)刪除/a /td /tr /c:forEach /table /body /html這里有一個(gè)坑JSTL 標(biāo)簽庫(kù)的 jar 包必須放在 WEB-INF/lib 目錄下否則頁(yè)面會(huì)報(bào)“can not resolve taglib”的錯(cuò)誤。另外${pageContext.request.contextPath}的作用是動(dòng)態(tài)獲取應(yīng)用上下文路徑這樣不管部署時(shí)應(yīng)用名改成什么鏈接都不會(huì)斷。如果你看到別人的代碼里寫死了/student_db/student?actionlist那說(shuō)明那個(gè)項(xiàng)目只能在固定上下文路徑下運(yùn)行不是一個(gè)好習(xí)慣。4. 從 IDE 到 Tomcat 跑起來(lái)一個(gè)可以照著復(fù)現(xiàn)的最小部署流程4.1 版本配平JDK、Tomcat、MySQL 驅(qū)動(dòng)怎么組合不翻車我見(jiàn)過(guò)太多人卡在環(huán)境上版本配平是第一個(gè)要解決的問(wèn)題。推薦組合是 JDK 8 Tomcat 9.0.x MySQL 8.0.x mysql-connector-java 8.0.x。JDK 8 兼容 Tomcat 9Tomcat 9 使用 javax.servlet 包和絕大多數(shù)老教程一致。如果你用 JDK 17 配 Tomcat 10代碼里 import 的可能會(huì)是 jakarta.servlet報(bào)錯(cuò)會(huì)讓人誤以為是代碼問(wèn)題實(shí)際是包名體系換了。組件推薦版本說(shuō)明JDK1.8兼容性最好課程設(shè)計(jì)環(huán)境常見(jiàn)Tomcat9.0.xjavax.servlet與老教程一致MySQL8.0.x性能好SQL 語(yǔ)法兼容驅(qū)動(dòng)8.0.x對(duì)應(yīng) com.mysql.cj.jdbc.DriverJSTL1.2配合 jstl 標(biāo)簽庫(kù)使用如果用 Spring Boot則 JDK 8 配 Spring Boot 2.xJDK 17 配 Spring Boot 3.x不要混用。常見(jiàn)的翻車組合是 JDK 8 配 Spring Boot 3.x項(xiàng)目會(huì)直接啟動(dòng)失敗因?yàn)?Spring Boot 3 的最低要求就是 JDK 17。4.2 三個(gè)環(huán)境變量和一張數(shù)據(jù)表安裝完 JDK 后第一件事是配置環(huán)境變量。Windows 的常見(jiàn)做法是在系統(tǒng)屬性里設(shè)置 JAVA_HOME并把%JAVA_HOME%\bin追加到 PathLinux 和 macOS 則把 export 寫到~/.bashrc或~/.zshrc。export JAVA_HOME/usr/local/jdk1.8 export PATH$JAVA_HOME/bin:$PATH配置完成后在終端執(zhí)行java -version能看到 1.8 字樣才算成功。這個(gè)步驟看起來(lái)很基礎(chǔ)但很多同學(xué)是裝完直接跳到 IDE結(jié)果 Tomcat 起不來(lái)才發(fā)現(xiàn)是 JAVA_HOME 沒(méi)配。然后啟動(dòng) MySQL把前面章節(jié)的建表 SQL 完整執(zhí)行一遍注意 demo 數(shù)據(jù)至少準(zhǔn)備兩三個(gè)班級(jí)和十幾個(gè)學(xué)生這樣列表頁(yè)不會(huì)空蕩蕩。4.3 在 IDEA 2024 里把 Web 工程接起來(lái)IDEA 2024 里創(chuàng)建 Java Web 項(xiàng)目常見(jiàn)做法是選 Maven 骨架生成一個(gè) war 項(xiàng)目然后把依賴寫進(jìn) pom.xml。如果你拿到的是非 Maven 的傳統(tǒng)項(xiàng)目工程里沒(méi)有 pom.xml那就要手動(dòng)把 WEB-INF/lib 下的所有 jar 掛到 Project Structure 的 Libraries 里否則 IDEA 會(huì)提示很多類不存在。一個(gè)可以照抄的精簡(jiǎn) pom.xml適用于 JSPServlet 的 Maven 項(xiàng)目dependencies dependency groupIdjavax.servlet/groupId artifactIdjavax.servlet-api/artifactId version3.1.0/version scopeprovided/scope /dependency dependency groupIdjavax.servlet/groupId artifactIdjstl/artifactId version1.2/version /dependency dependency groupIdmysql/groupId artifactIdmysql-connector-java/artifactId version8.0.33/version /dependency /dependencies注意 servlet-api 的 scope 是 provided意思是編譯時(shí)需要、運(yùn)行時(shí)不打包因?yàn)?Tomcat 自己就有這份 jar。如果這里寫默認(rèn)的 compile打出來(lái)的 war 里會(huì)帶上它部署時(shí)反而可能和 Tomcat 自帶版本沖突。4.4 配置 Tomcat 并啟動(dòng)最后一步最容易錯(cuò)在 IDEA 里運(yùn)行這個(gè) Web 工程需要先配置一個(gè)本地 Tomcat。步驟是Run → Edit Configurations → 新增 Tomcat Server → Local然后指定 Tomcat 安裝目錄Deployment 標(biāo)簽里把當(dāng)前項(xiàng)目的 war exploded 加上Application context 填/最后啟動(dòng)??吹?“Connected to server” 和 “Server startup in xx ms” 后打開(kāi)瀏覽器訪問(wèn)http://localhost:8080/login.jsp如果看到登錄頁(yè)項(xiàng)目就通了。用預(yù)設(shè)的管理員賬號(hào)登錄進(jìn)入學(xué)生列表頁(yè)并做一次新增全流程能走通就說(shuō)明部署成功。有一個(gè)細(xì)節(jié)值得注意如果 8080 端口別別的程序占用了去conf/server.xml把端口改成 8081 或 9090改完重啟 Tomcat。部署階段不要追求花哨能在一個(gè)干凈環(huán)境里從零跑到列表頁(yè)這個(gè)能力在答辯現(xiàn)場(chǎng)的價(jià)值比任何代碼優(yōu)化都高。5. 常見(jiàn)問(wèn)題與避坑記錄從 Tomcat 啟動(dòng)到答辯現(xiàn)場(chǎng)的五條血淚經(jīng)驗(yàn)5.1 現(xiàn)象Tomcat 啟動(dòng)報(bào) ClassNotFoundException: javax.servlet.http.HttpServlet這是個(gè)高頻問(wèn)題。啟動(dòng) Tomcat 時(shí)控制臺(tái)直接拋異常頁(yè)面 404 或 500IDEA 里標(biāo)紅很多 import 語(yǔ)句。原因通常是兩類一是非 Maven 項(xiàng)目里 WEB-INF/lib 下的 Servlet API jar 沒(méi)有被 IDEA 識(shí)別成依賴二是用了 Tomcat 10tomcat 10 起 servlet 包名從 javax.servlet 改成了 jakarta.servlet老代碼自然找不到類。解決我一般分兩步先確認(rèn) Tomcat 版本是 9 還是 10如果已經(jīng)是 10直接換回 Tomcat 9 最省事不用改代碼如果 Tomcat 版本沒(méi)問(wèn)題就在 IDEA 的 Project Structure 里找到 Artifacts確認(rèn) WEB-INF/lib 目錄是否包含 servlet-api.jar并把該目錄 Mark 為 Library。這兩步能解決九成同類報(bào)錯(cuò)。5.2 現(xiàn)象登錄成功后列表頁(yè) 404控制臺(tái)沒(méi)有明顯異常請(qǐng)求路徑對(duì)了但頁(yè)面不存在這是典型的上下文路徑問(wèn)題。IDEA 里配置 Tomcat 時(shí)Deployment 標(biāo)簽的 Application context 默認(rèn)可能是/student_war_exploded而你訪問(wèn)的是/login.jsp于是 404。另一個(gè)常見(jiàn)原因是請(qǐng)求轉(zhuǎn)發(fā)路徑寫錯(cuò)了比如應(yīng)該轉(zhuǎn)發(fā)到/student_list.jsp卻寫成了/student_list.html。解決在 IDEA 的 Deployment 面板里把 Application context 改成/然后用http://localhost:8080/login.jsp訪問(wèn)同時(shí)檢查 JSP 文件是否真的放在webapp或WebContent目錄下名字是否完全一致。轉(zhuǎn)發(fā)路徑的根路徑不用帶項(xiàng)目名這是新手最容易混淆的一個(gè)點(diǎn)。5.3 現(xiàn)象頁(yè)面中文全亂碼往數(shù)據(jù)庫(kù)里存中文也變問(wèn)號(hào)亂碼問(wèn)題在 Java Web 項(xiàng)目里幾乎人人都遇到。做過(guò)一次排查后重點(diǎn)就鎖定在三個(gè)環(huán)節(jié)JSP 頁(yè)面的 pageEncoding、Servlet 里的 request 編碼、JDBC 連接串的字符集參數(shù)。常見(jiàn)做法是三層全部統(tǒng)一 UTF-8一處不一致就會(huì)出亂碼。request.setCharacterEncoding(UTF-8); response.setCharacterEncoding(UTF-8); response.setContentType(text/html;charsetUTF-8);JDBC 連接串里也要帶上useUnicodetruecharacterEncodingUTF-8配合建庫(kù)時(shí)的 utf8mb4才能保證存儲(chǔ)和讀取都不亂碼。排查順序先看頁(yè)面是否亂碼再看到數(shù)據(jù)庫(kù)里是否亂碼最后看查出來(lái)是否亂碼逐層定位是哪一段斷掉了。不要在第一層亂碼時(shí)就去改數(shù)據(jù)庫(kù)。5.4 現(xiàn)象MySQL 8 連接報(bào) Access denied 或 Unable to load authentication plugin這個(gè)坑常出現(xiàn)在 MySQL 8 配老驅(qū)動(dòng)的時(shí)候?,F(xiàn)象是 IDEA 控制臺(tái)報(bào)java.sql.SQLException: Access denied for user rootlocalhost或Unable to load authentication plugin caching_sha2_password。原因是 MySQL 8 默認(rèn)認(rèn)證插件是 caching_sha2_password而老版本驅(qū)動(dòng)不認(rèn)。解決分兩步驅(qū)動(dòng)換成 mysql-connector-java 8.x連接串里顯式指定時(shí)區(qū)serverTimezoneAsia/Shanghai如果還是報(bào)認(rèn)證錯(cuò)誤可以在 MySQL 里把 root 用戶的認(rèn)證方式改回 mysql_native_password或者干脆創(chuàng)建一個(gè)新的應(yīng)用賬號(hào)只授予 student_db 的權(quán)限。順便說(shuō)一句不要用 root 超級(jí)賬號(hào)連接應(yīng)用數(shù)據(jù)庫(kù)這是一個(gè)值得帶進(jìn)工作習(xí)慣的細(xì)節(jié)答辯時(shí)談到 Web 服務(wù)器安全話題時(shí)也能加分。5.5 現(xiàn)象答辯演示時(shí)點(diǎn)“新增”報(bào)錯(cuò)或者刪除后列表沒(méi)刷新這是最尷尬的場(chǎng)景但也最常見(jiàn)。原因通常有三個(gè)演示前沒(méi)有按流程完整測(cè)試數(shù)據(jù)庫(kù)連接或服務(wù)早就在某個(gè)步驟停了刪除后用的是刷新頁(yè)面而不是重定向?yàn)g覽器把舊頁(yè)面緩存住了。解決的辦法是在論文完成的當(dāng)天就把一套“演示腳本”定下來(lái)登錄、新增一條、編輯這條、刪除這條、退出登錄按這個(gè)順序反復(fù)走三遍。前端提交后一定要response.sendRedirect而不是 forward 到列表頁(yè)前者會(huì)讓瀏覽器發(fā)出新請(qǐng)求列表自然刷新。如果現(xiàn)場(chǎng)真的報(bào)錯(cuò)不要慌著找代碼。先看 Tomcat 控制臺(tái)的堆棧第一行是 SQL 錯(cuò)誤、連接錯(cuò)誤還是空指針。我準(zhǔn)備過(guò)一個(gè)“后悔藥”把數(shù)據(jù)庫(kù)里所有演示數(shù)據(jù)截圖存到手機(jī)里把一條新增失敗日志也截圖存著就算現(xiàn)場(chǎng)數(shù)據(jù)庫(kù)突然連不上也有實(shí)際材料跟老師說(shuō)明“系統(tǒng)本身是通過(guò)測(cè)試的現(xiàn)在是環(huán)境的問(wèn)題”。別有僥幸心理演示現(xiàn)場(chǎng)永遠(yuǎn)會(huì)出你意料之外的狀況。6. 論文寫作的落地技巧讓論文和代碼對(duì)得上才是這個(gè)項(xiàng)目的終局“源碼論文”組合最怕的不是代碼有 bug而是論文描述的系統(tǒng)和你跑起來(lái)的系統(tǒng)不是同一個(gè)東西。我?guī)蛣e人改過(guò)太多次答辯前翻車的項(xiàng)目總結(jié)下來(lái)答辯前必須做三個(gè)核對(duì)動(dòng)作。第一個(gè)動(dòng)作論文里“數(shù)據(jù)庫(kù)設(shè)計(jì)”章節(jié)的每張表和你實(shí)際執(zhí)行的建表 SQL 逐字段核對(duì)。字段名、類型、主外鍵任何一個(gè)對(duì)不上老師翻到那一頁(yè)再對(duì)比你的代碼現(xiàn)場(chǎng)就會(huì)露餡。特別是論文里如果畫了 ER 圖圖里的關(guān)聯(lián)關(guān)系必須和CONSTRAINT外鍵一一對(duì)應(yīng)。第二個(gè)動(dòng)作“系統(tǒng)實(shí)現(xiàn)”章節(jié)的截圖必須從你自己運(yùn)行的系統(tǒng)里截。登錄成功頁(yè)、學(xué)生列表、新增表單、編輯回顯、刪除確認(rèn)這五張圖截好按順序放進(jìn)去地址欄的 URL 也要截進(jìn)去。不要從別人的文章里復(fù)制圖片老師對(duì)別人的截圖往往比你還熟。第三個(gè)動(dòng)作論文“系統(tǒng)測(cè)試”章節(jié)做一張測(cè)試用例表這是最好抄也最容易被忽略的部分。用例編號(hào)功能點(diǎn)輸入預(yù)期結(jié)果實(shí)際結(jié)果是否通過(guò)TC-01登錄失敗錯(cuò)誤密碼提示賬號(hào)或密碼錯(cuò)誤重定向回登錄頁(yè)并顯示錯(cuò)誤通過(guò)TC-02新增學(xué)生學(xué)號(hào)姓名班級(jí)列表頁(yè)出現(xiàn)新記錄新增成功并刷新列表通過(guò)TC-03刪除學(xué)生點(diǎn)擊刪除并確認(rèn)列表頁(yè)該記錄消失刪除成功通過(guò)答辯時(shí)按這張表演示每一步都知道下一個(gè)界面是什么這個(gè)效果比任何技巧都管用。我的習(xí)慣是答辯前一晚把系統(tǒng)按演示腳本完整走三遍中途故意操作一次錯(cuò)誤密碼登錄再新增一條記錄后手動(dòng)停掉 MySQL 服務(wù)把能預(yù)料到的異常都預(yù)演一遍。最穩(wěn)的狀態(tài)不是你回答得上所有問(wèn)題而是老師問(wèn)的每一個(gè)問(wèn)題你都能指著自己論文里的某一段或代碼里的某一行說(shuō)清楚。希望這一套走下來(lái)能幫你在交系統(tǒng)前少幾個(gè)不眠夜。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
丁香婷五月| 26uuu亚洲欧美| 五月婷婷六月丁香| 中文字幕成人影视| 婷婷丁香激情综合色情| 日本熟女三区| 色香蕉影院| 日本少妇裸体做爰高潮片| 人妻精品久久久久久| 欧洲综合视频| 97五月婷婷| www.狠狠操| 婷婷丁香色五月| 天天色天天射天天日| 三级av在线| 5五月综合网亚洲| 黄色99视频| 变态另类色图| 五月丁香婷婷伊人| 91婷婷五月天综合视频| 再次出发二| 涩九九九九| 97超级碰人人| 国产性爱在线| 丁香五月大香蕉在线99| 成人做爰黄A片免费看直播室男男| 五月天激情婷婷| 欧美天天综合网站上去吧| 亚洲一区国产传媒| 五月停停色色丁香| 狠狠色婷婷| 在线伦子99热| 久久99久久久久久久噜噜| 97人人干| 国产乱妇乱子在线播视频播放网站 | 337p大胆噜噜噜噜噜91Av| 久久这里有精品| 啪啪五月天啪啪| 无码区婷婷五月花开| 色吊丝99| 91操在线观看| 99在线视频免费| 波多婷婷久久| 五月亭亭网成人在线视频| 五月天激情综合网站| 91碰视频| 天天五月香欧美| AV九九| 99福利导航| 伊人大香久久| 国产婷婷五月天| 4399高清无码视频| 久热无码| 五月天开心色情网| 天天操电影院色狼性av| www.婷婷.com| 亚洲爆乳无码精品AAA片蜜桃| 综合网激情| 久九色| 99热亚洲精品| 99久久久99久久91熟女| 99热99精品在线观看| 欧美成人精品三区综合A片 | 久久婷婷成人视频| 亚洲色综久久五月| 丁香婷婷色情| 粉嫩AV久久一区二区三区| www九九热| 午夜大香蕉| www.色婷婷| 日日躁夜夜躁狠狠久久AV| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 操操啪| 五月婷婷黄色| 色五月,com| 色婷婷五月天av在线| 玖玖婷婷色欲| 91九色熟女| 色墦五月丁香| 可似看的AV| 五月综合激情| 天天色,天天操,天天射| 激情综合五月| 五月丁香成人网| 久久综合久色欧美综合狠狠| 国产成人AV在线播放| 中文字幕AV在线| 激情综合网之激情五月| 开心五月天激情网| 国产精品日本一区二区在线播放| 偷拍91九色| 国产噜一噜天天噜| 欧美色色色色色色| 沈娜娜av| 综合激情五月丁香9999久久精| 大伊久久| 婷婷色中文字幕| 色色欧美色色色| 九九热99久久99| 97碰久久| WWW.桔色成人.COM| 日韩aⅴ视频| 久热91精品| 婷婷综合五月激情| 一起草Av| 色久影院| 26uuu国产| 色吧综合网| 成人性生活免费观看。| 五五月五月| 狠狠色噜噜狠狠| 色婷婷激情| 人人操操97| 少妇大叫太大太粗太爽了A片| 色婷大香蕉| 色色五月婷| 久久视频在线| 色欲AVV| 亚洲激情综合| 天堂A∨在线| 久久月天堂| 极品色丁香| 久久狠狠干| 中国女人内射6XXXXX| 激情五月天啪啪| 天天日天天操天天干| 91大神操美女| 五月丁香亭亭操逼| 无码人妻电影| 色色五月天丁香| 激情六月日韩| bukadeavzaixian| 呦呦v线| 亚艹艹| 开心色播色五月婷婷| 国产精品色婷婷99久久精品| 婷婷激情人妻| 五月色丁香| 9色天堂| 免费在线观看AV网站| 色色色999| 思思热在线视频精品| 婷婷五月天桃花网| 色久五月天| 少妇人妻人伦A片| 色欲天天综合网| 99久久网站| 国产一级黄色影片,| 婷婷成人综合免费视频| 国产肥白大熟妇BBBB视频| 激情综合五月| 色婷婷成人做爰A片免费看网站| 在线播放成人网站| 99久久9| 久久永久网址| 熟女少妇内射日韩亚洲| 五月综合激情视频| 97伊人综合婷婷| 这里只有久久精99| 任你操精品免费| 五月婷婷深深爱| 中文字幕久久婷九女同| 狼友超碰| 琪琪理论片| 久草热8精品视频在线观看| 丁香五月激情宗合网| 99热思思| 五月婷婷激情中心| 狠狠色网| 六月色婷婷| 国产毛片操B| 六月丁香婷婷开心综合基地| 亚洲视频1区| 婷婷社区五月天| 久久日韩婷婷五月| 色色亚洲| 思思热AV| 五月丁香猫咪久久婷婷综合视频激情四射网入口 | 婷婷综合色| 99热啪啪| 久久ri精品视频| 色五月激情五月天| 五月天无码| 丁香六月综合激情| 婷婷久久色| 91超级碰在线视频| 综合久久丁丁香婷| 亚洲天堂爱爱| 国产精品婷婷午夜在线观看| 丁香五月欧美成人| 亚洲区在线| 五月综合在线| 婷婷四色成人综合色视| 日本色道视频网站| 青青草五月天| 亚洲蜜桃精久久久久久久久久久久| 丁香五月婷婷操逼| 久久99久久99久久99人受| 97色伦另类图片小说视频 | 色五月在线观看| 五月丁香综合影院| 中国无码av| 99热都是精品| 激情合网婷婷| 99久re热视频精品98| 激情综合网激情五月婷婷| 激情综合五月婷婷丁香| 久久久精久人妻| 九月av| www.久久99| 深爱激情六月天| 天天爽在线视频| 97碰碰草| 国产精产国品一二三在观看| 开心激情网五月天| 亚洲99综合| 天天干天天玩天天夜天天射天天操天天日蜜臀少妇 | 操熟女成人网| 天天做天天双| 超碰在线国产| 97丁香婷婷| 亚洲婷婷丁香五月视频| 久鲁鲁色网 | 色婷婷激情Av久久久| 日韩精品一品二区三区的使用体验| 丁香六月中文| 另类激情五月天。| 婷婷五月激情网| 丁香六月婷婷久久亚洲天堂| 天天草女人| 婷婷六月色开| 4399成人黄A片| 色色色色五月| 五月婷婷啪| 婷婷AV丁香| 久久九九爽| 亚洲婷婷丁香五月| 欧美激情久| 日本V在线观看不卡视频网站| 久久九九网| 色色色色热| 成人欧美Va| 99热这里有精品6| 另类激情综合| 色五月首页| 婷婷综合在线播放| 午夜激情婷婷| www.色婷婷.com| 色五月婷婷av| 激情综合网五月婷婷| 伊人久久大香线蕉av最新| 九九成人| 激情综合无码| 久久久久久久久久8888| 八戒青柠影视剧在线观看| 91九色在线| 五月天婷婷久久| av在线激情| 亚洲色另类| 五月天综合激情网| 色激情五月| 99色在线| 婷婷五月天色播| 婷婷激情五月| 风流少妇A片一区二区蜜桃| 99精品久久| 成人看片网站| 91大操| 五月婷性爱| 久久九九激情五月天 | 国产在线网址1| 婷婷五月综合国产精品| 91精品国产色猫| 射久久丁香五月| 99热思思| 深爱开心激情| 99在线视频。| 97干97色| 九九婷婷五月天影视| 日夜夜天天| 色综合网综合| 一区二区免费看| 99久热| 久久久人妻| 色视频色综合91| 久久探花91swag| 婷婷丁香五月天色色| 激情六月天婷婷| 欧美激情五月天婷婷| 丁香六月 人妻| 99热99热99热99热| 色九月婷婷| 国产精品涩涩涩视频网站 | 丁香五月婷婷婷婷欧美综合| 狠狠色噜噜色狠狠狠综合久久成人波| 91九色精品| 熟女激情五月天| 屁股翘好撅高迎合跪趴| 色色狼人综合| 激情狠狠丁香月| 欧洲亚洲精品| 桃色成人网| 91亚洲视频| 另类激情五月| 丁香五月色欲| 久久AAAA片一区二区| 激情网色五月| 五月丁香婷婷久久| 337p大胆噜噜噜噜噜91Av| 色伦专区97中文字幕| av在线不卡播放| 久久99综合| 欧美精品熟女一区二区| 99热综合| www.五月婷婷久久.com| 美女五月天| 91久久婷婷| 91丨九色丨国产打屁股网站| 婷婷大美在线| 99在线精品免费视频| 99色综合久久| 亚洲综合视频一下| 色五月av| 五月丁香激情综合| 91视频综合网| 婷婷狠狠狠爱| 香蕉AV777XXX色综合一区| 五月丁香婷婷啪啪| 久久久99免费视频| www,天天干| A片女女女女女女BBBB| 亚洲av成人在线| 五月婷婷开心综合| 校园春色亚洲色| 亚洲五月天第一综合干| 可以直接看的av| 亚洲综合在线网站| 天天激情| 久久婷婷电影| 丁香婷婷色六月| 99精品综合视频| 97色婷婷五月天| 日韩AAAAAAAAAAA片| 国产全是老熟女太爽了| 色五月成人婷婷| 97资源碰碰| 中文字幕激情综合| 伊人玖玖婷婷| 日韩在线观看亚洲| 五月综合激情| 伊人久久艹| 天天综合五月天| 久久38视频| 精品久久久久久久久久久久人妻| 婷婷99视频在线| 很很操很很操| 色伦专区97中文字幕| 丁香六月 婷婷六月| 欧美成人A片AAA片在线播放| 五月婷视频久久| 五月丁香大香蕉| 人人综合久| 色婷婷精品视频| 青996青| 综合五月丁香六月婷婷| 超碰在线看| 五月激情啪啪| 高清无码 一区 二区 三区| www久| 伍月婷婷免费视频| 99精品偷自拍| 深爱激情婷| 丁香五月成人丝袜| 超碰超碰在线| 欧洲亚洲免费视频9| 国产AV国片偷人妻麻豆| 深爱激情丁香五月| 日本久热| 超pen个人视频97| 亚洲噜色| 大香蕉婷婷久久| 色情五月综合婷婷| 逼逼AV| www.色色色com| 色色色色色色色色色色色色色色,网站| 91女人18毛片水多国产| 久婷婷婷| WWW.开心五月天.COM| 婷婷九月久久| 操久久网| 丁香久久五月天视频在线观看| 欧美A片在线视频免费观看| 婷婷五月av| 五月丁香六月综合基地| 99热国品| 日本婷久久| 天天色天天爽| 91九色在线观看免费| 婷婷五月激情欧美| 久久草婷婷丁香网站| AV六月丁香| 91操人视频| 五月天色婷婷小说| 五月天激情四射网站| 色五月 五月婷婷| 欧美亚洲操逼| 99久久网站| 国产精品久久久爽爽爽麻豆色哟哟| 国产裸舞表演WWWW| 操人妻90p| 成人免费视频一区| 爱爱网址9| 激情六月天| 这里只有视频精品| YJLZZJLZZ亚洲乱熟无码| 少妇高潮呻吟A片免费看软件| 99视频这里只有精品10| 久久久久综合激动五月天| 婷婷五月色花丁香社区| 香蕉久久国产AV一区二区 | 九九综合| 婷婷天堂综合| 婷婷五月激情视频在线| 五月婷婷丁香伦理网| 国产超碰人人| 激情综合另类| 婷婷丁香成人色综合| 日韩在线99| 久热这里只有精品99re,久热这里只有精品7 | 五月天婷婷成人资源站| 亚洲中文无码成人| 婷综合| 婷婷WWW久久| 丁香六月综合激情| 亚洲日日操| 日本五月天婷婷丁香| 丁香狠狠| 五月天婷婷午夜丁香| 婷婷网影院| 91丨九色丨老熟女激情| .青娱乐天天操B| www.天天日| 九色无码| 热久精品| 激情综合网五月| 色婷婷丁香AV综合| 国产美女最新VA在线免费观看| 99热99色| www.粉嫩av.com| 91人妻人人操人人爽| 婷婷五月天首页激情| 日本黄 色 片| 在线播放人妻| 久久色大香蕉| 岛囯综合激情网| 爱爱网址9| 亚州美女| 日韩性爱AV| 香蕉AV777XXX色综合一区| 激情綜合W W W,激情五月天| 久久婷婷亚洲| 99爱在线视频| 国产看真人毛片爱做A片| 亚洲乱码日产精品BD| 日韩成人综合网| 99热这里只有精品8| 五月婷婷,六月丁香| 五月婷婷色影院| 成人五月天丁香婷| 丁香激情久久| 久热免费视频| 青柠影视免费高清电视剧| 国色天香成人网| 99综合婷婷五月| 天天做天天爱天天摸| 深爱五月月天| 亚洲精| 五月丁香六月情亚洲| 999热成人在线综合网| 九九综合久久| 99ri视频在线播放| 久久综合99| 国产亚洲精品久久久久久郑州| 久久人妻视频| 亚洲黄色网址| 99re免费在线视频| 激情小说五月天社区丁香| 久久只有这里精品免费| 国产热精品| www.五月天激情| 婷婷丁香18| 久久综合干| 五月婷婷六月丁香| 国产人人操| 久久加勒比| 丁香大香蕉| WWW.激情| 亚洲美女网Va| 国产成人网址| 综合九九久久| 激情五月激情综合俺也去婷婷小说| 狠狠色综合777| 色五月影视| 色五月婷婷中文字幕| 99在线精品免费视频| 亚洲成人av在线观看| 99乱视频| www.夜夜騎夜夜狠| 久久久com| 日韩在线观看网址| 最新色色五月天| 丁香六月婷婷综合麻豆| 五月婷婷丁香大陆免费| 国产av一区二区三区| 波多野结衣AV无码Porn| 96精品久久久久久久久| 99色 色| 99亚洲视频| 激情丁香五月| 日韩欧美成人片| 新99思思视频| 99色中文| 91操黄| 五月婷视频| 三人荫蒂添的好舒服A片| 5五月综合网亚洲| 色婷婷内射| 99热都是精品| 婷婷大香焦| 热中文字幕| 色色色色热| 精品一二三区久久AAA片| 伊人色综合久久久| 欧美日韩AAA| 99热这里只有精品55| www.一起草av| 婷婷深爱网| 99热官网| 色播综合| 美女网黄| 婷婷五月丁香花综合| 婷婷五月天在婷| 天天爽天天| 婷婷丁香花五月天| 亚洲精品99| 一本婷婷丁香久久| 色五月丁香激情视频| 午夜天堂啪啪| 色色五月婷婷久久| 婷婷激情五月| 青青久久大香蕉| 欧美va| 99热成人| 热99精品视频在线观看| www.99视频| 五月天婷婷社区久久综合| 五月丁香六月婷婷a v| 色99视频| 激情无码五月天| av在线免费播放| 激情久久丁香| 在线观看亚洲AV| 五月婷婷,六月婷婷| 九热视频这里只有精品| 青青草大香| 我要色综合五月婷婷| 91精品综合久久久久久五月丁香| 成人va在线观看视频| 26uuu最新地址| 无码激情| 色九区| www久久五月com| 六月激情综合| 色五月av伊人| se色婷婷视频| 五月激情综合美女久久| 97精品综合久久内射| 天天操电影院色狼性av| 欧美超碰人人| 97狠狠色| 五月色婷婷在线观看| 色情综合| AV天堂婷婷五月天| 亚洲免费在线观看岛国| 久久五月天色婷婷| 久久久中文| 婷婷五月成人| 亚洲国产精品综合色区| 天天色综| 九九99久久| 狠狠另类视频| 婷婷五月天性爱视频| 国产精品久久久海的味道| 久久激情天堂| 99热这里| 亚洲亚洲永久无码777777| 丁香五月综合首页| 精品人妻一区二区三区四区不卡在| 色婷婷五月天天天天天| 狠狠干最新地址| 五月丁香综合在线| 色情五月天视频网| 97久久婷婷色| 久月婷婷| 丁香五月23111| 五月天伊人久久久久| 久久婷婷五月天激情新地址| 久久婷婷五月综合色欧美| 婷婷激情视频欧美视频自拍视频欧美剧 | 丁香五月激情啪啪啪| h在线看免费版在线看| 六月婷婷色综合| 99超超碰| 婷婷丁香97| 五月丁香色五月| 888久久久| 亚洲天堂热| 久色欧美| 久久在这里有精品| 3p久久| 婷婷在线播放| 婷婷五月天综合久久| 五月天堂婷婷| 久久色五月| 亚洲精品第一色色色色色色| 99在线播放视频| 久久99色色| 九九热av| 免费成人中文字幕| 中文字幕无码人妻少妇免费视频| www.99热在线观看| 色婷亚洲| 五月熟妇婷婷久久| 激情五月天丁香| www狠狠爱com| 亚洲乱码日产精品BD| 五月天色综合| 日韩啊啊啊| 婷婷涩涩网| 四虎成人精品永久免费AV九九| 玖玖九九超碰| 日本欧美成人片AAAA| 五月丁香色| www.色五月.com| 69堂午夜视频最新地址| 日韩成人电影AV| 婷婷五月综合色中文字幕| 夜夜嗨一区二区三区直播内容| 99热在线精品观看| 熟女激情网| 天天插综合网| 99热费观看| 国产成人精品一区二三区熟女在线| 操97免费超级视频| 可以看的av网站| 亚洲 五月 婷婷 成人| 这里只有精品日韩精品| 五月天激情综合网俺也去| 九九热婷婷| WWW.久久99| 99热综合在线观看| 国产,欧美,学生妹,视频| 九久9精品| 五月天激情亚洲| 色婷天天| 国产激情久久久| 五月丁香久久网| 激情图片婷婷| av色婷婷| 超碰在线成人| 婷婷五月色| 日本人妻A片成人免费看片| 大香蕉天堂| 99玖玖免费视频| 婷婷五月综合久久中文字幕| 亚洲AV网站| 色婷婷丁香五月| 开心五月激情网| 开心激情网在线| 色婷婷影院| 婷婷网五月天| 日本乱子人伦在线视频| 亚洲精品又粗又大又爽A片 | 色色欧美。| 五月天色软件| 97在线日本| www一起操| 亚洲欧洲国产精品| 婷婷五月天播| 九玖欧洲亚洲| 国产激情婷婷| 国产成人网站在线观看| 天天日天天舔| 大香蕉 婷婷| 四川操逼站| 91干视频| 66久久视频在线| 俺去也在线视频| 人人干人人看| 99色视频在线| 99热每日| 成人丁香色| 色色精品色| 婷婷开心综合人妻小说网址| 青青草五月天| 婷婷亚洲综合| 五月 婷 久| 欧洲一区二区| 色五月激情五月丁香五月婷婷啪啪综合| 人人舔天天| 中文成人在线| 99热久久这里只有精品| 丁香五月天社区婷婷| 超碰激情网| sewuyue第四色| 色综合另类| 99在线免费观看| 91女人18毛片水多国产| 99热伊人| 激情综合色播| 精品久久99| 91 久热| 中文无码婷婷| 五月天色视频| 久草婷婷| 色射7856五月天激情四射| 97干在线| 亚洲色视频| 婷婷五月天色| 激情图片久久| 色婷婷丁香五月色综合网| 97人妻碰碰碰久久香蕉| 久久五月婷天天干| 亚洲色五月| 色色色色色综合| 国产乱子轮XXX农村| 色婷婷国产精品综合在线观看| 在线综合婷婷| 婷婷金品综合视频| 久xxxx| 欧美综合激情五月| 久久精品人妻| 日本三级中文字幕| 色婷婷五月视频| 五月天激情综合网| 丁香五月久久| 色五月偷偷| 丁香婷婷久| 精品一区二区三区四区五区六区介绍| 丁香五月婷婷偷拍| 亚洲成人综合网在线免费观看| 丁香六月AV| 五月丁香色色| 婷婷九九视频| 亭亭五月色男人| 国产精产国品一二三在观看 | 天天玩夜夜操天天爽| 狠狠操综合| 五月婷婷黄网站大全| 色综合天天网| A久久| 九九热av| 色色免费网站| 99丁香五月婷| 五月婷婷丁香六月| 亚洲视频无| 激情五月婷婷丁香综合网| 中字幕视频在线永久在线观看免费| 婷婷五月播| 五月婷婷黄色| 在线网黄| 亚洲综合婷婷| 久久色婷婷| 午夜爱爱网站| 香蕉操亚洲| 五月丁香激| 九九综舍久久| 色色色婷| 色色色色五月天| 色色综合网站| 久久永久网址| 337p大胆噜噜噜噜噜91Av| 五月婷婷色| 色婷婷电影网| 亚洲 激情 中文| 成人做爰高潮A片免费视频| www.夜夜操.con| 国产人妻777人伦精品HD| 婷婷六月丁香久| 亚洲视频一区| 色99热| 亚洲精品网址| ww久久| 六月丁香婷婷五月天| 人妻久久久| 日日干综合| 狠狠操狠狠色| 日日色综合| 久草视频一,二三四| 久久久婷| 天天插天天草人人玩| 天天日天天肏天天奸| 五月婷婷婷婷网| 中文字幕成人影视| 人妻无码精品一区| 五月激情婷婷色| 激情婷婷护士激情| 婷婷激情人妻| 精品五月视频婷婷在线观看| 国产一区二区三区影院| 思思久久青草热| 五月婷婷久久久久| 丁香五月伊人| 五月天激情子轮| 天天肏天天肏天天肏| 五月激情婷婷丁香| 伍月激情天| 天花AV无码| 狠狠色婷婷7777久| 5月婷婷六月丁香| 欧美人人超级碰| 人妻啪啪啪| 五月婷导航| 欧美婷婷日本| 韩日另类| 碰碰女| 五月激情婷婷播播网| 色综合色色色色| 狠狠的日| 色色色色色色网站| 狠狠夜夜五月丁香| 操婷婷基地| 五月天激情国产综合婷婷婷| 五月天成人小说网| 日韩色色网| se婷97| 亚洲热热视频| 久久久久久久久人妻| 五月久久五月激情| 色婷婷综合在线| 婷婷五月天av| 五月天另类激情在线| 六月婷五月丁香| 91网站黄| 色婷婷狠狠久久综合五月| 九九综合久久| 色五月天电影| 丁香五月激情婷婷激情| 日本久久综合| 婷婷五月激情综合啪啪| 桃色五月天| yellow视频在线观看91| 丁香五月天成人| 亚洲激情淫网| 伊人久久婷| 91久久九| 亚洲V国产V欧美V久久久久久| 亚州操操| 在线观看中文字幕| 开心日韩丁香婷婷五月| 色优久久| 九九人人精品| 天天操婷婷| 深爱激情五月天色婷婷| 色色色欧美| 亚洲成人网站在线| 色婷婷久久7777| 久久五月婷婷综合网| 中文字幕在线日亚州9| 久久婷婷色综合| 天天操天天操天天操天天操天天操天天操天天操天天操天天操 | 婷丁香五月天| 这里只有精品视频222| h亚洲| 久久182| wwww.9免费视频| 婷婷五月天综合亚洲| 国产精品大香蕉| 夜夜夜夜夜操| 婷婷操逼| 99日本黄站| 超碰男人色| 先锋资源婷婷| 丁香婷婷五月天在线视频| 色久激情在线| 人人操人人爱丁香五月| 伊人丁香花综合影院| 五月婷伊人| 99热在线里有精品| sS丁香五月婷婷| 欧美激情五月天婷婷| 亭亭玉立国色天香| 久久这里只有国产| 激情综合4月| 色婷婷久久综合久色| 五月欧美色播| 色五月无码| www.夜夜操.con| 久久只有精品| 少妇口诉沐足视频播放器网址| 丁香五月激情欧欧美| 欧洲亚洲免费视频区| 欧洲激情五月天婷婷| 一本久久亚洲五月婷婷| 久久99热 这里有精品| 日本成人噜噜噜噜噜| 亚洲精品小视频| 婷婷丁香五月综合激情小说| 婷婷香五月天| 九九色播五月丁香| 日本三级韩三级99久久| 人人操五月天| 丁香五月花| 97色碰碰公开视频| 99综合熟女| 综合色播| 开心五激情网| 欧州色色| 曰曰久久| 欧美激情五月天| 小香蕉av| 日本三级网址| 久久久中文| 五月天久久婷婷婷| 色激情五月| 五月婷色色| Av狠狠色丁香婷| 丁香五月综合亚洲| 这里只有精品视频| 婷婷成人五月天| 五月婷婷 婷婷五月 一区二区 久久久| 国产九月婷婷| 六月丁香大香蕉| 人妻系列久久久久久久久久久| 人人操人av| 玖玖婷婷综合| 被强行糟蹋的女人A片| 色九月丁香婷婷蜜桃在线观看| www.婷婷.com| 亚洲色婷婷婷婷人人爽| 婷婷五月天伊人网| 久久久免费精彩视频| 91久女| 色V狠狠的干| 国产熟女日日骚五月丁香爱| 欧美激情综合色综合啪啪五月| 色婷婷亚洲婷婷| 久久99免费视屏| 天天射影| 人人爱国产| 激情五月天色色网| 欧美色色日韩| 99热国产这里只有| 日本成人噜噜噜| 337p大胆噜噜噜噜噜91Av| 国产亚洲99久久精品熟女| 99熟女| 影音先锋777xfplay色资源网站| 99热在线精品观看| 九九99热精品| 天天搞夜夜叫| 六月婷婷久久| 超碰操日| 欧美欧盟性爱网| 激情五月综合婷婷| 人妻丰满精品一区二区A片| 六月丁香婷婷综合狠狠爱夜夜爱| 婷婷色五月久久| 超碰99在线| www,99色| 天天操天天日天天爽| 99无码视频| 色五月婷婷激情基地| 六月婷婷狠狠做| 五月天婷婷视频| 色九月国产| 99er6热在线观看精品6| 激情五月天色播| 丁香婷婷五月综合影院| 91wwmm导航| 国产无套精品一区二区| 五月天激情综合网俺也去| 91久久电影| 伊人超碰在线| 色五月婷婷婷婷| 激情综合五月婷婷| 久久99网站| 免费国产视频| 亚洲色图日韩网址| 久久视频在线| 色婷婷色综合久久精品V| 天天AV导航网| 99精品在线| 99视频内射三四| 婷婷色丁香五月| 狠狠色丁香久久| 久久这里只精品| 亚洲免费电影2| 五月婷婷丁香狠狠撸久久| 成人国产欧美大片一区| 开心 五月 综合| 久久婷婷五月| 天天做天天爱天天搞| 五月丁香啪啪激情| 男人天堂99| 91操片| 激情综合在线观看| 丁香九月综合| 99久久精品色老| 婷婷激情九月| 國語久久婷| www婷婷| 99热99色| 精品人妻一区二区三区四区不卡在| 丁香五月婷婷亚洲综合精品| 91玖玖| 九九色中文| 色无码| 色五月久久成人婷婷| 最近中文字幕大全免费版在线 | 婷婷色系婷色| 99欧美热| 99热官网精品在线| 玖玖婷婷精品| 91精品婷婷国产综合久久| 日韩欧美颜射| 久热无码| 五月色婷婷综合丁香精品无遮挡| 江苏少妇性BBB搡BBB爽爽爽| 伊人久久丁香婷婷六月五月综合| 色约约视频一区二区三区四区五区| 欧美丁香婷婷五月天| 玖玖色资源| 激情av| 天天拍天天做视频| 综合狠久久| 婷婷色导航| 九九色婷婷| 嫩草AV久久伊人妇女超级A | 99色在线视频| 亚洲热综合网在线观看| 婷色综合| 五月婷婷激情性爱| 婷婷色五月噜噜| 激情性爱五月天网页| 国产激情婷婷| 狠狠爱综合网| 91中文狠狠综合| 99视频在线观看网址| 色婷婷综合网站| 激情内射人妻1区2区3区| 婷婷日日夜夜| 成人短视频在线| 国产真实乱了老女人视频| 激情综合网五月激情| 91无码视频| 熟女少妇内射日韩亚洲| 思思热视频| 五月丁香六月色婷婷综合五月天| 中文字幕1区2区。| 五月天狠狠色| 噜色精品| 免费看成人747474九号视频在线观看| 精品人妻伦一二三区久| 。久久久久久久久久久久久久人妻| 狠狠色97| 操操操B| 五月天激情久久| 狠狠999| 91成人看片| 日韩人妻AV在线| 日本天堂爱爱| 草婷婷在线| 青青草原亚洲天堂| 2025超碰| 久久xx| www,色色色网站| eeuus五月婷| 丁香五月婷婷大香蕉| 欧美色综合天天久久综合精品| 激情综合网五月婷婷| 激情综合网,五月| 欧洲S级在线观看| 激情性爱五月天网页| 在线视频你懂得| 婷婷色丁香六月| 精品人妻伦| 日本激情91| 婷婷情色五月| 五月激情综合网| 99自拍视频网站| 天天日,天天射,天天舔| 影音先锋女人av鲁色资源网小说免费 | 疯狂做受XXXX高潮A片| 色在线99| 狠狠色噜噜狠狠| 天天噜天天爱| 亚洲五月婷婷| 国产视频福利| 婷婷干| 99网| 色播五月婷婷| 日本一级特黄大片AAAAA级| 26uuu欧美激情另类| 欧美激情 日韩无码 婷婷 五月天| 五月婷婷丁香啪啪| www.99热精品99.com| 色五月婷婷777| 六月激情网| 大香蕉久久| 国产精品日日躁夜夜躁| 激情伊人五月天| 亚洲人人操BD| 亚洲瑟瑟精品在线| 激情五月综合视频| 色婷婷综合网站| 婷婷97碰碰| 午夜婷婷久久 | 丰满少妇猛烈A片免费看观看| 99这里只有精| 啊V视频在线观看| 亚洲性视频| 九九综合| 夜夜撸夜夜骑| 亚洲五月色| 婷婷五月激情视频| 五月天精品综合| 五月丁香婷婷潮喷中文字幕| 99热777| 激情五月丁香六月婷婷| 五月婷婷精品无在线| 丁香六月视频免费观看| 新五月天婷婷激情电影| 色婷婷AV五月天| 校园激情 亚洲| 久久久久99精品成人片| 天天狠狠色噜噜| 亚洲久久婷婷丁香五月天| 六月婷婷色五月| 天天摸夜夜爽天天做| 天天橾日日橾夜夜橾17| 五月开心啪啪| 天天爽夜夜爽天天爽夜夜爽| 99热中文字幕久久| 丁香婷婷视频| 99精品在线观看| 久久婷婷网| 久机视频这只有精品| 99ri在线视频| 成人国产欧美大片一区| 亚洲乱码日产精品BD| 美女婷婷激情亚洲| 五月婷婷先锋| 99综合熟女| 丁香五月香蕉| 激情五月激情综合俺也去婷婷小说| 精品婷婷五| 久久这里都是精品视频| 丁香月六月| 激情婷婷五月天| 伊人99热| 国产精品a无线| 国产av第一专区| 亚洲色图日韩网址| 五月色网| 色婷婷最爱五月| 丁香涩涩爱| 色玖玖爱| 九九热精品| 一级片无码| 狠狠爱婷婷丁香| 婷婷偷拍网| 婷婷五月天首页| 67194中文字幕| 午夜丁香| www.久操| www婷婷| 六月丁香综合网| 精品人妻一区| 久热这里| 色五月综合网站| 亚洲AV网址| 森林影视大全,最好看的2019年视频 | 天天干夜夜谢| 色播五月综合网| 久久婷婷亚洲| 疯狂做受XXXX高潮A片动画| 九热网站| 久久性爱视频| 亚洲精品久久久久久久久久吃药| 99热综合| 五月婷婷六月天| 超碰在线播放免费观看| 久久只有这里精品免费| 性天天中文网| 尔尔AV一区| 五月婷婷婷色| 天天爽爽日日做做| 免费不卡狠操美女视频网| 这里只有精彩视频| 激情五月婷色| 精品99久久久久成人网站免费| 啪啪小说五月天| 9久精品| 丁香五月天婷婷91| 午夜 外网 精品 在线| 丁香五月天综合| 欧美顶级少妇做爰HD| 99爽视频| 丁香五月六月婷婷怡红院| 亚洲免费看片| 久久久久久久久久91| 欧美英丁香开心快乐六月天网| 久婷五月| 99啪啪骑| 亚洲久久婷婷丁香五月天| 久久九色| 91综合在线观看首页| 极品 少妇 内射| 99热这里是精品| 五月五月婷婷| 亚洲另类婷婷五月综合| 91婷婷| 伊人五月天97| 天天干天天爽天天操| 97碰在线视频| 影音先锋噜一噜| 日日干天天爽| 日韩国产在线精品| 激情五月开心五月在线视频| 九九大香视频| 免费99色| 思思久热6| 在线观看免费人成视频无码| 五月丁香| 亚洲AV网站| 99久久玖玖| 色色亚洲视频| 欧美成综合在线观看| 亚洲成人乱码av网站| 成人精品视频99在线观看免费| 丁香色五月直播| 婷婷99中文字幕| 九九亚洲无码| 26uuu日韩| jiuse91在线| 天天操屄网| 五月停停99| 这里只有精品在线免费视频| 搡BBBB搡BBB搡18 | 色综合xx| 欧美成人AAA片一区国产精品| j久久性爱视频| 六月婷婷五月天| 婷婷九月| 播播网色播播| 五月色情婷婷| 婷婷五月天小说| 婷婷五月中文在线| 丁香六月激情| 五月伊人综合| 九九色综合| 日日夜夜青青草| 亚洲网综合在线| 另类综合网| 久久婷婷的综合色丁香五月|