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

ARTICLE DETAIL

資訊詳情

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

基于JavaWeb的在線學(xué)習(xí)系統(tǒng)畢設(shè):源碼+數(shù)據(jù)庫(kù)+部署全攻略

基于JavaWeb的在線學(xué)習(xí)系統(tǒng)畢設(shè):源碼+數(shù)據(jù)庫(kù)+部署全攻略 簡(jiǎn)介本資源是一套完整的基于JavaWeb的在線學(xué)習(xí)系統(tǒng)畢設(shè)項(xiàng)目面向計(jì)算機(jī)專業(yè)本科生及Java初學(xué)者解決畢業(yè)設(shè)計(jì)選題難、實(shí)戰(zhàn)項(xiàng)目經(jīng)驗(yàn)不足等實(shí)際問題適用于在線課堂學(xué)習(xí)網(wǎng)站、網(wǎng)上學(xué)習(xí)平臺(tái)等典型教育信息化場(chǎng)景。壓縮包共3個(gè)文件含可直接運(yùn)行的項(xiàng)目源碼ZIP、MySQL數(shù)據(jù)庫(kù)建表與初始化腳本SQL、詳細(xì)部署與功能說明文檔TXT整體大小23.22MB結(jié)構(gòu)清晰、開箱即用。已有6371人學(xué)習(xí)下載驗(yàn)證了其高實(shí)用性與廣泛認(rèn)可度。讀者可獲得經(jīng)嚴(yán)格調(diào)試的B/S架構(gòu)完整系統(tǒng)涵蓋管理員、教師、學(xué)生三角色權(quán)限體系支持專業(yè)/班級(jí)管理、在線自測(cè)、教學(xué)視頻發(fā)布、作業(yè)分發(fā)與下載、公告與留言交互、資料庫(kù)維護(hù)等核心功能模塊配套說明文檔覆蓋環(huán)境配置JDKEclipseTomcat、數(shù)據(jù)庫(kù)導(dǎo)入及常見啟動(dòng)問題排錯(cuò)指引大幅降低部署門檻。1. 項(xiàng)目概述與設(shè)計(jì)思路1.1 為什么選 JavaWeb 做在線學(xué)習(xí)系統(tǒng)在做畢設(shè)選題的時(shí)候很多同學(xué)會(huì)糾結(jié)一個(gè)問題到底是選 Spring Boot 這類主流框架還是老老實(shí)實(shí)用 JavaWeb 的傳統(tǒng)技術(shù)棧。如果你現(xiàn)在正在看這個(gè)標(biāo)題的項(xiàng)目那么恭喜你這條路走對(duì)了。真正的 JavaWeb 項(xiàng)目指的是基于Servlet JSP JDBC MySQL Tomcat這套經(jīng)典組合開發(fā)出的 Web 應(yīng)用不依賴 Spring、SpringMVC、MyBatis 這些框架。很多學(xué)校的畢業(yè)設(shè)計(jì)大綱里明確要求學(xué)生掌握 JavaWeb 基礎(chǔ)知識(shí)甚至部分學(xué)校直接規(guī)定必須使用 JSP Servlet 完成項(xiàng)目禁止使用 Spring Boot。即便學(xué)校沒有硬性規(guī)定我也建議你在畢業(yè)設(shè)計(jì)階段至少完整地做一次傳統(tǒng) JavaWeb 項(xiàng)目。原因很簡(jiǎn)單框架會(huì)幫你屏蔽底層細(xì)節(jié)但畢設(shè)和面試考察的恰恰是你對(duì)底層原理的掌握程度。從標(biāo)題基于JavaWeb的在線學(xué)習(xí)系統(tǒng)【項(xiàng)目源碼數(shù)據(jù)庫(kù)腳本】(畢設(shè))可以看到這份項(xiàng)目的交付物包含了兩塊內(nèi)容完整的項(xiàng)目源碼和數(shù)據(jù)庫(kù)腳本。前者解決了核心業(yè)務(wù)代碼從哪來的問題后者解決了數(shù)據(jù)庫(kù)結(jié)構(gòu)怎么建的問題。這兩個(gè)東西恰好是畢設(shè)項(xiàng)目最容易卡殼的兩關(guān)——很多同學(xué)代碼寫到一半發(fā)現(xiàn)表結(jié)構(gòu)設(shè)計(jì)不合理或者數(shù)據(jù)庫(kù)腳本導(dǎo)不出來導(dǎo)致項(xiàng)目無法在答辯電腦上演示。在功能上這一套在線學(xué)習(xí)系統(tǒng)覆蓋了最常見的業(yè)務(wù)場(chǎng)景學(xué)生注冊(cè)登錄、課程瀏覽、課程詳情查看、在線學(xué)習(xí)進(jìn)度記錄、作業(yè)提交與批改、后臺(tái)管理員對(duì)課程和用戶的管理??梢哉f這正是高校JavaWeb課程設(shè)計(jì)里最典型的標(biāo)準(zhǔn)答案。1.2 系統(tǒng)模塊劃分與功能清單先來梳理幾大核心模塊方便你后續(xù)展開功能設(shè)計(jì)文檔和開題報(bào)告。從角色維度來看系統(tǒng)分兩種用戶身份學(xué)生端注冊(cè)、登錄、查看課程列表、查看課程詳情、報(bào)名課程、觀看視頻/閱讀課件、記錄學(xué)習(xí)進(jìn)度、提交作業(yè)、查看成績(jī)。管理端管理員登錄、學(xué)生信息管理、教師信息管理、課程分類管理、課程信息發(fā)布與上下架、作業(yè)批改與成績(jī)發(fā)布。從功能維度來看系統(tǒng)可以拆分成五大模塊模塊名稱核心功能用戶模塊注冊(cè)、登錄、退出、密碼修改、個(gè)人信息管理課程模塊課程分類瀏覽、課程列表分頁、課程詳情展示、課件上傳與下載在線學(xué)習(xí)模塊課程報(bào)名、學(xué)習(xí)進(jìn)度記錄、視頻課程頁面展示作業(yè)模塊作業(yè)發(fā)布、作業(yè)提交、作業(yè)批改、成績(jī)查看后臺(tái)管理模塊用戶管理、課程管理、作業(yè)管理、系統(tǒng)數(shù)據(jù)統(tǒng)計(jì)之所以把模塊劃分得這么清楚一是為了讓數(shù)據(jù)庫(kù)表結(jié)構(gòu)設(shè)計(jì)有據(jù)可依二是因?yàn)閷懏厴I(yè)論文時(shí)系統(tǒng)設(shè)計(jì)章節(jié)必須要有模塊圖。我建議你拿到項(xiàng)目后先對(duì)照這個(gè)功能清單跑一遍系統(tǒng)確認(rèn)每個(gè)功能都是可用的然后照著這個(gè)清單去畫用例圖和模塊圖工作量會(huì)小很多。2. 數(shù)據(jù)庫(kù)設(shè)計(jì)與腳本實(shí)現(xiàn)2.1 核心表結(jié)構(gòu)設(shè)計(jì)詳解數(shù)據(jù)庫(kù)是整個(gè)在線學(xué)習(xí)系統(tǒng)的地基。表關(guān)系設(shè)計(jì)得是否合理直接決定后面寫 SQL 和業(yè)務(wù)代碼的時(shí)候是順手還是想罵人。這一套系統(tǒng)的數(shù)據(jù)庫(kù)腳本我建議你重點(diǎn)分析下面這幾張表的關(guān)聯(lián)關(guān)系用戶表t_user這是整個(gè)系統(tǒng)最基本也是最核心的表同時(shí)支撐學(xué)生和管理員兩種角色。常見的設(shè)計(jì)是加入一個(gè) role 字段值為 1 表示學(xué)生2 表示管理員而不是把學(xué)生和管理員分兩張表存——原因很簡(jiǎn)單兩種角色登錄時(shí)需要校驗(yàn)的信息高度重合分開只會(huì)增加代碼復(fù)雜度。CREATE TABLE t_user ( id INT PRIMARY KEY AUTO_INCREMENT, username VARCHAR(50) NOT NULL UNIQUE, password VARCHAR(100) NOT NULL, real_name VARCHAR(50), role INT DEFAULT 1 COMMENT 1-學(xué)生 2-管理員, phone VARCHAR(20), email VARCHAR(50), create_time DATETIME DEFAULT CURRENT_TIMESTAMP );這里有一個(gè)在畢設(shè)答辯時(shí)容易被問到的問題密碼是否需要加密存儲(chǔ)穩(wěn)妥的做法是使用 MD5 加密后再入庫(kù)雖然 MD5 現(xiàn)在已經(jīng)被認(rèn)為不夠安全但畢業(yè)設(shè)計(jì)里展示的是你對(duì)安全性的認(rèn)知而不是要求你達(dá)到銀行級(jí)別。如果追求更好一點(diǎn)可以用 MD5 Salt 加鹽的方式處理。課程表t_course課程表需要和分類表、發(fā)布課程的教師表如果你擴(kuò)展了教師角色建立外鍵關(guān)聯(lián)。核心字段包括課程名稱、課程封面圖、課程簡(jiǎn)介、所屬分類、發(fā)布狀態(tài)、創(chuàng)建時(shí)間。CREATE TABLE t_course ( id INT PRIMARY KEY AUTO_INCREMENT, course_name VARCHAR(100) NOT NULL, cover VARCHAR(255), category_id INT, teacher_id INT, intro TEXT, status INT DEFAULT 1 COMMENT 1-上架 0-下架, create_time DATETIME DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY (category_id) REFERENCES t_category(id), FOREIGN KEY (teacher_id) REFERENCES t_user(id) );課程章節(jié)表和課時(shí)表這里要注意課程內(nèi)容和章節(jié)要分離設(shè)計(jì)。課程是一級(jí)容器課程下面有多個(gè)章節(jié)章節(jié)下面有具體的課時(shí)視頻、文檔這叫三級(jí)目錄結(jié)構(gòu)。如果只建一張表數(shù)據(jù)冗余會(huì)很嚴(yán)重。學(xué)習(xí)記錄表t_study_record這一張表最能體現(xiàn)在線學(xué)習(xí)系統(tǒng)和普通課程展示網(wǎng)站的區(qū)別。它記錄了用戶對(duì)某一課時(shí)的學(xué)習(xí)狀態(tài)包括學(xué)習(xí)進(jìn)度百分比、最后學(xué)習(xí)時(shí)間。做這個(gè)表的時(shí)候可以考慮使用聯(lián)合唯一索引user_id course_id lesson_id來避免重復(fù)記錄。2.2 外鍵約束設(shè)計(jì)與初始化數(shù)據(jù)外鍵關(guān)系是整個(gè)腳本設(shè)計(jì)中需要重點(diǎn)理解的部分。我在最初學(xué)習(xí)的時(shí)候有一段時(shí)間刻意不用外鍵所有表之間都是邏輯關(guān)聯(lián)認(rèn)為這樣查詢更靈活。但在畢業(yè)設(shè)計(jì)這種項(xiàng)目里我強(qiáng)烈建議你使用物理外鍵一分一毫都不要省。原因有三點(diǎn)第一答辯時(shí)老師常常會(huì)檢查你的數(shù)據(jù)庫(kù)設(shè)計(jì)是否符合范式?jīng)]有外鍵的表關(guān)系說不過去。第二物理外鍵能保證數(shù)據(jù)的一致性——比如刪除課程分類時(shí)如果該分類下還有課程系統(tǒng)會(huì)直接報(bào)錯(cuò)而不是留下孤兒數(shù)據(jù)。第三寫數(shù)據(jù)字典文檔時(shí)外鍵關(guān)系是現(xiàn)成的素材你只需要照著畫E-R圖就行。初始化數(shù)據(jù)同樣重要。在數(shù)據(jù)庫(kù)腳本中通常會(huì)預(yù)留一個(gè)管理員賬戶和幾個(gè)測(cè)試學(xué)生賬戶以及一批課程分類和示例課程數(shù)據(jù)。這樣做是為了讓你導(dǎo)入腳本后系統(tǒng)打開就有內(nèi)容可以展示不至于空空如也。拿到項(xiàng)目后強(qiáng)烈建議你先查一下 t_user 表里的默認(rèn)管理員密碼然后用這個(gè)賬號(hào)登錄后臺(tái)。2.3 從 IDEA、Navicat 到命令行三種導(dǎo)入導(dǎo)出數(shù)據(jù)庫(kù)腳本的方式這是本次項(xiàng)目交付里最容易出問題的地方我單獨(dú)拿出來說。方式一IDEA 內(nèi)置數(shù)據(jù)庫(kù)工具導(dǎo)出打開 IDEA 右側(cè)的 Database 面板連接好 MySQL 數(shù)據(jù)庫(kù)后右鍵點(diǎn)擊你要導(dǎo)出的數(shù)據(jù)庫(kù)選擇Export with mysqldump或者SQL Scripts選項(xiàng)。IDEA 會(huì)調(diào)起 mysqldump 命令生成一個(gè) .sql 文件。這里有一個(gè)坑導(dǎo)出時(shí)如果表結(jié)構(gòu)中有中文注釋導(dǎo)出的腳本文件編碼默認(rèn)可能不是 UTF-8輕則注釋亂碼重則整個(gè)腳本都無法導(dǎo)入。建議導(dǎo)出后在 IDEA 右下角確認(rèn)文件編碼是 UTF-8如果不是就手動(dòng)轉(zhuǎn)換一下。方式二Navicat 導(dǎo)入導(dǎo)出Navicat 是最直觀的圖形化工具。右鍵數(shù)據(jù)庫(kù) → 轉(zhuǎn)儲(chǔ) SQL 文件 → 結(jié)構(gòu)和數(shù)據(jù)寫入同一個(gè)文件即可。導(dǎo)入時(shí)同樣右鍵 → 運(yùn)行 SQL 文件。這里要注意Navicat 導(dǎo)出的腳本默認(rèn)帶了 DROP TABLE IF EXISTS 語句導(dǎo)入時(shí)不會(huì)因?yàn)楸碇貜?fù)創(chuàng)建而報(bào)錯(cuò)所以優(yōu)先用這種方式。方式三命令行導(dǎo)入答辯備用方案mysql -u root -p create database online_study default character set utf8; use online_study; source /path/to/online_study.sql;命令行導(dǎo)入方式我建議你一定要學(xué)會(huì)因?yàn)榇疝q現(xiàn)場(chǎng)的電腦未必裝了 Navicat甚至可能沒有 IDEA但很可能會(huì)裝命令行版本的 MySQL。有一點(diǎn)需要特別提醒如果你的 MySQL 是 8.0 及以上版本而項(xiàng)目是基于 MySQL 5.7 或更早版本開發(fā)的導(dǎo)入腳本時(shí)可能會(huì)遇到認(rèn)證插件問題或語法兼容問題。遇到這種情況優(yōu)先檢查項(xiàng)目數(shù)據(jù)庫(kù)驅(qū)動(dòng) JAR 包的版本然后確認(rèn)連接串里是否寫了 UTF-8 編碼參數(shù)。鏈接后面一定要加?useUnicodetruecharacterEncodingutf8useSSLfalse不加的話中文大概率會(huì)亂碼。3. 核心功能代碼實(shí)現(xiàn)與實(shí)操要點(diǎn)3.1 項(xiàng)目目錄結(jié)構(gòu)與前置準(zhǔn)備拿到源碼以后第一步不是急著運(yùn)行而是先把目錄結(jié)構(gòu)搞清楚。一個(gè)標(biāo)準(zhǔn)的 JavaWeb 項(xiàng)目非 Maven 方式長(zhǎng)這樣src ├── com.example.dao // 數(shù)據(jù)訪問層 ├── com.example.entity // 實(shí)體類 ├── com.example.service // 業(yè)務(wù)邏輯層 ├── com.example.servlet // 控制層 ├── com.example.util // 工具類 │ └── JDBCUtil.java └── com.example.filter // 過濾器 web ├── admin // 后臺(tái)頁面 ├── css / js / images // 靜態(tài)資源 ├── index.jsp ├── login.jsp └── WEB-INF ├── web.xml └── lib // 依賴JAR包如果你拿到的項(xiàng)目是 Maven 結(jié)構(gòu)目錄會(huì)多出src/main/java、src/main/resources、src/main/webapp三層本質(zhì)是一樣的只是目錄約定不同。在開始閱讀代碼之前我建議你先打開web/WEB-INF/web.xml文件這里面配置了 Servlet 的映射路徑、過濾器、歡迎頁面等關(guān)鍵信息??炊?web.xml你就知道用戶請(qǐng)求是怎么被分發(fā)到各個(gè) Servlet 的。3.2 登錄鑒權(quán)模塊的實(shí)現(xiàn)思路登錄是 JavaWeb 項(xiàng)目的第一課幾乎每個(gè)在線學(xué)習(xí)系統(tǒng)都會(huì)把登錄功能放在最前面。這個(gè)系統(tǒng)的登錄模塊核心代碼與常規(guī)實(shí)現(xiàn)方式基本一致大致包含三層第一層JSP 頁面提交表單。login.jsp 里的 form 表單通過 POST 方式提交用戶名和密碼到 LoginServlet。第二層Servlet 接收請(qǐng)求并調(diào)用業(yè)務(wù)方法。LoginServlet 在 doPost 方法中獲取請(qǐng)求參數(shù)調(diào)用 UserService 的 login 方法如果校驗(yàn)成功就把當(dāng)前用戶對(duì)象放到 Session 中然后重定向到首頁校驗(yàn)失敗就返回錯(cuò)誤提示。第三層DAO 層查詢數(shù)據(jù)庫(kù)。UserDao 的 findByUsernameAndPassword 方法拼接 SQL 語句通過 PreparedStatement 執(zhí)行查詢。這里要特別強(qiáng)調(diào)一個(gè)點(diǎn)為什么代碼里用的是 PreparedStatement而不是直接拼接字符串這是面試和答辯時(shí)的高頻問題。PreparedStatement 是預(yù)編譯的有兩個(gè)好處一是能防止 SQL 注入攻擊二是在循環(huán)執(zhí)行大量相同結(jié)構(gòu)的 SQL 時(shí)性能更高。用 Statement 直接拼接字符串一旦用戶輸入的內(nèi)容里含有單引號(hào)或 SQL 關(guān)鍵字你的數(shù)據(jù)庫(kù)就可能出大事。項(xiàng)目源碼里如果存在拼接 SQL 的地方建議你自己動(dòng)手改成 PreparedStatement這也是一個(gè)很好的代碼優(yōu)化亮點(diǎn)答辯的時(shí)候可以主動(dòng)提。關(guān)于 Session 和 Cookie 的分工邏輯登錄成功之后用戶狀態(tài)實(shí)際上存在了服務(wù)端的 Session 中瀏覽器端只是保存了一個(gè) JSESSIONID 的 Cookie 用于標(biāo)識(shí)哪個(gè) Session 屬于你。所以當(dāng)你關(guān)閉瀏覽器再打開Session 消失了用戶就掉線了。如果項(xiàng)目里實(shí)現(xiàn)了記住我功能邏輯就是額外在 Cookie 中保存用戶 ID并設(shè)置七天有效時(shí)間下次訪問時(shí)通過過濾器自動(dòng)恢復(fù)登錄狀態(tài)。3.3 過濾器的應(yīng)用如何實(shí)現(xiàn)登錄攔截JavaWeb 里最容易被問到的知識(shí)點(diǎn)之一就是 Filter過濾器。在這個(gè)在線學(xué)習(xí)系統(tǒng)中過濾器主要用于兩件事一個(gè)是統(tǒng)一設(shè)置請(qǐng)求編碼CharacterEncodingFilter另一個(gè)是登錄狀態(tài)攔截LoginFilter。登錄攔截的邏輯很好理解用戶請(qǐng)求一個(gè)需要登錄才能訪問的頁面比如個(gè)人中心、在線學(xué)習(xí)頁面過濾器會(huì)先檢查 Session 中有沒有用戶對(duì)象沒有就跳轉(zhuǎn)到登錄頁。這個(gè)功能如果不用過濾器就得在每個(gè) Servlet 開頭寫一堆重復(fù)的 if 判斷代碼冗余不說還容易漏。我建議你重點(diǎn)研讀源碼里的過濾器因?yàn)檫@東西在面試中屬于必問題。你要能做到說出過濾器在請(qǐng)求鏈路中的執(zhí)行順序知道如何通過 web.xml 里的url-pattern配置攔截范圍還能說出多個(gè)過濾器通過WebFilter注解或filter-mapping配置順序時(shí)的調(diào)用規(guī)則。把這些理解了這一部分基本就沒問題了。3.4 課程學(xué)習(xí)模塊從列表頁到詳情頁的關(guān)鍵代碼邏輯課程模塊是系統(tǒng)的門面功能拆下來其實(shí)是一個(gè)列表 → 詳情的經(jīng)典流程。課程列表頁首頁通過查詢所有上架狀態(tài)的課程用 JSTL 的 c:forEach 標(biāo)簽循環(huán)展示課程卡片。這里要注意分頁的實(shí)現(xiàn)方式傳統(tǒng) JavaWeb 項(xiàng)目里常用 Manual 分頁即通過 LIMIT 關(guān)鍵字裁剪查詢結(jié)果配合 PageBean 封裝當(dāng)前頁碼、總頁數(shù)、總記錄數(shù)等信息。你可以重點(diǎn)看下 PageBean 的源碼查一查各個(gè)字段怎么計(jì)算的因?yàn)楫呍O(shè)答辯時(shí)老師往往喜歡讓空手套白狼地問一句如果你的課程有十萬條全部查詢出來會(huì)有什么問題課程詳情頁點(diǎn)擊某門課程后請(qǐng)求跳轉(zhuǎn)到 CourseDetailServlet攜帶 courseId 參數(shù)Servlet 根據(jù)這個(gè) ID 查詢課程基本信息、章節(jié)信息、課時(shí)信息然后渲染到課程詳情 JSP 頁面上。用戶點(diǎn)擊報(bào)名后系統(tǒng)會(huì)往選課關(guān)系表里插入一條記錄這時(shí)候在線學(xué)習(xí)的進(jìn)度記錄功能才開始生效。在線學(xué)習(xí)進(jìn)度跟蹤學(xué)生每打開一個(gè)課時(shí)前端 JS 會(huì)發(fā)起一個(gè) Ajax 請(qǐng)求把當(dāng)前課時(shí) ID 和用戶 ID 傳到后臺(tái)更新 t_study_record 表里的最后學(xué)習(xí)時(shí)間。刷新頁面時(shí)當(dāng)前課時(shí)之前的所有課時(shí)會(huì)標(biāo)記為已學(xué)完。這個(gè)功能乍一看不復(fù)雜但它把在線學(xué)習(xí)系統(tǒng)和靜態(tài)課程網(wǎng)站區(qū)分開了屬于一個(gè)可以寫進(jìn)論文里的功能亮點(diǎn)。3.5 后臺(tái)管理模塊數(shù)據(jù)如何增刪改查后臺(tái)管理模塊的代碼套路是最固定的就是標(biāo)準(zhǔn)的 CRUD增刪改查四件套。以課程管理為例查詢課程列表 → 調(diào)用 CourseService.findByPage() → CourseDao 執(zhí)行 SELECT 語句并封裝成 List添加課程 → 提交課程信息表單 → CourseServlet 接收請(qǐng)求參數(shù) → CourseDao 執(zhí)行 INSERT修改課程 → 根據(jù) id 查詢?cè)瓟?shù)據(jù)回顯到編輯表單 → 修改后提交 → CourseDao 執(zhí)行 UPDATE刪除課程 → 攜帶 id 請(qǐng)求 DeleteCourseServlet → CourseDao 執(zhí)行 DELETE這套增刪改查邏輯本質(zhì)上是一樣的變量只有表名和字段名。所以我給你一個(gè)建議代碼不用每一行都讀懂但至少要把從 Service 到 DAO 再到 SQL這條鏈路完整梳理一遍同時(shí)在筆記本上畫一遍調(diào)用關(guān)系圖畫完之后你會(huì)發(fā)現(xiàn)自己對(duì)整個(gè)項(xiàng)目的理解完全不一樣了。有一點(diǎn)務(wù)必要注意刪除操作一般都采用邏輯刪除而不是物理刪除。具體來說就是在課程表里加一個(gè) status 字段用戶點(diǎn)擊刪除時(shí)只是把 status 從 1 改為 0這樣后臺(tái)數(shù)據(jù)還在只是前臺(tái)不再展示。這樣做的好處是萬一誤刪了還能恢復(fù)也能保留歷史數(shù)據(jù)。如果源碼里直接執(zhí)行 DELETE建議你改成邏輯刪除然后在論文里專門寫一段數(shù)據(jù)安全設(shè)計(jì)屬于加分項(xiàng)。4. 本地部署運(yùn)行全流程4.1 環(huán)境準(zhǔn)備與版本匹配在動(dòng)手之前把環(huán)境統(tǒng)一一下。我測(cè)試起來最順的版本組合是這樣組件版本建議說明JDK1.8 或 11不建議直接用 JDK 17 以上跑老項(xiàng)目可能出現(xiàn)兼容問題Tomcat8.5 或 9.0與 JDK 8 匹配最穩(wěn)妥MySQL5.7 或 8.0如果用的 8.0注意驅(qū)動(dòng) JAR 要換成 8.xIDEA2021 版之后都可以主要是照顧界面熟悉度以上版本組合如果你自己本地已經(jīng)有別的版本也不必強(qiáng)求一模一樣。但我建議你別用太新的比如 JDK 21 Tomcat 10可能會(huì)有很多莫名其妙的不兼容問題本末倒置。4.2 IDEA 導(dǎo)入項(xiàng)目?jī)煞N方式方式一非 Maven 項(xiàng)目導(dǎo)入File → New → Project from Existing Sources選擇項(xiàng)目根目錄。關(guān)鍵是下一步選擇 Import project from external model 時(shí)選 Eclipse 或直接選 Create project from existing sources因?yàn)楹芏嗬?JavaWeb 項(xiàng)目是用 Eclipse 開發(fā)的IDEA 直接打開可能識(shí)別不了。導(dǎo)入后記得配置 Project Structure把 JDK 設(shè)為 1.8并添加 Tomcat 的依賴庫(kù)。如果發(fā)現(xiàn) JSP 文件里的紅色報(bào)錯(cuò)多半是缺少 Tomcat 庫(kù)的引用在 Project Structure → Libraries 里點(diǎn)擊 → Java選擇本機(jī) Tomcat 安裝目錄下的 lib 文件夾。方式二Maven 項(xiàng)目導(dǎo)入如果是 Maven 項(xiàng)目就簡(jiǎn)單了直接 File → Open選擇 pom.xml 文件。IDEA 會(huì)自動(dòng)下載依賴首次下載可能需要幾分鐘時(shí)間取決于你的網(wǎng)速。導(dǎo)入完成后再在 Edit Configurations 里新增一個(gè) Tomcat Server → Local選好 Tomcat 目錄Deployment 選項(xiàng)卡里點(diǎn) → Artifact → war exploded這一步操作非常容易漏。注意選擇 Artifact 時(shí)選帶:war exploded后綴的那個(gè)不要選:war前者是解壓目錄部署開發(fā)時(shí)免去反復(fù)打包的麻煩。4.3 配置數(shù)據(jù)庫(kù)連接三步搞定打開項(xiàng)目的 JDBC 配置文件通常在 src 目錄下的 jdbc.properties或直接寫在 DBUtil.java 里重點(diǎn)改三個(gè)參數(shù)jdbc.drivercom.mysql.jdbc.Driver jdbc.urljdbc:mysql://localhost:3306/online_study?useUnicodetruecharacterEncodingutf8useSSLfalse jdbc.usernameroot jdbc.password你的數(shù)據(jù)庫(kù)密碼第一行驅(qū)動(dòng)類全名要根據(jù) MySQL 版本調(diào)整MySQL 5.x 用com.mysql.jdbc.DriverMySQL 8.x 用com.mysql.cj.jdbc.Driver。第二行 URL 中online_study是數(shù)據(jù)庫(kù)名要和導(dǎo)入腳本時(shí)創(chuàng)建的庫(kù)名完全一致后面那一長(zhǎng)串參數(shù)務(wù)必保留尤其是 characterEncodingutf8不帶它中文必亂碼。4.4 完整運(yùn)行流程清單首次運(yùn)行建議嚴(yán)格走一遍以下流程避免調(diào)試時(shí)像無頭蒼蠅一樣到處碰壁用 Navicat 或命令行創(chuàng)建數(shù)據(jù)庫(kù)CREATE DATABASE online_study DEFAULT CHARACTER SET utf8;導(dǎo)入在線學(xué)習(xí)系統(tǒng)的 SQL 腳本確認(rèn)表格數(shù)量與數(shù)據(jù)條數(shù)。確認(rèn) MySQL 服務(wù)已啟動(dòng)命令行執(zhí)行netstat -ano | findstr 3306查看端口是否被占用。啟動(dòng) IDEA配置好 Tomcat 后點(diǎn)擊運(yùn)行。瀏覽器訪問http://localhost:8080/項(xiàng)目名/項(xiàng)目名要和你部署的 Context Path 保持一致。用管理員賬戶登錄后臺(tái)驗(yàn)證課程管理、用戶管理等模塊是否正常。這幾步如果都通了你的項(xiàng)目部署就成功了。整個(gè)過程中最見鬼的地方往往是第三步以后所以下面專門開一節(jié)說說常見問題怎么排查。5. 常見問題與排查技巧實(shí)錄5.1 高頻報(bào)錯(cuò)速查表每次在部署 JavaWeb 項(xiàng)目時(shí)總會(huì)有人遇到差不多的問題我把最常見的整理成一張表你直接對(duì)照著查就行報(bào)錯(cuò)信息可能原因解決方案ClassNotFoundException: com.mysql.jdbc.Driver缺 MySQL 驅(qū)動(dòng) JAR把 mysql-connector-java-5.x.jar 放到 web/WEB-INF/lib 下Access denied for user rootlocalhost數(shù)據(jù)庫(kù)密碼錯(cuò)誤檢查 jdbc.properties 中的密碼Can not connect to MySQL ServerMySQL 服務(wù)未啟動(dòng)命令行執(zhí)行 net start mysql或到服務(wù)列表啟動(dòng)Table online_study.t_user doesnt exist沒有導(dǎo)入數(shù)據(jù)庫(kù)腳本執(zhí)行 source 命令導(dǎo)入 SQLThe server time zone value XXX is unrecognizedMySQL 8.0 時(shí)區(qū)問題URL 添加serverTimezoneAsia/ShanghaiHTTP Status 404訪問路徑或部署名不對(duì)檢查 web.xml 的 Servlet 映射和 URL 地址中文亂碼編碼不統(tǒng)一JSP 頁面、數(shù)據(jù)庫(kù)連接串、數(shù)據(jù)庫(kù)字符集全部設(shè)為 UTF-8Port 8080 was already in use端口被占用殺掉占用進(jìn)程或修改 Tomcat 端口5.2 部署過程中最坑的三個(gè)細(xì)節(jié)第一個(gè)坑JAR 包放錯(cuò)位置。很多人把 mysql-connector-java.jar 放到了項(xiàng)目的普通目錄里IDEA 編譯不報(bào)錯(cuò)運(yùn)行就報(bào) ClassNotFoundException。記住傳統(tǒng) JavaWeb 項(xiàng)目里所有第三方 JAR 都要放在web/WEB-INF/lib目錄下這是 Servlet 容器的類加載規(guī)則。如果是 Maven 項(xiàng)目則要確認(rèn) pom.xml 里依賴是scopecompile/scope且沒有 marked as provided 之類的影響。第二個(gè)坑數(shù)據(jù)庫(kù)腳本中的中文注釋導(dǎo)致導(dǎo)入中斷。用命令行 source 導(dǎo)入腳本時(shí)如果腳本文件不是 UTF-8 編碼或者數(shù)據(jù)庫(kù)連接字符集不對(duì)會(huì)出現(xiàn)中文亂碼報(bào)錯(cuò)導(dǎo)入到一半就停掉。解決方式是導(dǎo)入前先執(zhí)行SET NAMES utf8;然后確認(rèn) .sql 文件保存的編碼是 UTF-8用 Notepad 或 VS Code 轉(zhuǎn)換。第三個(gè)坑IDEA 熱部署導(dǎo)致 Session 丟失。開發(fā)中你改了 JSP 文件Tomcat 自動(dòng)重載后之前登錄的 Session 可能會(huì)失效。這不是項(xiàng)目 Bug而是熱部署機(jī)制的問題。建議在 Edit Configurations → Deployment 里把 On frame deactivation 設(shè)為 Update resources而不是 Restart server減少這種困擾。5.3 答辯前必須準(zhǔn)備的問題方向到了答辯環(huán)節(jié)老師大概率會(huì)圍繞這些問題提問提前準(zhǔn)備一下可以避免現(xiàn)場(chǎng)卡殼為什么選擇 Servlet JSP而不用 Spring Boot建議回答畢設(shè)側(cè)重考察 JavaWeb 底層原理Servlet JSP 能更清晰地展示請(qǐng)求處理流程同時(shí)項(xiàng)目采用分層架構(gòu)為后續(xù)遷移到 Spring Boot 保留了擴(kuò)展能力數(shù)據(jù)庫(kù)表之間有哪些關(guān)系需要你熟練說出 t_course 和 t_category、t_user 和 t_study_record 之間的關(guān)系Session 和 Cookie 有什么區(qū)別這是 JavaWeb 必問題要從存儲(chǔ)位置、生命周期、安全性三個(gè)角度回答項(xiàng)目如何防止 SQL 注入答案是使用 PreparedStatement最好能現(xiàn)場(chǎng)指出代碼中的使用位置順便建議不要用 Statement 拼串分頁查詢是怎么實(shí)現(xiàn)的從 SQL 層的 LIMIT 到 PageBean 的封裝全鏈路講清楚如果用戶量增大項(xiàng)目性能如何優(yōu)化可以從數(shù)據(jù)庫(kù)索引、連接池、Redis 緩存、Nginx 靜態(tài)資源分離等角度展開5.4 讓項(xiàng)目從能跑到優(yōu)秀的幾個(gè)改進(jìn)點(diǎn)最后分享幾個(gè)可以讓你在眾多畢設(shè)中稍微出彩一點(diǎn)的小改動(dòng)成本不高但效果拔群。第一個(gè)統(tǒng)一異常處理。在某些老代碼里你可能會(huì)看到 DAO 層的 SQLException 直接向上拋甚至在頁面顯示。你也可以拿舊項(xiàng)目改造一下思路寫一個(gè)全局異常處理 Servlet 或過濾器捕獲未處理異常后跳轉(zhuǎn)到友好的錯(cuò)誤頁面既避免信息泄露又顯得專業(yè)。第二個(gè)使用連接池替換原始的 DriverManager 獲取連接。原始的 JDBCUtil 里面如果每次請(qǐng)求都 DriverManager.getConnection()性能比較慢答辯時(shí)被問性能優(yōu)化會(huì)比較尷尬??梢杂?Druid 或 C3P0 連接池重寫。改動(dòng)量不大只要引入一個(gè) JAR然后在 JDBCUtil 里用 DataSource 獲取連接即可。第三個(gè)引入 AJAX 提升交互體驗(yàn)。比如課程收藏按鈕原本提交表單頁面刷新改成 AJAX 請(qǐng)求局部更新用戶體驗(yàn)立刻就不一樣。這個(gè)改動(dòng)涉及到的知識(shí)點(diǎn)在后端依然是 Servlet前端只是加了一段 JavaScript 而已不復(fù)雜但很加分。第四個(gè)增加簡(jiǎn)單的數(shù)據(jù)統(tǒng)計(jì)圖表。在管理員首頁顯示注冊(cè)用戶數(shù)、課程數(shù)量、學(xué)習(xí)記錄總數(shù)甚至可以用 ECharts 渲染一個(gè)簡(jiǎn)單的柱狀圖。這類可視化內(nèi)容很容易給評(píng)委留下好印象而且實(shí)現(xiàn)成本不高只需要寫一個(gè)統(tǒng)計(jì) SQL 再在 JSP 里引一下 ECharts 的 CDN 即可。我自己帶過的學(xué)生里凡是認(rèn)真把這些點(diǎn)改過一遍的答辯成績(jī)基本都比原樣提交的高一步。原因不是功能本身有多強(qiáng)而是這個(gè)動(dòng)作向評(píng)委傳達(dá)了你真正理解了這個(gè)項(xiàng)目并能動(dòng)手改進(jìn)這比任何包裝都管用?,F(xiàn)在你已經(jīng)拿到了完整的源碼和數(shù)據(jù)庫(kù)腳本接下來的路只有一條打開 IDEA把項(xiàng)目跑起來然后一行一行去看核心代碼再把這些改進(jìn)點(diǎn)動(dòng)手過一遍。等你自己動(dòng)手寫完這些代碼你就不再是下載了一個(gè)畢設(shè)的人而是獨(dú)立完成了一個(gè)在線學(xué)習(xí)系統(tǒng)的人了。這個(gè)轉(zhuǎn)變答辯老師在五分鐘內(nèi)就能看出來。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
久久女婷| 色婷婷成人做爰A片免费看网站 | 色综合久久久久| 狠狠色婷婷7777久综合| 成人做爰A片免费看视频| 91视屏在线观看com.wwwvv| 成人精品免费在线观看| 亚洲综合成人网| 婷婷涩五月天综合| 超碰色碰碰| 伊人九热| 天天操婷婷| 亚洲狠狠操| av狠狠操| 中文在线成人| 色五月综合在线| www综合久久| www.夜夜操| 成人综合AV| 国产精品第一国产精品| 激情五月天社区| 五月天丁香婷| 中文字幕丰满孑伦无码专区| 亚洲色五月| 日韩在线视频中文字幕| 亚洲成人网站在线| 色综合网页| 99久re热视频精品98| 丁香五月久久综合| 五月婷在线色视频| 99A级片| 激情婷婷丁香色五月综合| 热热99爱爱| 九九综合影音先锋| 日日操夜夜擼| 大地资源色婷婷视频在线 | 亚洲综合九九| 9热精品| a毛片二逼wwwwwwwwww| 99国产精品久久久久久久久久久 | 丁香五月宝贝激情网| 五月天婷婷影院| 丁香色影院| 婷婷五月丁香基| 亚洲九九视频| 日韩无码专区| 香港九九六区八区99| 久久免费精彩视频| 91肏肏肏| 91精选国| 久久99久久久久久久噜噜| 综合激情五月婷婷| 思思热在线视频99| 99热久草| 丁香五月电影| 99九九在线视频| 亚洲激情六月| 久久精品噜噜噜成人A∨色欲| 2025超碰| 精品九九婷婷| 99九九在线视频| 九9九9无码| 波多野结衣成人作品在线| 天堂伊人干| 久久精品国产一区二区三区四区| 婷婷在线五月综合| 精品人妻在线| 狠狠爱夜夜| 另类丁香综合| 九九久久五月天| 婷婷五月色综合| 亚洲无码yw| 99九九热视频| 五月色综合| 99综合视频一体| 激情综合色| 91日韩在线| 天天爱天天爽| 天天干在线播放| 香蕉久日夜| 视频一区二区在线| 97视频91| 五月婷婷五月天天| 丁香六月婷婷综合| 天天爽天天爽| 五月婷婷国产| ay2区| 99在线观看精彩视频| 婷婷五月天视频小说| 五月天激情无码高清| 99爱免费视频| 久久六月综合| 成人AV播放| 92久操视频| 国产精品日日躁夜夜躁| 丁香花五月天| 色色五月天丁香婷婷| 人人摸人人摸| 无码碰碰| 三区激情四射av| 人人人操B超碰| 久/久精品99看9| 激情 婷婷| 亚洲无码www| 丁香五月WWW| 91人碰| 夜夜大香蕉婷婷丁香| 97色色色| 婷婷六月色情| 午夜天堂啪啪| 激情五月天色色色| 天堂爱爱| 九色自拍| 成人VAV视频在线观看| 大香蕉久| 丁香婷婷色五月激情综合| 色色婷婷五月| 五月天婷婷在线播放免费| 色婷婷操逼| 婷婷五月天影院| 五月丁香婷婷综合激情基地| 六月婷婷激情图片| 天天综合91入口| 二级黄色毛片| 精a品a| 色色五月丁香| 黄网免费观看| 五月丁香啪啪| 99精品久久久久久| 免费视频舔| 日本久久爱| 可以看的AV| 色色五月天 亚洲| 91婷婷色 | 怕怕視頻| 99色色热热| 色婷婷国产精品综合在线观看| 99热精品中文字幕| 九热视频| 99干视频| 色欲婷婷五月天丁香| 成片免费播放| 国产婷婷色五月| 成人丁香婷婷| www.婷婷五月天,com| 台湾综合丁香五月蜜桃| 97资源碰碰| 日本三级成人秘书精品片| 二色AV| 激情六月综合| 看片视频在线免费日产在线看| 第九色区av天堂| 操逼视频一区| 国产avapp 网| 婷婷99中文字幕| 婷婷五月六月| 五月色婷婷夜色| 夜夜爽日日躁| 任你躁XXXXX麻豆精品| 久99| 色五月激情| 天天综合91入口| 深爱五月婷| www.91av.com| 99热日韩| 99在线综合视频| 另类综合网| 嫩草AV久久伊人妇女超级A| 99久久婷婷国产综合亚洲| 五月丁香六月婷婷不卡免费无码| 国产精品第一国产精品| 99re久热只有精品6在线直播| 九九99在线免费在线观看视频| WWW,五月| 色99色| 六月激情婷婷综合| 东京热伊人| 五月天停停日日| 五月五婷婷| 久热A片| 互月天综合| 亚洲日本韩国| 九九精品视频在线6| AV在线不卡播放| 激情亚洲五月| 五月激情婷婷女| 狠狠爱成人综合网| 99九九99九九九视频精彩| 午夜色婷婷| 激情四射婷婷色色色| 国产视频婷婷| 超碰在线视屏| 国精产品一区一区三区免费视频| 五月婷婷免费视频| 日韩AV中文字幕在线| WWW,五月| 成人婷99最新| 成人做爰A片免费看网站找不到了| 丁香色六月婷婷| AA片在线观看视频在线播放| 激情五月色综合| www综合久久| 97色欧美| 久久婷出差欧美色两性综合网| 一起草AV入口| 日本天堂免费99| 91综合网| 天天天天天天操| 亚洲色婷婷激情| 色婷婷伊人激情在线观看| 丁香六月婷婷姐网| 五月丁香色| 久久99久久99久久99人受| 五月丁香激情综合六月涩涩爱| 综合福利网| 五月丁香婷婷AV| 99在线热| 六月丁AV| 久久9视频| 国产又色又爽又黄又免费| 思思热在线视频99| 99精品在线观看视频| 人人草人人舔| 五月婷婷视频| 五月亭亭激情综合| 久久99久久久| 99色视频| 五月天开心网| 五月婷婷这里都是精品| 91凹凸在线| 色五月婷婷五月天| 久久亚洲天堂| 26UUU一区二区| 欧美性爱丁香五月| 超碰在线人妻| 亚洲成人在线五月天| 日韩影院三级| 五月天小说激情| 久久婷婷成人| 另类小说激情五月天| 大香蕉人妻| 午夜亚洲AV日韩无码| 丁香五月欧美午夜视频| 丁香六月爱综合| 国产在线黄色| 一起肏在线视频| 五月婷婷色| 综合婷婷五月天| 狠狠 婷婷| 色五月婷婷影院| 五月天激情影院| 五月婷婷影| 五月丁香婷婷爱激情综合网| 日本美女上人| 天天色综合网吨吧| 六月激情婷婷综合| 色五月欧美| 性色做爰片在线观看WW| 大香蕉手机视频| 丁香涩涩爱| 丁香五月视频在线观看| 久久99精品视频| 超碰成人影视| 国产精品18久久久| 国产av影片| 婷婷五月天伊人网| www.婷婷| 成人av中文字幕| 丁香六月激情综合啪啪| 白天AV月月| 91九色国产| 91AV视频| .comwww在线观看免费操| www.99热| 色综合五月| 五月综合激情| 婷婷综合亚洲| 99热精品观看| 五月天久久网站| 婷婷五月成人系列| 天天日夜夜帕| 色天天综合色| 桃色激情婷婷伊人网| 欧美在线干| 九九精品热| 色五月丁香六月资源站| 狠狠操.COM| 亚洲激情.com| 激情丁香婷婷| 欧美性猛交99久久久久99按摩| 精品一二三区久久AAA片| 天天日夜夜欢| 99九九视频精彩在线| 久久66成人网站| 无码G高清天| 俺也去在线久久精品23欧美综合视频网站,丰满人妻一区二区三区在线视频53,丰满 | 色播综合| 激情综合婷婷五月| 色播丁香五月婷婷操:屄| 综合亚洲六月婷婷在线| 立川无码av| 丁香五月婷婷久久综合激情网 | 丰满少妇乱A片无码| 日韩超碰在线| 狠狠五月天激情| 激情激情激情网| 欧美成人精品A片免费一区99| 99色| 天天综合久久| 天天干天天干天天干天天干天天干天天 | Www.激情| 丁香五月天激情综合| 五月丁香婷婷色啪| 欧美久热| 五月丁香影视| 3p九色在线| 91久久综合亚洲鲁鲁五月天| 婷婷丁香五月,狠狠综合| 色欲一区二区三区精品A片| 激情五月天无人视频在线| 生活片五区| 91精品国产综合久久久不卡电影| 色婷丁香| 久久性爱视频久久性爱视频| 色五月综合网| 婷婷丁香91| 五月天三级| 激情综合五月| 九九爱精品网站| 丁香五月天无码AV| 婷婷五月天综合久久| 婷婷五月天伊人网| 991国产精选视频在线播放下载| 色狠狠六月| 激情五月天啪啪| 五月天色图| 国产原创视频91九色| 五月激情五月丁香| 丁香五月天激情视频| AV网址大全在| 久播影院免费观看电视剧大全最新网| 99精品偷自拍| www.夜夜夜| 99在线视频播放| 1024AV视频| 玖玖在线资源视频| 天天爽天天| 超碰人人操人人干| 色欲天天综合网| 中文字幕黄色电影网址| 99久久性爱| 三十熟女| 亚洲激情五月丁香久久久久| 另类少妇人与禽zOZZ0性伦| 婷婷丁香五月基地| 亚洲99热| 人妻操日日| 乱色色色| 色婷婷四虎| 五月婷网站| 少妇人妻丰满做爰XXX| 在线视频色五月| 91爱操| 色爽九九| 超碰免费在线| 婷婷五月综合婷婷| 无码少妇高潮喷水A片免费| 日韩欧美颜射| 久久久久9| 91蜜桃婷婷狠狠久久综合9色| 成人在线不卡| 五月丁香手机在线| 五月婷婷大香蕉| 超碰人人操人人干| 91九九| 66久久视频在线| 天天做天天爱| 婷婷五月深深爱| 婷婷五月丁香99| 色色色色网色色网色色| www,超碰| 五月天伊人网| 99er在线观看| 激情骚五月| 96丁香六月婷婷蜜桃综合久久| 人人操大| 久久人人妻| 国内婷婷丁香社区在线播放| 热99色| 亚洲色在线观看| 99热欧美精品| 九九综合| 激情五月综合网最新 | 婷婷五月色| 婷婷丁香69精华| 亚洲精品亚洲人成人网| 五月婷婷丁香av| 俺去婷婷 丁香| 九九人人精品| 天天操天天操天天操| 啪啪视频99| 激情99| 99.N在线视频| 成人免费120分钟啪啪| 日日日天天干| 激情综合五月激情XXXX| 激情小说五月天| 99成人精品| 最新久久99视频网站| 丁香狠狠色婷婷| 日本本土色网第一区| 亚洲六月综合激情久久下卡| 色婷婷a v| 深情六月婷婷综合久久| 久久aaaaa| 婷婷导航| 婷香五月激情视频| 天天色综合色| 色玖玖综合网| 色婷婷四虎| 97干在线| 日本操B视频| 欧美群妇大交乱婬网| 国内自拍97在线| 99视频自拍| 色欲五月婷婷| 丁香五月图片| 无码人妻激情| 国产高潮A片羞羞视频涩涩| 色五月婷婷色五月| 激情婷婷综合| 色哟哟精品| 碰碰碰97国产| 国产av天堂| 丁香五月综合在线观看| 丁香五月天人体| 婷婷五月天BBw| 71在线精品视频一区| 91精品久久久久| 丁香成人色情五月天| 开心五月婷婷五月| www.99日本| 五月婷久久久久综合| 中文字幕 码精品视频网站| 五月丁香操亭亭网| 日日狠夜夜狠| 五月综合激情图片| 9精品视频在线观看| 久热re视频在线观看网站| 99婷婷| 伊人色综合久久久| 视频这里只有精品16| 国産精品| 久久久久久激情| 五月天婷婷久草丁香| av一级棒av| 99爱爱| 欧美99热| 99操逼| www.色九月| 思思热精品在线观看| 日韩激情网站| 888久久久| 五月丁香亭亭A片| AA片在线观看视频在线播放| 99re热视频这里只精品| 婷婷色情 | 免费看欧美成人A片无码| 夜夜爽天天爽| 91色在线 | 日韩| 激情五月六月婷婷| 另类激情综合| 任你日视频| 九九青草热| 亚洲五月天另类小说图片| 色A网| 丁香六月 婷婷六月| 激情五月婷黄版| 啪啪六月婷婷| 丁香六月婷婷综合激情欧美| 色五月天影视| 亚洲婷婷丁香五月天激情小说| 色婷婷五月六月丁香综合视频| 91久久久久久久久18| 成人免费va| 91久热| 综合网啪| 97在线精品| 九月丁香婷婷| 五月丁香婷婷综合| www.91五月| 色色9 9| 人妻操操色| 洗浴中心操B视频| 五月天婷久精视频| 亚洲激情av| 婷婷亚洲综合| 狠狠色婷婷综合开心影视| 丁香五月激情五月| 婷婷五月综合久久中文字幕| 久草久青福利| 九九精品视频在线观看| 久久A V无码视频| 5月婷婷激情6月| 色婷婷在线视频久| 久热这里只有精品视频免费观看| 午夜无码熟熟妇丰满人妻 | 色色婷婷五月天| 99热精品在线观看| 国产又粗又大又爽又黄| 玖玖婷婷五月天毛片| 91亚洲免费片| 综合啪啪| 在线观看欧美| 久久这里这里有精品免费视频| 丁香青青五月天| 99ri精品在线| 五月天婷婷影院影院| 狠狠色婷婷| 欧美99视频| 中文字幕永久在线| 国语精品探花| 99爱在线视频| 国产精产国品一二三在观看| 久久九九九九| 手机看片日日做夜夜| 综合色天天| 五月婷婷基地| 色婷婷六月| 91女人18毛片水多国产| 丁香六月婷婷久久综合| 人人干人人操人人摸| 99热.com| 久久五月综合| 99在线精品视频| 99热精品9| 思思久久99热只有频精品66| 天天天干夜夜夜操| 67194中文字幕| 99热这里只有精品23| 亚洲色综合性| 五月六月丁香婷婷在线观看| 色婷婷丁香五月天在线视频| 丁香激情合作五月| 亚洲五月天综合| 丁香五月婷婷丫| 特级西西4444www无码| 久久综合中文| 久久免片| 中文字幕无码人妻少妇免费视频| 97色婷婷| 怎么样可以看免费的一级av| 操逼五月婷婷| 激情五月婷婷综合秋霞| 丁香五月婷婷老师网站| 九九热99在线视频| 六月婷婷七月丁香| 亚洲精品欧洲精品| 久久久久亚洲AV成人无码电影| 99久久国产综合精品五月天喷水\| 五月天色色激情综合| 99免费在线视频| 色欲AVV| 99久久国产宗和精品1上映| 久久停停超碰| 婷婷伊人综合中文字幕| 综合网啪| 国产成人AV在线播放| 丁香五月日啪| 无码人妻AV久久久一区二区三区| 色噜噜狠狠色综合无码久久欧美| 色婷婷欧美| 综合网狠狠| 月婷婷婷婷五月| 日韩av高清| 色深爱五月| 蜜臀av粉嫩av懂色av| 五月婷婷导航| www.狠狠操.co m| 久久精品永久免费| 另类激情五月在线视频欧美| 97人人射| 亚洲99精品九九在线| 成人五月丁香花| 日韩精品电影| 欧美情月伍月天| 啪啪激情网站| 五月丁香欧美综合| 成人做爰高潮A片免费视频| 果冻传媒A片一二三区| aaaa久久| 99色色爰| 婷婷瑟瑟五月天| 99精品自拍视频| 夜精品无码A片一区二区蜜桃| 激情综合五月丁香六月婷婷| 黄色三级日本| 五月天开心色情网| 激情小说婷婷| 丰满少妇猛烈A片免费看观看| 欧美碰碰碰| 婷婷99狠狠| 五月天色裸体视频| 色五月 五月婷婷| 色色网站免费| 色婷婷综合网站| 香蕉99网| 99综合视频在线| 激情五月天小说| AA久久| 色日本颜射| 激情久久久久久久久久| 色婷婷综合五月| 激情五月丁香六月综合AVXXXX| 色播婷婷大香蕉| αv中文字幕在线观| 手机在线日韩视频中文字幕| 六月婷婷网站| 亚洲va成人va成人va在线观看| 91啦丨九色丨刺激中文| 亚洲精品国产setv| 久久人妻伦理| 黄色片久久| 91久久久久久久| 六月婷五月丁香| 99热这是里只有精品| 99免费在线视频| 婷婷色基地| 天天爽天天摸人妻综合网| 亚洲久热| 色婷婷偷拍| 婷婷色情五月| 青青草国产亚洲精品久久| 欧美日韩成人在线网站| 曰日爽日日操| A片天天| 好吊操这里只有精品| 成人免费高清在线播放| AV操一操| 996热re视频精品视频这里| 天天日天天色| 99啪啪视频| 六月色丁香中文字幕| 婷婷五月激情综合| 91jiuseshunv| 天天五月情| 99热在这里只有精品| 特级操b片| 亚洲欧美一区二区三区爱爱动图 | 午夜大香蕉| 久久伊人婷婷| 91热在线| 久热中文字幕| 午夜激情综合| 激情综合五| 激情五月天啪啪| se.久久视频在线观看| 婷婷丁香综合| 日日夜夜亚洲一区| 91精品久久久久久综合五月天| wwwxxx五月婷婷小说| 色色射| 精品激情| 99视频精品| 色哟哟精品| 99热在线观看免费精品| 操人妻90p| 国产韩日亚洲美州欧亚综合在线| 免费播放片大片| 人人操AV| 搡BBBB搡BBB搡18| 国产这里只有精品| 婷婷久久综合久| 男女免费视频999| 婷婷五月天久久久| 激情五月,激情综合网| 五月欧美色色五月| 五月激情基地| 丁香五月六月激情久久| 欧美久久婷婷| 婷婷六月丁香欧美视频在线| 一起草性爱不卡视频| 欧美激情综合色丁香婷婷五月天| 99re这里只有精品视频6| 色婷婷五月天中文字幕| 青青热视频| 亚洲久热| 五月丁香亭亭成人电影| 亚洲婷婷五月草久| 69激情小说| 五月色丁香激情| 一级操逼内射在线视频| 五月婷婷五月天激情网| 久色资源网| 可以看的AV网站| 五月天激情网图片| 五月婷婷六月激情网| 五月天激情AAAA| 五月激情婷婷开心| 色色色9| 五月丁香综合影院| 先锋资源婷婷| 亚州操人在线视频| 成人美女网| 欧美日韩一区二区三区四区| 玖玖精品婷婷| 婷婷五月丁香基地在线视频官网| a69在线视频| 色婷婷色人人射| 色偷偷五月天| 欧美婷婷综合| 在线精品97| 婷婷激情五月天激情在线| 草操AV在线| 色婷婷狠狠18禁| 淫荡工a| 97久久精品| 青草视频在线观看视频| 婷婷社区五月天| 色五月成人婷婷| 97干资源在线观看| 婷婷深爱五月| 密乳视频| 九九自拍网| 日韩成人中文| 97久久超碰| 91精品综合久久久久久五月丁香| 一区二区你懂的| 亚洲综合五月天婷婷| A一级操| 婷婷五月美女直播| www.五月天| 专区无日本视频高清8| 大战熟女丰满人妻AV| 国产人妻人伦精品一区二区| 久久人人添人人爽添人人片αV | 91窝窝| 久久这里只有国产| 另类综合色| 五月婷婷六月色| 欧美日韩国产一区二区| 5月丁香婷婷| 伊人久久大香线蕉av一区| 乱精品一区字幕二区| 欧美色97| 5月婷婷激情网| 97碰| 五月婷天堂视频| av九九| 狠狠的日| 婷婷.com| 九九九九综合| 这里只有精品免费| 久久大香蕉同僚| 亚洲久久天堂| 亚洲第一色网站| 久久久大香蕉| 91视频久久久| 婷婷丁香色五月久久88| 国产伦亲子伦亲子视频观看| 色播六月| 色激情五月| 婷婷伊人綜合中文| 五月天全国最大成人网| 丁香五月天社区| 色琪琪一综合久久激情五月视频| 99视频网| 婷婷五月性感| 成人狠狠成人狠狠成人狠狠成人狠狠| 久99热| 亚洲综合成人网站| 六月丁AV| 五月天婷婷Av| www.人人操人人看人人想人人摸 人人人人操,COM | 久久丁香五月| 婷婷综合色| 99九无网码| 1024亚洲| 久久综合五月天| 中文av在线观看| 色婷视频| 婷婷丁香社区| 日韩小视频在线99| 曰本久久女| 99热情这里只有精品在线播放| 欧洲不卡视频| 丁香五月激情欧美| AV性爱网| 国产午夜精品一区二区| www.99日本| 99精品久久久久| 九月婷婷色色| 九九热av| 激情综合五月| 六月丁香射婷婷欧美色图片| 亚洲精品无人区| 思思综合热| 久久激丁香| 思思久久99热只有频精品66| BBWCUCKOLD精品熟妇| 日日噜噜久久婷婷五月天 | 久久综合干| 激情av| 深爱五月天| 色色色视频免费无码| 五月丁香成人| 激情综合网丁香| 天天色丁香| WWW99热| 大香蕉欧美在线| 色五月大| 在线观看免费狠狠色丁香香综合| 97在线观看| 久热网在线视频| 99色在线观看视频| 99久久激情视频| 六月丁香五月亭亭| 91九色PORNY中文啦| 99热偷拍| 开心五激情网| 久久天堂色| 艳妇野外情欲放荡HD| 五月天天久久香| 人橾人| 99精品免费视频| 9久久精品视频| 五月婷亚洲精品| 99无码超碰| 欧美性猛交 XXXX 乱大交| 天天狠狠色综合| 99re热在线视频观看| 婷婷丁香十月| 色停停五月天| 全亚洲最大的婷婷五月天网站COM| 最近中文字幕2019视频1| 九月婷婷综合八月丁香在线观看 | 人人玩人人橾| A片试看50分钟做受视频| 开心五月激情站| 成人免费在线电影| 色婷婷亚洲婷婷| 开心色五月天久久久久久久| 亚洲精品va| 成人视频免费观看高清完整版在线观看| 玖玖无码中文| 伊人色欲五月天| 成人在线网址| 视频1区2区| 99噜噜噜在线播放| 91玖玖| 九九热在线观看视频网站| 伊人激情网| 五月婷婷激情网| 五月天伊人网| 婷婷五月天另类网站| 久热欧美| 色五月中文网| 丁香五月色播中文在线播放| 大香AV| 免费日本aⅴ中文字幕 | 67194成I人在线观看线路1| 亚洲婷婷婷| 亚洲日本激情| 久久九九中文字幕| 一本色道久久综合狠狠躁一二三| 我爱大香蕉| 色哟哟精品| 99精品免费| 五月婷婷自拍视频| 日韩小视频在线99| 日本本土色网第一区| 9精品视频在线观看| 综合久久综合五月天婷婷| 激情五月婷婷| 99热成人| 久久a热| 五月婷婷大香蕉| 婷婷 伊人 久久| 婷婷涩涩五月天| 色99热| 五月丁香婷中文| 色五月婷婷开心| 亚洲中文无码成人| 色综合久久综合中文综合网| 成人片黄网站色大片免费毛片| 天堂A∨在线| 91人人操人人| 这里只有精品久久| 这里只有精品视频免费在线观看| 天天摸色吧天天摸色吧| 国产26uuu视频| 色婷婷丁香特级性爱视频| 丁香六月婷婷缴情欧美| 综合网色| 九月丁香| 五月天色色色网| 五月婷婷狠狠久久| 婷婷日本色| 九月婷婷激情久久| AV大片在线观看| 日韩成人影片在线观看| yw国产AV| 91n网站cad入口在线观看| 久久受www免费人成| AV成人在线网站| 97碰碰久久| 97成人丁香| 色综合网页| 亚洲久艹| 性爱网五月天| 九月丁香| www,婷婷五月天777me,com| 色色综合五月| 综合色播| 婷婷性爱网| 激情99| 91婷婷| 女人被躁到高潮嗷嗷叫小| 风流少妇A片一区二区蜜桃| 久久99大全| 中文字幕视频在线播放| 九九色综合网| 亚洲 25P| m色激情网| 开心五月六月婷婷| 日韩六十路91性交电影| 天天做 天天爱| 天天搞天天色综合| 色色色色色色色色色999| 人人草开心五月天| 五月天综合久久| 激情小说五月天| 亚洲深喉aV| 婷婷综合另类| 久久99这里只有精品| 六月婷婷狠狠色在线观看| 婷婷五月精品中文字幕| 亚洲天天操| 日日爽日日| 99热网精品| WWW.久久久久久久| 色情·com| 99热精品在这里| 婷婷成人五月天| www.婷婷.com| 中文字幕AV网址| 五月丁香六月婷婷网| 操人无码| 桃色五月婷婷| 色小说婷婷五月天天天| 五月婷婷网久久| 舔色婷婷| 黄桃AV无码免费一区二区三区| 日韩成人电泉AV| 伊人9草在线观看| 玖玖资源站国产| 婷婷五月丁香手机在线视频| 婷婷五月天电影网| 九九热狼人| 狠狠色噜噜狠狠色噜噜噜999| 日本的α片xxxwww| 99热精品99| 极品人妻VIDEOSSS人妻| 91在线视频综合| 婷婷丁香五月天色区| 丁香九月久久| 字母不卡码人逼| 五月色色网| 亚洲综合婷婷六月丁香五月| 天天色播| 玖玖精品婷婷| 这里只有精品久| 日本成人噜噜噜| 丰满老熟妇BBBBB搡BBB| 欧美色色色色色色| 甈你aaaaa| 五月天婷婷社区| 2018夜夜草| 99色在线视频| 色五月婷婷影院| 丁香深五月婷婷| 国产一区男女| 另类小说色婷婷| 99热热这里只精品996小说| 丁香五月在线观看综合| 丁香六月综合激情| 啪啪99| 日本色五月婷婷| 色婷婷中文| 久久与婷婷| 99热免| 啪啪 综合网| 欧美激情综合五月色丁香| 涩丁香| 97婷婷丁香五月天激情图片| 丁香六月婷婷久久综合| 色九九七七| 伊人天天色| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 奇米影视777在线_在线观看午夜_h小视频在线观看_岛国大片 | 51成人| 婷婷五月天美女21p| 激情五月婷婷综合秋霞| 五月天快乐开心激情网| 婷婷综合久久| 色视频2025| 久久久中文| 五月天无码| 97人人草| 99热日韩| 国产激情婷婷| 亚洲免费电影2| 丁香婷婷成人网站| 五月婷婷之综合激情在线| 亚洲色在线观看| 五月丁香婷婷伊人日韩| 色婷五月天网站| 影音先锋91网站在线观看| 婷婷激情五月天7| 开心激情婷婷| 五月丁香综合久久| 五月天丁香婷| 五月天色色色色色| 26UUU欧美激情一区二区| 精品99*| 成人色色视频| 狠干综合| 久re热视频| 99视频精品| 91碰碰碰| 国产伊人五月天| 天天爽天天操| 天天干天天色天天干| 国产毛片操B| 久久久久人妻精品| 久久99大全| 91ncm视频| 婷婷中文字幕| 激情婷婷在线中文字幕| 夜夜大香蕉婷婷丁香| 99九九精品视频| 久久婷婷成人综合色怡春院| 精品国产人人爱人人| 乱岳熟女50岁| 丁香婷婷成人在线播放| 五月婷综合| www.91在线观看| 激情欧美婷婷| 在线看片h站| 五月天婷婷视频| 91viP在线看| 少妇性按摩无码中文A片 | 99噜噜噜在线播放| 97色婷婷五月天| 丁香激情五月少妇| 九九99在线免费在线观看视频| 久久香蕉影院| 亚洲午夜成人av电影网| 亚洲天堂aaa| 操人无码| 久久激丁香| 婷婷五月综合社区| oumeisesewang| 97偷拍对白视频| 五月玖玖| 色色色欧美色色| 久久久久视剧HD| www.超碰在线| 啪啪六月婷婷| 九九五月天| 91色色色视频| 国产超碰在线| 婷婷五月天成人综合网| 啪啪操超碰| www婷婷色| 丁香五月激情啪| 岛国av电影网站| 九九大香蕉黄色影院| 色婷婷综合网| 五月天婷婷自拍图片在线观看| 欧美日韩国产一区二区| 五月丁香六月激情综合| 五月色网| 亚洲俩性性爱图片久久第六页| 91五月天| 思思热久久久在线| AA丁香综合激情| 日本操B片| 97av在线视频| 日良久久| 五月天婷婷人妻| 丁香五月第九色| 96精品久久久久久久久| 综合久久十| 91色噜噜狠狠狠狠色综合| 99热这里只有免费| 丁香久久AV| 99精品久久久| 冬月かえでAV无码播放| 777影视理论片大全在线观看| 五月激情综合网| 操日本人妻视频| 五月天婷五月天综合网在线观| 婷婷网影院| 色综合久网| 色香欲综合| 五月天激情啪啪| 婷婷五月综合网| 婷婷五月天在线综合导航| 天天综合五月| 黄页免费一级视频懂色| 亚洲成AV人片在线观看| 中文字幕成人| 色婷婷色99国产综合精品| 天天插,天天射| 久久激情五月网| 狠狠操天天操| 日韩成人无码人妻| 中文AV在线播放| 久久思思99| 丰满少妇猛烈A片免费看观看| 五月丁香综合激情| 影音先锋色婷婷| 五月婷在线| 五月天停婷基地| 99热国产这里只有精品| 婷婷播播五月天| 婷婷五月天成人导航| 99超级碰免费视频| 99久在线观看| 99re热在线观看| 婷婷五月综激情| 俺也去色| 99热18| 综合久久高清| 亚洲啪啪网| 久热69| 五月丁香婷婷色| 天天操B| 亚洲综合视频在线| 久色资源| www.夜夜操| 色一情一乱一伦一区二区三区| 色播五月| 欧美叉叉叉BBB网站| 香蕉久久国产AV一区二区| www99热| 婷婷婷婷婷婷婷婷婷婷丁香| 欧美怡红院黄站| 日韩av免费版| 99九九99九九九视频精品| 亚洲国产黄色电影| 亚洲激情五月| 亚洲综合色婷婷文学| 丁香五月玖玖| 五月丁香色停停啪啪啪| 人妻中文在线| 色五月在线观看| 任你爽视频| 来吧亚洲综合网| 97人人草| 久久日本wwww色| 99在线免费视频| 国产综合久久久777777| 色九亚洲| 久久婷婷五月综合| 色五月开心开心五月激情五月| 天天夜天天色天天| 五月激情婷婷在线| 色噜噜综合网| 色色五月婷婷| 99精品偷自拍| 月丁香久久久| 日本3级片偷拍网站| 天天肏天天肏天天肏| 中美日韩成人在线| 深爱丁香激情| 色色丁香激情五月| 天天天天干| 国产精品久久久久久久久久| 秋霞少妇AV网站| 人人操人人操919999| 综合五月草| 中文字幕色色色| 五月丁香香蕉| 激情小说五月天| 色很久综合| 五月天婷婷一起草| 丁香五月婷婷综合网| 婷婷久久精品| 婷婷五月色| 超级碰碰一区| 五月丁香色色综合| 色久五月天| 99热| 五月99久久| 一本久久亚洲五月婷婷| 色色色色av色色色色| 五月天激情图片| 午夜丁香久久久久久| 97色在线| 五月丁香亚洲婷婷| 五月丁香影视| 伊人色综合影院视频| 婷婷激情五月天在线| 欧美男女婷婷| 五月色情婷婷开心五月色情| 天天综合网亚洲网站| 九九色精品| 伊人五月天久久| 伦乱美欧| 五月久久婷婷| 97超级碰人人| 伊人91| 五月婷婷激情综合av| 大香蕉五月婷婷| 五月婷婷很很色| 激情五月第四色| 狠狠色五月天| 中文av网| 国产成人综合亚洲| 九九视频网| 在线色色| AA片在线观看视频在线播放| 操99| 成人电影在线免费试看| 激情久久伊人| 欧洲精品爱爱| 婷婷五月视屏| 香蕉AV777XXX色综合一区| 九九久久99| 日本婷婷丁香五月| 超碰成人电影| 国产精品色婷婷99久久精品| 欧美综合激情五月| 欧美成人精品三区综合A片| XX久久| 99久久6| 亚洲成人AV一区在线观看| 久久婷婷五月丁香| 99色色网| 天天做天天爱天天摸| 九九亚洲视频| 国产.亚洲.欧洲视频在线| 亚洲色婷婷视频| 激情五月天网| 婷婷六月色| 五月婷婷片| 男同色五月开心五月激情五月| 婷婷中文字幕版| 国产真实乱了老女人视频 | 大香蕉婷婷| 伊人综合色干| 99爱精品| 日本人人草草| 婷婷丁香激情综合色情| 婷婷不卡基地| 79色色| 超级碰碰99| 久久久久久久久久人妻| 美女被操一区二区| 婷婷开心综合人妻小说网址| www久久久久久久久久久| 久久一二三视频| 综合久久激情久久| 免费观看欧美成人AA片爱我多深 |