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

ARTICLE DETAIL

資訊詳情

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

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

基于JavaWeb的在線學(xué)習(xí)系統(tǒng)畢設(shè):源碼+數(shù)據(jù)庫+部署全攻略 簡(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ù)庫建表與初始化腳本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ā)與下載、公告與留言交互、資料庫維護(hù)等核心功能模塊配套說明文檔覆蓋環(huán)境配置JDKEclipseTomcat、數(shù)據(jù)庫導(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ù)庫腳本】(畢設(shè))可以看到這份項(xiàng)目的交付物包含了兩塊內(nèi)容完整的項(xiàng)目源碼和數(shù)據(jù)庫腳本。前者解決了核心業(yè)務(wù)代碼從哪來的問題后者解決了數(shù)據(jù)庫結(jié)構(gòu)怎么建的問題。這兩個(gè)東西恰好是畢設(shè)項(xiàng)目最容易卡殼的兩關(guān)——很多同學(xué)代碼寫到一半發(fā)現(xiàn)表結(jié)構(gòu)設(shè)計(jì)不合理或者數(shù)據(jù)庫腳本導(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ù)庫表結(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ù)庫設(shè)計(jì)與腳本實(shí)現(xiàn)2.1 核心表結(jié)構(gòu)設(shè)計(jì)詳解數(shù)據(jù)庫是整個(gè)在線學(xué)習(xí)系統(tǒng)的地基。表關(guān)系設(shè)計(jì)得是否合理直接決定后面寫 SQL 和業(yè)務(wù)代碼的時(shí)候是順手還是想罵人。這一套系統(tǒng)的數(shù)據(jù)庫腳本我建議你重點(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 加密后再入庫雖然 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ù)庫設(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ù)庫腳本中通常會(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ù)庫腳本的方式這是本次項(xiàng)目交付里最容易出問題的地方我單獨(dú)拿出來說。方式一IDEA 內(nèi)置數(shù)據(jù)庫工具導(dǎo)出打開 IDEA 右側(cè)的 Database 面板連接好 MySQL 數(shù)據(jù)庫后右鍵點(diǎn)擊你要導(dǎo)出的數(shù)據(jù)庫選擇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ù)庫 → 轉(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ù)庫驅(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ù)庫。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ù)庫就可能出大事。項(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 的依賴庫。如果發(fā)現(xiàn) JSP 文件里的紅色報(bào)錯(cuò)多半是缺少 Tomcat 庫的引用在 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ù)庫連接三步搞定打開項(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ù)庫密碼第一行驅(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ù)庫名要和導(dǎo)入腳本時(shí)創(chuàng)建的庫名完全一致后面那一長(zhǎng)串參數(shù)務(wù)必保留尤其是 characterEncodingutf8不帶它中文必亂碼。4.4 完整運(yùn)行流程清單首次運(yùn)行建議嚴(yán)格走一遍以下流程避免調(diào)試時(shí)像無頭蒼蠅一樣到處碰壁用 Navicat 或命令行創(chuàng)建數(shù)據(jù)庫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ù)庫密碼錯(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ù)庫腳本執(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ù)庫連接串、數(shù)據(jù)庫字符集全部設(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ù)庫腳本中的中文注釋導(dǎo)致導(dǎo)入中斷。用命令行 source 導(dǎo)入腳本時(shí)如果腳本文件不是 UTF-8 編碼或者數(shù)據(jù)庫連接字符集不對(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ù)庫表之間有哪些關(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ù)庫索引、連接池、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ù)庫腳本接下來的路只有一條打開 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
返回資訊列表
激情抓乳插进去啪啪啪日韩 | 日韩78m视频| 国产深喉视频一区二区| 91日日| 亚洲AV无码AV吞精久久久久| 天天干18禁| 精产国品一区二三产品| 色色五月婷| 国产丝袜欧美在线视频| 蜜臀久久99精品久久久久久成人小说 | 97精品在线| 天天天天干| 国产家庭乱伦性爱视频| 久久久久九九九| 亚洲丝袜制服国产91_国语字幕免费观看完整版下载第5集_ | 2020中文在线一区二区三区| 天天色天天干天天射| 97日韩| 黄站在线免费观看| 超碰 国产熟女精品一区| 欧美日韩m| 大香蕉免费中文| av日韩在线观看电影| 亚洲av综合伊人久久| 亚洲图片激情小说| 国产免费内射视频| 亚洲Av诱惑| 91超碰丝袜制服| 超碰人人干天天射| 99精品无码| 97精选久久| 天天激色| 欧美日韩美女精品久草一区二区三区| 情色五月天就去干| 天操天操夜操夜月月年年操操| 中文字日本乱码| 国产夫妻一区二区| 超碰性爱97| 丁香五月天婷婷姐| 台湾肥佬网一区二区三区| 日韩中文字幕av在线播放| 日本有码影片下载| 丝袜视频一区二区在线播放国产中文| 性性久久| www.91视频网| 国产粉嫩蜜臀av一区二区三区 | 五月天婷婷影院| 激情九月婷婷| 欧美 亚洲 另类 综合| 欧美中文狠| 亚州大图综合色图| 久热伊人| 免费在线看黄片av| 国产精品点击进入在线影院| 97av在线视频| 青青草视频导航官网| 99黄页网站| 成人一级二级| 91处女在线观看| 五月丁香黄色网| 26UUU欧美日本| 免费自拍三级综合| 自拍偷拍2025在线观看| 欧美78| 久久精品国产久精国产| 欧美日综合| 国产一级舔足在线观看| 男人的天堂2010| 偷窥自拍亚洲色图| 91精品婷婷国产综合久久| 亚州性色| 精品国产一区二区三区四区在线看 | 强奸乱伦动态污图免费| 夜夜爽爽爽| 黄色成品网站| 欧美高清91| 国产91福利小视频在线观看| 艳尻美人妻| 国产精品第一页国产大屁股视频免费区i| 国产一区二区三区,在线观看观看| 夜夜爽夜夜摸夜夜操免费视频| 国产丝袜啪啪| 日韩亚洲中文有码视频| 天美传媒在线一区| 五月丁香| 亚州欧美一区| 国产免费黄色一级大片| 大香蕉黄色一区| 99热这里只有精| 中国熟女网站| 亚洲精品xxx| 五月婷婷色| 色九九九综合| 久久婷婷电影网| 日韩AV无码中文一区二区| 97玖玖超碰| 亚洲欧美变态| 欧美一级黄片免费播放| 国产少妇高潮| 一级性爱视频免费观看| 久久蜜桃综合网| 97欧美综合| 色九区| 久草精品一区| 静品嫩模一区二区| 中国熟女91| 亚洲二区精品在线观看| 欧美亚洲se91| 嫩草一区二区在线观看| 久久久草草精品| 中文字幕黄片在线| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 亚洲自拍欧美色综合| 综合伊人网12色| 91人妻爽爽人人做人人澡| 欧美综合色图网| 亚洲无码一二三区| 亚洲青青草| 少妇xx精品| 青青草字幕AV| 久久久久久久亚洲Av无码| 91视频成人福利网站在线一区| 大逼色网站| 午夜免费福利视频一区| 国产成人亚洲精品无| 人妻少妇色综合| 伊人久大| 人人喜人人妻| 日B操| 丝袜喷水在线| 国产91啪| 色欧洲| 日本 欧美 亚中文字幕| 欧美色图20p| 超AV色女| 肏逼福利网站| 精品97久久综合| 两性色网| 99热在线只有精品| 亚州人妻| 亚洲国产成人精品无码专区| 日产精品久久久一区二区| 色五月综合网| 91精品国产91久久青草| 学生妹天天看| 婷婷五月av| 无遮挡男女激烈动态图| 欧美在线视频播放| 午夜大香蕉| 欧美一区二区男人天堂| 99精品人人爽| 九九黄色网| 日韩操啪| 久久女女| 亚洲欧美日韩国产丝袜自拍中文| 中文自拍欧美影视| 操操操五月天婷婷丁香影院| 欧美人妖内射| 99黄页网站| 91国产精品在线看| 天天干夜夜一操| 美女9118禁| 欧美情色男人的天堂| 日日碰狠狠添天天爽超| 高清国产无码av| 日本久久久久久久久久| 97精品国产手机| 中文字幕 国产 精品| 亚洲色婷婷久久久综合日本| 啊啊啊啊啊好舒服视频| 91xingse| 国模精品一区二区三区苹果色戒| 五月天我淫我色av| 欧美亚洲中文| 欧美啪啪天堂| 综合天天。| 久久嫩草国产成人一区| 日本三级韩三级99久久| 久草福利在线资源站| 国产兽交视频在线播放| 99999久久精| 日本黄页视频在线观看| 亚洲免费97免费| 色婷五月天| 国产一区二区a毛片| 91操熟女| 欧美乱欲| 人妻欧美| 色欲av国内精品久久久久久| 日日骚网站| 国产吹潮女在线观看| 青青草十区九区爱夜| 99热免费| 久久、1234| 美日韩一卡二卡三卡免费人妻精品| 91丨九色丨东北熟女| 免费一级a毛片久久久久久鸭绿欲| 国产精品97视频| 嫩草 我啊~嗯~在线| 色制服丝袜夫妻av一区| 91九九九逼| 内射中出日韩在线观看视频| 又大又黄国产| 亚洲另类久操网| 加勒比无码一区二区三区| 国产精品亚洲一区二区三区四区| 国产又粗又长又爽又色| 强奸乱伦Av网| 久久久久久国产手机AV| 手机在线中文字幕国产| 久久国产免费激情视频| 国产三级日产三级韩国三级| ?亚洲伊人伊成久久人综合网| 日韩黄片视频试看| 中文字幕久热视频在线| 国产一级αv免费看片| 久久人人爽人人爽人人片Ⅴ| 激情综合五| 亚州色图第三区| 天天综合网国产| 综合网欧美在线| 国产欧美日韩在线观看麻豆传媒公司| 久热伊人99re| 亚洲精品欧美专业| 国产偷人妻精品一区二区在线| 91总综合网| 97精品中文字幕| 亚洲 中文 欧美 日韩 在线| 无套后入双马尾| av天堂电影网| 国产中文字幕在线点播| AA特级绝黄| 亚洲婷婷五月天| 91色欧美| 天天插夜夜操| 99爱在线视频| 97超碰热线| 亚洲做性| 亚洲欧洲日本精品中文a∨| .精品人妻一区二区三| 国产精品久久99日日| 欧美成人黄网色网站| 人妻久久久久久| 日韩精彩免费| 日本97久久| 97久久超碰| 无码操逼网| 亚洲春色激情小说| 国产精品夜夜夜| 亚洲色图综合| 九九热精品| 欧美亚洲国产自久久| 九九九九免费高| 舔足天天操天天射| 精品一区二区在线针对华人免费观看这里只有精品免费观看 | 91三级理论片播放器| 丁香成人五月天| 色av中文字幕| 26uuu偷拍亚洲欧洲综合| 黄色av一区二区在线| 日韩中文字幕熟妇人妻| 4tube欧美女厕所| 色就色综合| 久久久久久亚洲精品不卡人乳| 欧美激情一区二区| 亚洲日韩在线a不卡99精品| 大伊香蕉在线视频免费| 天美传媒在线一区| 一级性爱视频免费观看 | 婷婷激情五月| 亚洲 无码 有码 中文字幕| 欧美日韩午夜精品一区二区三区 | 97精品一区| 国产无码高清操逼视频| 日韩一区二区精品视频| 国产精品69久久久久久久 | 欧美91精彩| 欧美高清无码免费视频高清版| 国产亚洲精品第一最新| 免费亚洲国产精品久久一区| 国产91av在线播放| 亚洲区限制级| 殴美性色a级欧美| 中文字幕无码不卡啪啪| 日韩人妻一区二区精品| 欧美日本视频一区| 久久精品性| 久久超碰av在线| 国产精品麻豆免费视频| av操操不卡| 91精品人妻一区二区三区蜜桃| 爱av免费| 男人天堂新| 久久精品性| 国产精彩女在线观看视频| 国产精品毛片?v一区二区三区| 久热色情精品| 9色国产精品一区粉嫩| 99无码视频| 啊v在线观看视频| 五月色综合| 久久精品国产亚洲av水密被窝| 自拍偷拍2025在线观看| 丝袜美腿丝袜| 国产欧美伊人| www熟女乱伦com| 欧美一区二区传媒| 久操网址| 国产又粗又长又大的视频| 欧美视频中文字幕区| 四虎影视永久在线观看精品免费网站 | 探花精品视频| 久久久久夜夜夜夜| 亚洲激情 欧美色图| 人人做,人人操,人人摸| 九一性生活免费视频| 国产午夜激片Av毛片不卡| 免费国产| 后入 亚洲 美女 射| 曰韩人妻中文字幕在线| 国产乱不卡| 97日本超碰综合| 中文字幕日韩精品久久| 久草免费在线视频| 一牛一区二区三区久久| 国产日本久久免费精品| 精品78| 亚洲爱爱视频一区二区| 色色综合网站| 51久久夜色精品国产麻豆| 内射中国少妇高清视频免费视频| 五月丁香大香蕉| 国产精品 视频| 2017大香蕉国产精品久久| 中文自拍欧美影视| 国产精品美女久久久久久网站| 少妇人妻精品| 操碰97| 色娱乐色呦呦夜夜夜夜av| 久久超碰网| 亚洲精品一区二区三区在线播放| 久久亚洲一区二区色婷婷| 射综合网| 99re在线观看| 天无日色综合| 午夜精品久久久久久久99蜜桃一| 啊啊啊好多水| 中出欧美| 熟妇女伦乱视频视频| 伊人青青一区成人视频在线观看区| 日本三级一区二区 在线| 九九九九热只有精品| 麻豆AV96熟妇人妻| 黑操B| 国产精品岛国片在线观看| 国产又黄又爽| 97欧美日韩精品| 四虎884a| 91夜色chaopeng| 蜜乳av首页| 中国一级特黄大片护士| 精品视频一区二区| 夜夜欢天天干| 精品视频一区二区| 97精品一区| 日本九九久久99| 天天插天天舔舔天天干| 久妇网| 激情六月婷婷| 噜噜在线| 日韩有码免费视频| 狼天天狼天天大香蕉| 欧美丰满熟妇XXXX性ppX人交| 小日子操bb在线看| 国产成人综合在线播放| 国产中文字幕在线点播| 黄色大片免费在线| 人人贴人人摸| 操逼操逼视频操逼| 国产精品999zyz| 十八禁av无码免费网站APP| 国产粉嫩蜜臀av一区二区三区 | 性色av大全| 男女一进一出视频久久| 加勒比海色香蕉婷婷| 狠狠入| 97亚洲色图| 俺去啦自拍| 死我十八禁| 久久综合中文国产| AV天堂丝袜| 中文久久一区| 欧洲自拍色图gif在线| 97在线观视频免费观看| AA级电影三区| 国产家庭乱伦性爱视频| 黄色电影观看久久9| 极品美女福利在线观看| 亚洲熟女av日韩熟女| 青青草丝袜在线视频| www.超碰在线| 亚洲国产一区二区三区在线| 97超碰巨乳| 色香综合天天影视综合 | 猛交交| 国产日韩精品一区二区三区| 天天摸夜夜操视频| 国语精品av| 亚洲欧美日韩激情不卡| .精品人妻一区二区三| 一本一道波多野毛片中文在线| 欧美性巨大╳╳╳╳╳高跟鞋| 屁屁影院一区二区三区国产 | 99999久久精| 国产在线播放成人免费| 国产精品一区二区三区,亚洲综合 性开放中文AV高清无码免费看 | 欧美日本一区二区a人| 五月婷婷爱六月丁香色| 91人妻视频在线| 91影视亚洲| 东京太热男人的天堂久久久| 午夜精品久久久久久久久久蜜桃| 大香蕉一线视频| 口爆综合网| 欧美色日本| 狠狠色五月亚洲91| 国产精品视频自拍在线| 久久九九99| 好舒服视频| 日韩猛交| 欧美成人黄网色网站| 亚洲欧美天堂在线| 91精品国产91熟女| 欧美操逼熟女| 91高跟美女在线播放| 亚洲人妻久久久| 自拍偷拍国产欧美日韩韩| 日本99热| 亚洲人综合| 日本在线观看网址| 口爆综合网| 亚洲AV在线资源| 精品人妻一区二区三区四区石在线| 五月天婷精品激情| 亚洲黄色网址| 九九视频黄色片| www.色婷婷| 欧美最大综合网| 无码不卡八戒| 丝袜熟女2P| 99少妇内射| av日韩在线观看电影| 美女的肌被草喷水视频| 久久99热这里只频精品6学生| 9 7超碰在线免费观看| 欧美综合网在线| 日韩婷婷| 久久岛国| 麻豆天美国美国产AV| 啊啊啊水好多| 91蜜桃婷婷狠狠久久综合9色| 天天综合网AV91| 中文字幕第9页萱萱影音先锋| 口爆综合网| 天天综合网在线91| 亚洲色色色| 风韵犹存大大大大香蕉| 蜜桃视频精品一区二区| 精品亚洲| 久久视网78| 伊人五月天婷婷| 99re8超碰| 性色av大全| 亚洲熟妇熟在线电影视频| 国产高清视频无码在线| 亚洲揄拍网| 国产99精品一区二区三区免费| 熟女自慰久久久| 日韩黄片影院| 天天情欲宗合网| 92人人操人人| 97免费在线观看| 亚洲色图激情小说| 豆花视频操逼网址 | 亚洲一区二区三区在线激情| 欧美色图偷拍另类| av天堂天堂av日韩| 老熟女综合网 | 日本一级真人黄色性爱视频| 有码人妻系列| 精品中文字幕一区二区l - 百度| 少妇贴图| 天天弄欧美| 久草国产在线视频| 91亚洲网站| 大香蕉 222| 强奸乱伦亚洲第一页| 97超碰欧美手机在线| 91蜜桃婷婷狠狠久久综合9色| 国产99999| 伊人国产视频| 99视频内射三四| 一个色导综合| 天天舔日美女视频| 99re69综合| 激情专区综合| 精品国产91av一区二区三区| 欧美 色 亚洲| 性爱AV天堂| 蜜桃臀av在线观看| 一区二区三区探花在线观看| 偷拍盗拍亚洲色图图片| 韩国国产欧美情侣视频在线| 激情丁香五月| 一级久久久久久久久久久| 超碰97 线线 在现| 亚洲色综网| 好爽,再快点啊哈嗯嗯嗯嗯| 秋霞免费AV| 波多野结衣之双飞调教在线播放 | 韩国轻伦国内自拍一区| 日韩人妻播放| 久久丁香久草综合网| 中出91视频| 欧美亚洲美少妇一区二区| 99热在线观看| 99热在线观看| 日韩精品中文字幕一| 搡老女人911熟妇老熟女| 蜜桃午夜视频一区二区| 天天操人人操骚逼网站| 国产一区二区三区不卡手机在线| www五月| 日韩精品人妻一| 老司机午夜精品视频| 亚洲精品电影| 国产丁香精品露脸视频| 欧美在线 亚洲| 成人综合网 欧美| 久操黄色视频| 亚洲一区二区麻豆影院| 亚洲福利中文字幕在线| 无码日韩人妻av一| 在线播放免费av福利片| 人人人摸人人| 日本乱人伦片中文三区| 毛片一区二区| 欧美日韩在线小说 | 亚洲天堂在线怕怕视频| 亚洲欧美天堂| 人妻少妇久久中文字幕一区二区 麻豆| 91亚洲狠狠色| 极品少妇久久久久| 东京太热男人的天堂久久久| 超碰色97| 啊啊啊啊啊啊啊啊在线观看| 好属操| 国产精品96| 免费观看一区| 日本国产欧美一区三区二区| 午夜男女爽爽爽影院视频| 88xx成人精品视频| 日韩性爱人人爱人人操| 一区二区三区黄片免费观看| 国产熟女免费观看久久| 偷看洗澡一二三区美女| 国内精品久久久久影院亚洲| 伊人99热| 欧美色图亚洲色图成人在在线| 久久综合乱子伦国产免费| 日日日啊啊啊| 亚州色阁| 亚洲精品黄码久久久久| 九九九免费视频| 国产AAAAAABBBBB| 国产美女裸体秘 永久无遮挡| 岛国片在线播放| 国产三级多多影院2022国产AA一级毛片无码 | 一起草三级AV电影在线观看 | 国精综合一二三区影视| 久操av在线| 久久午夜神马| 久久久久久99AV无码免费网站| 亚洲一区二区三区中文字幕| 97精品国产精品免费观看| 96久久久精品| 亚洲激情视频| 成全在线观看免费观看| 日本欧美国内在线| 欧洲中文字幕| 亚洲AV色图一区| 国产一级高清免费观看| 强奸乱伦Av网| 亚洲天堂色图| 久久久一区二区| 国产精品操| 国产综合网站在线播放| 国产av尤物| www被窝色com| 试看60秒 爽| AV污污污污| 四虎影视在线| 91无码人妻精品一区二区三区蜜桃 | 国产高清免费不卡av| 五月丁香啪| 婷婷五月天无码| 欧美在线啊啊| 国产真实野战在线视频| 人妻密肉在线观看| 欧美热图99| 岛国色情视频在线观看| 色综合一区二区三巨| 97国产精品久久久久| 日本操逼aaaaa| 99精品在线播放| 超碰久在线天天做| 91伊人久| 亚洲熟妇丝袜在线观看| 肥臀熟女一区二区三区视频| 国产99精品一区二区三区免费| 中文字幕日韩综合| 亚洲精品九九九九九九| 中文字幕日韩人妻视频一区二区三区| www.欧精品| 大香蕉人妻久久| 国产亚洲日本精品在线| 素颜老阿姨乱情色| 18禁在线视频| 中文字幕丝袜美腿| 伊人加勒比| 9+1视频网址| 亚洲干B| 韩国三级理论在线| 综合97久久| 操逼1区| 97一本大道亚洲一区| 欧美精品久久久久久久丰满| 人妻在线臀日韩| 久久人| 狠狠干狠狠干| 人妻少妇精品| 夜夜夜久久| 亚洲自拍偷拍视频在线| 亚洲精品久久久久久久久豆丁网| 超碰免费人妻在线| 999日韩中文精品观看视频。| 国产精品一区二区密臀| 色婷婷电影网| 蜜桃狠狠色伊人亚洲综合网站| 激情久久久| 青娱乐黄色录像| 丰满人妻-区二区三区免费| 999精品乱码| 伊色综合天堂色97| 欧美性爱精品七区| 欧美一二在线| 婷婷丁香五月天综合东京热| 超碰综合97在线| 狠狠激情综合狠狠操中文字幕| 天天搞欧美| 亚洲成人综合在线| 亚洲色综合| 啊啊啊啊啊在线视频| 国产精品嫩草久久久久| 亚洲色图第四色| 婷婷丁香五月激情啪啪| 亚洲天堂男人天堂网| 91色黑人少妇| 性色av蜜臀av色欲aV| 欧美日本视频一区| 男人的天堂啪啪| 亚洲**2021在线观看| 亚洲日韩欧美一区二区| 97在线精品| 欧美亚洲自拍另类人妻| 中国的操老妇女| 六月天婷婷| 人人操,人人插| 久久久久久中文| 亚洲熟妇图片| 婷婷激情五月天小说网| 午夜在线播放| 亚洲素人网| 久久草草欧美精品| 思思热er精品视频| 91丨人妻丨国产丨丝袜| 97精品中文字幕| 91亚洲人电影| 亚洲成人美女无吗| 欧美Ⅴ性爱| 欧美久久人体| 国产精品久久久777| 久久曰曰| 国产亚洲美日韩Aⅴ中文字幕无码成人| 男人的天堂kva| 国产农村妇女精品1区二区| 亚欧韩av| 8x福利精品第一福利视频导航| 自拍啪啪视频| 1区2区3区中文字幕日韩| 色婷婷综合视频| www亚洲免费| 好属操| 亚洲综人| 97色涩| 色婷婷aV一区二区三区麻豆综合| 国产树林里野战在线看| 波多野结衣AV无码一区| 精品一区二区三区麻豆| 亚洲综合色在线| 色九九九九| 久久精品人体| 丁香六月激情| 欧美亚洲中文字幕| 黄色AAAAA欧美| 乱伦熟女论坛| 91丝袜| 麻豆一区二区AV天美| AV中文字幕剧情1区2区3| 91亚洲青青草原精品1区| 婷婷大香蕉| av天堂手机版追回| 福利伊人玖玖国产| 五月婷婷六月丁香网址| 美国日韩黄片| 精品人妻中文字幕高清| 9丨久久九九九| 夜夜久久久| 好湿好紧视频| 国产嫩草精品A88AV| 亚洲AV色图一区| 中国黄色特级精品一区二区三区片| 大香伊人在线一区| 欧美激情超碰777| 久久久久国产亚洲一区欧美色图日韩 | www超碰| 91站街按摩店老熟女熟女| 九九探花视频在线观看| 强奸乱伦资源| 国产真实野战在线视频| 亚洲最大AV网| 九色婷婷| 爽爽淫人网| 亚洲 欧美 91| 最新一二三区视频| 97人人爱人人做人人乐| 欧美大香蕉97| 欧美中文狠| 1024午夜激情男人的天堂| 色综合超碰超| 男人的天堂三级| 国产又粗又长又大的视频| 人妻娇喘 激情视频| 另类欧美色| 免费操逼91| 五十路六十路素人熟女| 日韩国产成人自拍视频| 91粉嫩萝控精品福利网站_精品影音先锋国 | 丰满人妻一区| 东京热,男人的天堂| 伊人网高清| 国产精品视频91久久| 久久91精品国产9丨久久分亭| 在线看片国产精品每日更新| 中国探花熟女| 亚洲日产专区| 1204av韩国| 婷婷五月天色网| 国产乱子伦一区二区三区在线观看| 国产精品午夜AV完会免费| 国产亚洲深夜激情| 国产懂色精品国产av| 日本天天操| 最新亚洲风情电影| 中文字幕第95页| 试看60秒 爽| 亚洲欧美综合区自拍另类| 99色色网| 久久久久9999妇女| 漂亮人妻被强中文字幕hd| 精品免费视频国产一区| 超碰成人最新最好看| 夂久色| 日日日大屁股骚女人精品| 九九九九九九九九九国产精品 | 九九内射在线| 久久久久9| 97狠狠| 九九久久一区二区伦理| 91原创在线观看| 久久视频,这里只有精品 | 久久久久久久久久久久久久久乱码 | TS人妖另类精品视频系列| 无码高清专| 亚洲色偷偷色噜噜狠狠99网| 91人妻久久久久久久久久久久久| 超碰欧美97| 性爱乱伦网址| 夜夜久久| 少妇久久久| 色五月丁香五月| 97精品久久久久中文字幕| 精品黄色电影| 国模精品一区二区三区苹果色戒 | 97超碰影音| 久久美女国产| 中文字幕丝袜人妻| 青娱乐91| 操操碰| 日本97久久| 99久久婷婷丁香| 1234区中文字幕在线观看_青青草国产在线_日韩一区二区 | 美女超碰978| 亚洲天堂一二| 亚洲精品亚洲人成在线麻豆| SS久久| 日本中文熟女视频| 野狼激情网| 97在线视频网站| 秋霞视频一区二区| 超碰在线综合97| 高清无码 国产精品| 欧美熟女妇同| 日韩精品一区二区高清| 天堂日本亚洲欧美| 操逼网站网站| 一区二区三区四区五区高清无码永久视频 | 97国产精品视频| 精品一区二区三区蜜桃臀赵总| 黄色成年| 色久综合| 91亚洲综合在线| 青草视频在线看看看看看看看看看| 久操电影网| 极品极品色影院| 欧美另类丝袜熟女| 99精品网| 91色狼| 亚洲国产剧情少妇激情| 久久国产AⅤ| 在线视频一区二区传媒| 中文字幕乱码人妻二区三区| 欧美日韩精品久久| 啪啪视频亚洲第一| 精吧天堂| 国产自偷自拍一区| 酒色综合网| 日韩在线AB| 超碰国产精品无码| 欧美人人天天网| 亚洲午夜福利在线影院| 人妻无码一区二区三区久久99| 日韩一区二区三区四区五区| 亚洲春色欧美| 夜夜操天| 国产三级在线现体验区| 日日骚精品视频| 亚洲一二三| 丝袜综合| 日韩无码视频黄色| 伊人国产视频| 亚州欧美另类| 久操九九九九| 日韩熟女乱伦中出| 国产超碰欧美| www.狠狠干.coom| 黄片qw| 久久r精品| 青青11操操操操操操操操| 亚洲高清无毛一区二区| 91N综合网在线| 激情综合五月| 一个国产在线综合网站| 欧美图片校园春色| 日韩天堂av电影在线观看| 久久riav中文精品| 不卡视频一区蜜桃视频| 色婷婷婷五月天激情四射| 欧美日韩国内不卡| 可免费观看的av毛片中日美韩| 欧美视频激情久久久久久| 综合激情五月天| 秋霞成人做爱| 美女9118禁| 无码久| 91爽啪| 亚洲美女自拍偷拍视频| 熟妇乱伦一区二区| 污电影在线观看| 日本三级日本三级三级人妇四虎| 看日韩操逼| 亚洲AV无码乱码| 少妇熟女一区二区三区| 91国产美女丝袜足交精品视频| 婷婷丁香久久| 日韩人妻播放| 日韩欧洲操屄视频| 亚洲男人的天堂va亚洲男人社| 日韩人妻精品中文字幕| 色蜜AV| 午夜男人一级A片7777| 蜜臀AV秘一区翔田千里| 天天综合网在线观看| 欧美综合777| 啊灬快c我灬啊灬用力灬啊灬-国产精品性做久久久久久-成人AV | 欧美一级久久久久久久大片动画| 欧美精品97| 欧美图片校园春色| 内射黑丝袜| 99精品伊人| 久久av色| 校园春色亚洲欧洲| 天天综合~91入口| 日本黄 R色 成 人网站| 婷婷激情五月天小说网| 午夜超爽| 亚洲图片激情综合另类| 国产精品黑人一区二区三区| 亚洲在线a| 2017天天插| 美女9118禁| 深夜视频| 超碰色97| 国产成人精品网站| 99在线精品观看视频中文| 综合情欲网| 精品成人久久久人人亚洲| 少妇精品久久久八区九区| 嗯嗯啊啊的视频| 激情婷婷丁香| 亚洲影视第一页| 欧美最婬乱婬爆婬牲视频| 黄色一区三区| 91色伦| 亚洲成人AB| 99999久久精| 亚欧美色| 97超碰碰| 強姦亂倫a| 国产亚洲日韩在线三区黑人| 无码WWW免费视频网站| 日本色色色色色视频| av婷婷色婷婷色六月| www狠狠| 国产伦精品一区二区三区视频女| 91久久久久免| 一区二区三区网站日日骚| 日韩少妇丰满亚洲| 97亚洲欧美日韩| 91碰碰| 男女国产精品| 青青操网| 日韩欧美综合激情| 国产精品老师| 91精品国产综合久久久蜜臀| 日本999精品视频| 久草精品一区 | 99精品在线播放| 亚洲有码 欧美精品| 欧美18禁91| 亚洲欧美日韩电影网站一区 | 高清无码91| 蜜臀久久99精品久久久久久无删减| 国产女同在线观看视频| 亚洲一级性爱视频免费看| 干婷婷综合网| 在线观看AV不卡| 曰本91情色| 亚91网| 国产无马在线| 秋霞曰韩R级| 国产青一二三| 欧亚日韩综合精品国产| 久久岛国| 国产精品亚洲高清在线| 国产67194| 久久亚洲不卡一区二区三区| 亚洲AV色图一区| 97在线免费视频| 日韩人妻 中文字幕| 老色69| 91成人久久| 欧美久久伊人| 99无码| 男人的天堂在线| 五十路一区无码| 久久综合资源一区二区| 丰满人妻一区二区三区| 2017大香蕉国产精品久久| 欧美少妇高潮视频| 另类小说综合网| 五月婷婷深深爱| 亚州色阁| 亚洲无码精品AV久久久| 亚洲高清无码免费观看视频| 天天弄欧美| 青草一区二区| 精品在线观看视频在线| 中文字幕55555| 老鸭窝成人免费毛片视频| 午夜福利精品| 五十路熟女工口 | 亚洲一区中文精品| 激情五月激情综合网| 1024午夜激情男人的天堂| 五月丁香黄色网| 色婷婷电影网| 亚洲影视高清第一页| 亚洲无码成人精品| 四虎永久在线精品免费网址| 综合五月天| 精品一区二区人妖| 亚洲欧洲日产国产综合网| 97超碰超碰| 天天日天天色| 99热这里只有精品1| 大香蕉专区| 欧美97在线观看| 美国日韩黄片| 精精夜夜| 欧美色宗合| 亚洲日本成人动漫| 97视频播放| 大香蕉丝袜一级片| 欧美亚洲韩国视频十五区 | 亚洲精品蜜桃久久久| 一级久久久久久久久久久| 人人噜夜夜操| 天堂а√在线最新版在线| 日本丝袜美腿人妻九九| 少妇综合网| 91九久| 精品99999| 伊色综合天堂色97| 九九碰九九爱97超| 欧美性特| 久久久久九九九| 91精品成人www| 蜜臀久久99精品久久久久| 吻戏激情性巴克| 精品久| 免费看污网站| 少妇熟女1区2区3区| 75大香蕉| 超碰人人操97碰| 九九九九免费高| 免费A V在线播放| 一区二区三区四区五区久久久久久| 五月天丁香婷婷综合网站| 视频二区熟女人妻| 爱我干综合| 三级色影综合网| 欧美嗯啊……在线观看视频免费| 亚洲av成人精品一区| 成人老鸭窝人人在线视频| 日本欧美韩国国产在线| 免费亚洲国产精品久久一区| 人人做人人妻人人夜视频| 亚洲色婷婷综合久久一区二区三区| 操逼日韩无码 | 神马午夜久久久| www.91理论| 91中出在线| 野狼激情网| 波多野结衣一级视频| 亚洲AV色图一区| 成人婷婷丁香| 色婷婷六月丁香七月婷婷| 99久久9| 婷婷五月天激情网| 国产9 9在线 | 亚洲| 色眯眯av| 精品久久久无码| 国产欧美日韩一区二区三区| 青青草AV色| 四虎AV无码| 亚洲一区二区三区欧美日韩| 天美传媒AV在线| 国产美女激情| 久久久久久人妻| 国产91av在线播放| 99热在线只有精品| 久久国产精品,久久国产| 在线观看黄色电话| 免费岛国一级片| 欧美淫乱视频| 日本一二三高清| 影音先锋国产精品| 日本三级A片网站com| 久久久一区二区三区麻豆| 中文字幕制服欧美久久一区| 午夜欧美女人操逼| a片久久久久久久久久久久| 视频黄站| 色婷婷综合久久中文字幕雪峰| 国产情侣自拍在线播放| 乱伦日本中文自拍| 天天天干977| 亚洲人久久久网| 色综合中文字幕不卡| 麻豆国产免费影片| 日韩操逼性鲍| 操人妻视频| 日本 情色 1区2区3区| 亚洲A色| 91碰碰| 中文字幕成人理论在线| 天天爽夜夜爽夜夜爽精| 少妇熟女一区二区三区| 色香欲天天天天综合色| 久久亚洲天天做| 在线观看十八禁| 色综合色色| 熟妇操花| 精品一区二区综合熟妇| 免费视频在线一区二区不卡| 97网色| 99re99在线视频| 超碰伊人在线| 日日夜夜青青草母狗| 人人爱夜夜爱| 欧美综合骚| 超踫中文字幕| 9色在线| 十八禁啪啦拍视频无遮挡| 天堂无码精品国产久| 亚川综合视频| 亚洲国产精品成人综合| J?P?NESEHD熟女熟妇伦| 屁股久久久久久| 欧美黄业| 人妻丝袜一区二区三区在线| 91青青| 99热一区二区三区四区| 九九九偷拍| 小电影欧美91| 精品在线78| 97美日韩视频| 99999亚洲| 97免费在线观看| 亚洲AV无码乱码| 亚洲高清视频在线免费观看| 色图综合网| 91福利网在线观看| 另类图片欧美激情综合| 日韩欧美操逼xxx| 强奸乱伦免费网站| WWW啪啪的com| 一起草日韩| 欧美东京热精品A∨| 日本一级性爱| 欧美日韩99| 亚洲情色第一页| 亚洲熟妇乱女区二区三区| 久久人妻| 日韩免费中文字幕视频| 操操操五月天婷婷丁香影院| 收看日本人日bb| 老熟妇一区二区三区…| 人人操人人大香蕉|