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

ARTICLE DETAIL

資訊詳情

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

JavaWeb房屋租賃管理系統(tǒng)源碼解析:Servlet+JSP+MySQL實戰(zhàn)

JavaWeb房屋租賃管理系統(tǒng)源碼解析:Servlet+JSP+MySQL實戰(zhàn) 簡介一套基于Servlet、JSP與MySQL構建的房屋租賃管理系統(tǒng)源碼面向高校JavaWeb課程設計、畢業(yè)設計及自學開發(fā)者覆蓋房源信息、租客資料、租賃合同等典型業(yè)務模塊能幫助讀者快速搭建一個可運行的Web管理項目。壓縮包共1796個文件大小約10.06MB核心包括java業(yè)務源碼、jsp動態(tài)頁面、編譯后class文件及sql數(shù)據(jù)庫腳本同時附帶png界面圖片、css樣式和Eclipse工程配置.classpath、.project結構劃分清晰便于按類型檢索。系統(tǒng)經(jīng)過多輪嚴謹測試運行穩(wěn)定目前已有3127人學習下載。項目中包含登錄、房源發(fā)布、租約記錄等功能模塊可結合web.xml部署描述符與過濾器配置理解請求路由過程研讀完整源碼還能掌握sql腳本導入、Servlet與JSP數(shù)據(jù)交互、MySQL持久化實現(xiàn)的完整鏈路為獨立開發(fā)同類管理系統(tǒng)提供扎實參考。1. JavaWeb房屋租賃管理系統(tǒng)源碼為什么它值得當作 JavaWeb 的練手樣本以 Servlet JSP MySQL 為技術棧的房屋租賃管理系統(tǒng)是 JavaWeb 課程設計和畢業(yè)設計里出現(xiàn)頻率最高的項目類型之一。它不新、不花哨但把 JavaWeb 最核心的動作都覆蓋到了Servlet 接收請求、JDBC 操作 MySQL、JSP 渲染頁面、Session 管登錄權限、連接池扛并發(fā)。對正在選題或要交課設的同學來說它比圖書管理系統(tǒng)業(yè)務更完整比 SSM/SpringBoot 項目更容易講清楚原理跑通后還扛得住答辯追問。對想補 JavaWeb 底子的開發(fā)者也一樣順著房屋租賃的業(yè)務流去讀源碼一個請求從瀏覽器到數(shù)據(jù)庫再回到頁面整條鏈路比看十集教程都直觀。下面按選型、設計、運行、排錯、改造的順序把這一套完整拆開。2. 選型拆解Servlet JSP MySQL 這套組合為什么到今天還在被用2.1 Servlet 的控制器角色先看生命周期再看單例陷阱拿到一套 ServletJSP 源碼第一步要看包結構。規(guī)整的源碼通常是 controller、dao、entity、util、filter 五個包實體類對應表DAO 負責 SQLServlet 做參數(shù)接收和頁面跳轉(zhuǎn)Filter 統(tǒng)一處理編碼和登錄狀態(tài)。如果打開壓縮包發(fā)現(xiàn)所有類平鋪在一個包下面Servlet 和工具類混在一起那這個項目跑通沒問題但講分層的時候會很吃力。Servlet 是這套系統(tǒng)的請求入口。瀏覽器敲下 URL 之后請求先打到 web.xml 里的 servlet-mapping或者類上的 WebServlet 注解映射路徑再進入 doGet 或 doPost 處理。房屋租賃系統(tǒng)里的常見動作——查房源列表、新增租客、簽訂合同、登記繳費最后都會落到某個 Servlet 的這兩個方法里。讀源碼時先別急著看方法體先把類的繼承關系和映射路徑捋出來能少走很多彎路。Servlet 生命周期回答三個問題實例什么時候創(chuàng)建、service 方法什么時候被調(diào)用、對象什么時候銷毀。容器啟動或首次請求時完成類加載和實例化init 只執(zhí)行一次之后每次請求由容器從線程池里分配線程調(diào)用 serviceservice 再根據(jù)請求方法轉(zhuǎn)發(fā)到 doGet/doPost應用卸載時執(zhí)行 destroy 釋放資源。規(guī)整的源碼里能看到 init 中初始化數(shù)據(jù)源、destroy 中關閉連接池這就是標準寫法面試被問 Servlet 生命周期時可以直接拿自己的代碼舉例。這里有一個特別容易被忽略的細節(jié)Servlet 是單實例多線程。成員變量一旦被改成可變狀態(tài)兩個并發(fā)請求就會互相踩。我評審類似的課設源碼時經(jīng)??吹?Servlet 里放一個 SimpleDateFormat 或者一個可寫的 List 成員這都屬于隱患。SimpleDateFormat 不是線程安全的多個線程同時 format 同一個實例輕則結果錯亂重則拋 NumberFormatException。正確做法是把這些對象改成局部變量或者用 ThreadLocal 包一層。另外request.getParameter 拿到的一定是 String轉(zhuǎn)數(shù)字時如果前端傳了空字符串Integer.parseInt 會直接拋異常防御寫法是抽一個參數(shù)工具類先判空再轉(zhuǎn)換。2.2 JSP 是披著網(wǎng)頁外衣的 Servlet渲染和業(yè)務得分家JSP 在源碼里的角色是視圖層。它的本質(zhì)還是被容器編譯成一個 Servlet class容器把 JSP 里的靜態(tài) HTML 原樣寫進 out.write把腳本片段編譯成 Java 代碼塞進 _jspService 方法。這就是為什么 JSP 能直接用 request、response、session、application 這組內(nèi)置對象。剛接觸 JSP 的人可以記住一句話JSP 能用的Servlet 都能用JSP 只是把輸出 HTML 的活兒變得更順手。頁面上的房源列表、合同詳情、賬單表格在源碼里通常會混合三種寫法純 HTML 標簽、Java 腳本片段scriptlet和 EL/JSTL 表達式。老一點的項目大量使用% %寫循環(huán)和判斷讀起來像把 Java 代碼揉進了 HTML改一個樣式要在一堆尖括號里找半天。稍規(guī)整一點的源碼會刻意限制 scriptlet用c:forEach、${}來渲染數(shù)據(jù)。拿到源碼建議先看 JSP 頂部和列表頁如果 scriptlet 占了一大半說明視圖層沒有經(jīng)過重構后面改造工程量會比較大。JSP 偏重的部分是前端交互——菜單、分頁、彈窗基本靠 jQuery 加一套后臺模板撐著。房屋租賃管理系統(tǒng)通常不需要復雜交互表單提交后刷新列表頁這種傳統(tǒng)模式完全夠用。這也是這套選型到今天還沒過時的原因業(yè)務簡單、交互輕服務端渲染反而比前后端分離少寫一層接口。判斷源碼質(zhì)量的一個小技巧是看頁面里有沒有把 JDBC 查詢直接寫進 JSP。如果看到% Connection conn ... %這種開頭說明職責完全沒有分離這種代碼跑起來能用但改起來會痛。2.3 MySQL 側(cè)JDBC 連接池和預編譯才是這套源碼的靈魂數(shù)據(jù)庫訪問層是這類源碼里水分最大的部分。規(guī)整的做法是 DAO 模式每個實體對應一個 DAO 類DAO 里用 JDBC 執(zhí)行 SQL把 ResultSet 里的列封裝成實體對象。不規(guī)整的做法是把查詢邏輯直接寫在 Servlet 里每訪問一次數(shù)據(jù)庫就 DriverManager.getConnection 一次。后者在課設源碼里非常常見跑起來沒問題但并發(fā)一高就會暴露問題因為 Connection 的創(chuàng)建和銷毀是 JDBC 里最貴的一步。正確做法是用連接池常見的是 DBCP 或 C3P0配置一個 initialSize、maxActive、maxIdle讓連接復用起來。數(shù)據(jù)庫連接池在源碼里通常表現(xiàn)為一個 DbUtil 工具類靜態(tài)代碼塊里加載配置getConnection 從池里取連接close 把連接還回池子而不是真正關閉。你可以去找這個類數(shù)一下池參數(shù)有沒有生效如果只是 new 了一個 BasicDataSource 但沒用它的 getConnection等于白配。SQL 預編譯是另一個必看的地方。用 PreparedStatement 的 ? 占位符傳參而不是 String 拼接 SQL。拼接寫法一旦遇到用戶輸入的內(nèi)容里帶引號輕則 SQL 語法錯誤重則被注入。房屋租賃系統(tǒng)里的租客姓名、身份證號、地址都是用戶可控輸入登錄頁更是注入重災區(qū)。拿到源碼可以先全局搜一下 statement.再搜 preparedStatement.兩類出現(xiàn)的比例基本能反映這套代碼的成熟度。建庫時字符集選 utf8mb4 而不是 utf8因為 utf8 在 MySQL 里最多存 3 字節(jié)遇到生僻字或 emoji 會失敗utf8mb4 是它的超集排序規(guī)則用 utf8mb4_general_ci 就夠。3. 數(shù)據(jù)庫設計與業(yè)務流轉(zhuǎn)房源、合同、賬單怎么用五張表串起來3.1 五張核心表從管理員到賬單的建表腳本房屋租賃管理系統(tǒng)不管界面怎么變核心表跑不出這五張管理員表t_user、房源表t_house、租客表t_tenant、合同表t_contract、賬單表t_bill。業(yè)務關系是一對多的一套房源可以有多個歷史合同一個租客也可以有多個歷史合同一份合同對應多條賬單。這套設計可以直接拿來做建庫腳本。CREATE DATABASE IF NOT EXISTS house_rent DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; USE house_rent; CREATE TABLE t_user ( id INT PRIMARY KEY AUTO_INCREMENT, username VARCHAR(50) NOT NULL UNIQUE COMMENT 登錄賬號, password VARCHAR(100) NOT NULL COMMENT 登錄密碼, real_name VARCHAR(50) COMMENT 真實姓名, role TINYINT DEFAULT 1 COMMENT 1-管理員 2-普通員工, create_time DATETIME DEFAULT CURRENT_TIMESTAMP ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COMMENT管理員表; CREATE TABLE t_house ( id INT PRIMARY KEY AUTO_INCREMENT, house_no VARCHAR(50) NOT NULL UNIQUE COMMENT 房源編號, address VARCHAR(200) NOT NULL COMMENT 詳細地址, area DECIMAL(10,2) COMMENT 面積平米, house_type VARCHAR(20) COMMENT 戶型如兩室一廳, rent_price DECIMAL(10,2) NOT NULL COMMENT 月租金, deposit DECIMAL(10,2) DEFAULT 0 COMMENT 押金, status TINYINT DEFAULT 0 COMMENT 0-空置 1-已出租 2-維修鎖定, create_time DATETIME DEFAULT CURRENT_TIMESTAMP ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COMMENT房源表; CREATE TABLE t_tenant ( id INT PRIMARY KEY AUTO_INCREMENT, tenant_name VARCHAR(50) NOT NULL COMMENT 租客姓名, id_card VARCHAR(18) COMMENT 身份證號, phone VARCHAR(20) NOT NULL COMMENT 聯(lián)系電話, remark VARCHAR(200) COMMENT 備注, create_time DATETIME DEFAULT CURRENT_TIMESTAMP ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COMMENT租客表; CREATE TABLE t_contract ( id INT PRIMARY KEY AUTO_INCREMENT, house_id INT NOT NULL, tenant_id INT NOT NULL, start_date DATE NOT NULL COMMENT 合同開始日期, end_date DATE NOT NULL COMMENT 合同結束日期, monthly_rent DECIMAL(10,2) NOT NULL COMMENT 合同月租, deposit DECIMAL(10,2) DEFAULT 0 COMMENT 實收押金, status TINYINT DEFAULT 1 COMMENT 1-履約中 2-已到期 3-已退租, sign_time DATETIME DEFAULT CURRENT_TIMESTAMP, KEY idx_house_id (house_id), KEY idx_tenant_id (tenant_id), CONSTRAINT fk_contract_house FOREIGN KEY (house_id) REFERENCES t_house(id), CONSTRAINT fk_contract_tenant FOREIGN KEY (tenant_id) REFERENCES t_tenant(id) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COMMENT房屋合同表; CREATE TABLE t_bill ( id INT PRIMARY KEY AUTO_INCREMENT, contract_id INT NOT NULL, item_name VARCHAR(50) NOT NULL COMMENT 租金/水費/電費/物業(yè)費, amount DECIMAL(10,2) NOT NULL COMMENT 金額, status TINYINT DEFAULT 0 COMMENT 0-未繳 1-已繳, due_date DATE COMMENT 繳費截止日期, pay_time DATETIME COMMENT 實繳時間, remark VARCHAR(200), KEY idx_contract_id (contract_id), CONSTRAINT fk_bill_contract FOREIGN KEY (contract_id) REFERENCES t_contract(id) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COMMENT繳費賬單表;建表腳本里有幾個設計決策值得在答辯或復盤時講清楚。狀態(tài)字段全部用 TINYINT默認值為 0 表示空置或未繳這樣插入數(shù)據(jù)時可以少寫一個字段也讓查詢空置房源直接WHERE status0統(tǒng)計口徑統(tǒng)一。金額字段全部用 DECIMAL(10,2) 而不是 float/double因為二進制浮點數(shù)算錢會有精度問題押金結算、月度統(tǒng)計都依賴金額精度。合同表和賬單表都建了外鍵約束因為業(yè)務上合同只改狀態(tài)不刪記錄這種場景加外鍵是安全的還能防止程序里誤刪合同后賬單變成孤兒數(shù)據(jù)。3.2 業(yè)務流轉(zhuǎn)一套房源從空置到退租的狀態(tài)變化系統(tǒng)的業(yè)務流可以拆成五步房源錄入、租客登記、簽訂合同、賬單繳費、退租結算。每一步對應一組頁面和幾個 Servlet但核心是狀態(tài)的變化。房源從空置到已出租、合同從履約中到已退租、賬單從未繳到已繳三張表的狀態(tài)字段互相牽制。-- 空置房源查詢用于新租客看房 SELECT * FROM t_house WHERE status 0; -- 履約中的合同帶房源地址和租客姓名 SELECT c.*, h.address, t.tenant_name FROM t_contract c JOIN t_house h ON c.house_id h.id JOIN t_tenant t ON c.tenant_id t.id WHERE c.status 1; -- 已過繳費截止日期的未繳賬單用于催繳列表 SELECT b.*, h.address, t.tenant_name FROM t_bill b JOIN t_contract c ON b.contract_id c.id JOIN t_house h ON c.house_id h.id JOIN t_tenant t ON c.tenant_id t.id WHERE b.status 0 AND b.due_date CURDATE();這三條查詢基本覆蓋了出租管理后臺最常用的三個頁面找空房、看履約合同、出催繳單。注意這里全部用 JOIN 而不是子查詢因為最終要在列表頁展示房源地址和租客姓名一次 JOIN 把數(shù)據(jù)帶全。如果源碼里寫的是先查合同列表再在 Java 里循環(huán)查房源、查租客那性能就是個定時炸彈數(shù)據(jù)量上百條后頁面會明顯變慢。簽訂合同那一步比較特殊插入一條合同記錄之后還要把房源狀態(tài)從 0 改成 1。這兩個動作必須放在同一個數(shù)據(jù)庫事務里否則合同簽完了房源還是空置狀態(tài)另一個銷售就能把同一套房再租出去。很多課設源碼在這里是分開寫的沒有事務保護功能演示時看不出來但屬于明顯的設計漏洞在第 6 章會給出補法。3.3 退租結算押金怎么退、賬單怎么平退租是整個系統(tǒng)的業(yè)務難點。一筆押金在合同里記錄了金額退租時要先看該合同有沒有未繳賬單有欠費就從押金里扣剩余退還沒欠費就全額退。這個流程在課設里通常簡化為統(tǒng)計未繳賬單總額再用合同押金去減。SELECT IFNULL(SUM(amount), 0) AS unpaid_amount FROM t_bill WHERE contract_id ? AND status 0;這段 SQL 里的 IFNULL 一定不能省。沒有未繳賬單時 SUM 返回的是 NULL直接用押金去減會把退租金額算成 NULL頁面上就顯示一個空值看起來像是系統(tǒng)出 bug。退租結算的業(yè)務動作不止這一個查詢后面還要把合同狀態(tài)改成已退租、把房源狀態(tài)改回空置、生成一條押金結算記錄這三個寫操作連在一起是事務改造的天然練習點。4. 把源碼跑起來從版本搭配到 WAR 包部署的完整步驟4.1 環(huán)境搭配JDK、Tomcat、MySQL 各用什么版本如果這套源碼是標準的 javax.servlet 體系版本搭配如下表。MySQL 安裝配置教程網(wǎng)上已經(jīng)很多這里只說最容易翻車的版本關系。| 組件 | 推薦版本 | 說明 | | JDK | 1.8 | 兼容性最好不要為了嘗鮮上 JDK 17 | | Tomcat | 8.5 或 9.0 | 不要用 Tomcat 10原因見第 5 章 | | MySQL | 5.7 或 8.0 | 5.7 默認字符集更省心 | | mysql-connector-java | 5.1.49 或 8.0.x | 與 MySQL 版本對應 |Tomcat 版本是這個項目最容易踩的坑。Tomcat 10 開始Servlet 包名從 javax.servlet 改名成 jakarta.servlet老項目直接導入會全線標紅。驅(qū)動版本也要對齊MySQL 5.7 用 5.1.49 驅(qū)動最穩(wěn)MySQL 8.0 用 8.0.x 驅(qū)動反過來用的話5.x 驅(qū)動連 MySQL 8 會報 SSL 錯誤或連接直接失敗。4.2 建庫、導入表和初始化數(shù)據(jù)把第 3 章的建表腳本保存成 init.sql在命令行用 source 執(zhí)行或者打開 Navicat、MySQL Workbench 直接運行整個腳本。如果本地還沒有這個庫先登錄 MySQL 再導入mysql -uroot -p init.sql執(zhí)行完順手驗證一下SHOW TABLES; SELECT COUNT(*) FROM t_house;沒有報錯且能看到五張表說明腳本沒問題。如果 init.sql 里出現(xiàn) SET FOREIGN_KEY_CHECKS0說明腳本的建表順序可能有問題正常按 t_user、t_house、t_tenant、t_contract、t_bill 的順序建不需要關閉外鍵檢查。4.3 改數(shù)據(jù)庫連接配置源碼里數(shù)據(jù)庫連接信息一般在 src 目錄下的 db.properties或者直接寫在 DbUtil.java 里。先檢查這幾行jdbc.drivercom.mysql.cj.jdbc.Driver jdbc.urljdbc:mysql://localhost:3306/house_rent?useUnicodetruecharacterEncodingutf8serverTimezoneAsia/ShanghaiuseSSLfalse jdbc.usernameroot jdbc.password把這里改成你的mysql密碼參數(shù)說明。jdbc.driver 是第一個坑MySQL 5.x 驅(qū)動用 com.mysql.jdbc.DriverMySQL 8.x 驅(qū)動用 com.mysql.cj.jdbc.Driver寫錯直接 ClassNotFoundException。serverTimezone 必帶MySQL 8 的驅(qū)動要求指定時區(qū)缺了會報 The server time zone value 的異常。useSSLfalse 是本地開發(fā)環(huán)境最省事的配置MySQL 8 默認開 SSL 校驗不關有時會告警。characterEncodingutf8 和 JSP 頁面編碼配套亂碼問題一半出在這里。如果源碼里不是 properties 文件而是直接在 DbUtil.java 里寫 URL同樣改這三行就行。改完后可以先用一個最簡單的 Servlet 映射測一次登錄確認配置生效再繼續(xù)。4.4 在 IDEA 里配置 Tomcat 啟動打開 IDEA 后先把項目導入等待 Maven 或 Gradle 同步完成。有 pom.xml 的項目會自動下載依賴純手工導 jar 的傳統(tǒng)項目檢查 WEB-INF/lib 目錄下的 Jar 是否完整。也有人習慣用 VSCode 寫 Servlet配置好 JDK 和擴展后也能編譯但調(diào)試、斷點、Tomcat 集成都不如 IDEA 順手傳統(tǒng) JSP 項目直接用 IDEA 社區(qū)版最省事。然后配置 TomcatRun → Edit Configurations → 左上角加號 → Tomcat Server → Local。切到 Deployment 頁簽點加號 → Artifact選擇 war exploded 類型的 ArtifactApplication context 填 /rent。啟動后訪問 http://localhost:8080/rent/。一個好用的檢查方式先把 Tomcat 啟動控制臺日志打開看到 “Deployment of web application archive has finished” 再刷新頁面不要憑感覺盲等。不少人不看日志直接開瀏覽器頁面報 404 就開始懷疑代碼其實只是應用還沒部署完。提示IDEA 里配置 Tomcat 后如果事件日志報紅色錯誤先看是哪一層報錯再回到代碼里排查大部分都是 Artifact 沒指對。4.5 傳統(tǒng) JSP 項目打包 WAR命令行和 IDEA 兩種方式只在自己電腦上跑IDEA 內(nèi)置 Tomcat 夠用。但課程設計要部署到別的機器或交演示環(huán)境就得打 WAR 包。傳統(tǒng) JSP 項目打包 WAR 有兩種方式。IDEA 方式File → Project Structure → Artifacts → 點加號 → Web Application: Archive → 選 From module然后 Build → Build Artifacts → 選 xxx:war → Build產(chǎn)物在 out/artifacts/xxx_war/xxx.war。命令行方式更直接在項目編譯輸出目錄上執(zhí)行jar cvf rent.war -C out/artifacts/xxx_war_exploded/ .把生成的 rent.war 放到 Tomcat 的 webapps 目錄啟動 Tomcat$CATALINA_HOME/bin/startup.sh # Linux $CATALINA_HOME/bin/startup.bat # WindowsTomcat 會自動解壓 war 并部署。訪問路徑是 http://localhost:8080/rent/路徑名就是 war 包名想換上下文路徑直接重命名 war 文件。啟動之后先測登錄頁再跑一個讀操作和一個寫操作確認數(shù)據(jù)庫配置沒問題再開始改代碼。5. 避坑指南這套 JavaWeb 房屋租賃系統(tǒng)跑不起來時先查這四個地方5.1 數(shù)據(jù)庫連不上驅(qū)動類、時區(qū)、服務狀態(tài)三件事一起查現(xiàn)象啟動 Tomcat 時看到 ClassNotFoundException: com.mysql.jdbc.Driver或者訪問頁面時拋 Communications link failure控制臺報 Cant connect to MySQL server on localhost (10061) 這類嵌套異常。原因按順序排查MySQL 服務沒啟動連接串里賬號密碼不對驅(qū)動 jar 沒進 WEB-INF/lib驅(qū)動類和 MySQL 版本不匹配MySQL 8 缺 serverTimezone 配置。Linux 下本地連不上時常見報錯是 error 2002 (HY000): Cant connect to local MySQL server through socket /var/run/mysqld/mysqld.sock這是客戶端找 socket 文件失敗先確認 mysqld 進程在跑而不是急著改密碼。解決步驟先確認 MySQL 進程Windows 下sc query mysql或任務管理器看 mysqldLinux 下systemctl status mysql再用命令行客戶端試一次mysql -uroot -p能連上說明服務沒問題。然后檢查驅(qū)動 jar 是否在 WEB-INF/lib 目錄下最后把 4.3 的配置逐項對一遍。注意如果機器上同時裝過 MySQL 5.7 和 8.0先用mysql --version確認 3306 端口跑的是哪一版再對驅(qū)動和 URL 參數(shù)。5.2 JSP 中文亂碼瀏覽器、JSP、JDBC、MySQL 四層編碼必須一致現(xiàn)象頁面上的中文全是亂碼或者往數(shù)據(jù)庫插入租客姓名后查出來是 ????。原因這套系統(tǒng)全是中文輸入編碼鏈路長JSP 頁面文件本身的編碼、請求參數(shù)的編碼、JDBC URL 里的 characterEncoding、MySQL 庫和表的字符集任何一環(huán)不是 UTF-8 就會出問題。最常見的是只改了 JSP 頂部沒改 JDBC URL 和數(shù)據(jù)庫字符集。解決JSP 頁面頂部統(tǒng)一聲明數(shù)據(jù)庫 URL 補 characterEncoding建庫建表統(tǒng)一 utf8mb4。更正規(guī)的做法是給整個項目加一個編碼過濾器public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { // 請求參數(shù)統(tǒng)一按 UTF-8 解碼 request.setCharacterEncoding(UTF-8); // 響應統(tǒng)一輸出 UTF-8 response.setContentType(text/html;charsetUTF-8); chain.doFilter(request, response); }這個過濾器配置在 web.xml 里映射 /*就能覆蓋所有頁面和 Servlet避免每個 Servlet 單獨寫編碼設置。Tomcat 8 之后的 GET 請求一般不會亂碼如果出現(xiàn)去 server.xml 的 Connector 配置里加 URIEncodingUTF-8。5.3 導入項目一堆紅叉八成是 Tomcat 10 的鍋現(xiàn)象IDEA 里導入項目后Servlet、HttpServletRequest、HttpSession 全線標紅或者編譯時大量報 Error: package javax.servlet does not exist。原因Tomcat 10 開始換成 Jakarta EE 9包名從 javax.* 改名 jakarta.*老 ServletJSP 項目基于 javax 命名空間寫的自然找不到類。這個坑特別隱蔽因為配 Tomcat 時新手通常默認下載新版。解決把本地 Tomcat 換成 8.5 或 9.0IDEA 里重新在 Project Structure → Libraries 指向新 Tomcat 的 servlet-api.jar 和 jsp-api.jar再重新編譯。如果已經(jīng)為遷到 Tomcat 10 把 import 改成 jakarta 開頭再換回 Tomcat 9 時記得改回來。提示判斷項目是不是 javax 系打開任意一個 Servlet看 import 開頭是 javax.servlet 還是 jakarta.servlet。5.4 系統(tǒng)放著放著就報連接失效連接池里的連接被 MySQL 掐斷了現(xiàn)象系統(tǒng)剛啟動一切正常第二天早上第一次訪問某個頁面時拋 Communications link failure 或 Connection is not available, request timed out。原因MySQL 的 wait_timeout 默認 8 小時空閑超過 8 小時的連接會被服務端關閉而連接池不知道繼續(xù)把死連接發(fā)給業(yè)務代碼。課設環(huán)境晚上沒人訪問第二天必現(xiàn)屬于典型的演示現(xiàn)場翻車場景。解決給連接池加兩塊配置以 DBCP 為例dataSource.setTestOnBorrow(true); dataSource.setValidationQuery(SELECT 1);testOnBorrow 設為 true每次從池里取連接先執(zhí)行一條 SELECT 1 驗證連接有效性無效就丟棄重建。也可以把 MySQL 的 wait_timeout 調(diào)大但連接池側(cè)處理才是治本C3P0 對應參數(shù)是 testConnectionOnCheckout 和 preferredTestQuery。這個排查方法是我自己在這類 JavaWeb 項目里踩得最多的坑白天演示一切正常隔夜后第一次點擊就拋連接超時沒少被這套組合坑過。6. 別讓源碼停在“能跑”先做這三個小改造這套源碼跑通只是開始。答辯或面試時能講出的增量優(yōu)化比“我下載了一個可以運行的項目”值錢得多。做過這幾個改造再回頭看源碼理解會深一截。第一個改造是密碼存儲。源碼里如果管理員密碼以明文存在 t_user 表趕緊改。改造成本極低登錄和注冊處把密碼做 MD5加一點鹽再入庫。MD5 本身不算強加密但能擋住絕大多數(shù)“順手查庫”的讀取。真正要求高的場景可以換成 SHA-256 加鹽對課設來說 MD5 足夠講清楚“為什么不能存明文”。第二個改造是給退租結算加事務。第 3 章講過退租要同時改合同狀態(tài)、房屋狀態(tài)、生成結算賬單這三個動作不能被拆成三條獨立執(zhí)行的語句用一個手動事務包起來Connection conn null; try { conn DBUtil.getConnection(); conn.setAutoCommit(false); String updateContract UPDATE t_contract SET status 3, end_date NOW() WHERE id ?; String updateHouse UPDATE t_house SET status 0 WHERE id ?; String insertBill INSERT INTO t_bill(contract_id, item_name, amount, status) VALUES(?, 押金結算, ?, 0); // 依次執(zhí)行三個語句... conn.commit(); } catch (Exception e) { if (conn ! null) conn.rollback(); throw new RuntimeException(退租結算失敗, e); } finally { if (conn ! null) { conn.setAutoCommit(true); DBUtil.close(conn); } }三個 UPDATE/INSERT 只有全部成功才 commit中間任何一步報錯都 rollback房源狀態(tài)和合同狀態(tài)才不會錯位。加上這個事務答辯時說“我用 Connection 手動事務保證業(yè)務原子性”比說“我用了 Spring 的 Transactional”更能體現(xiàn)底層理解。第三個改造是逐步把 JSP 里的 scriptlet 換成 EL JSTL。操作方式在 2.2 提過通用替換格式是原來% for (House h : list) { %改成c:forEach items${list} varh原來%h.getAddress()%改成${h.address}。一次改一個文件先從列表頁開始改完跑一遍回歸測試。好處是頁面不再依賴具體類視圖和數(shù)據(jù)徹底分離。把這三個改造做完這套房屋租賃管理系統(tǒng)就從“能運行的源碼”變成了“你親手維護過的項目”。我自己的習慣是每個改造留一個 git 提交這樣復盤時能清楚說出每一步改了什么、為什么改。三個改造都不大但每一個都指向真實的工程問題安全、事務、可維護性。希望這條路能幫到你。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
九九热10| 99在线看片| 色五月播五月| 亚洲热久| 色色色热热热| 色婷婷精品小视频| 影院久久久| 开心婷婷五月天激情网| 91一起艹| A片试看120分钟做受视频红杏 | 草草色情综合网| 五月丁香va| 婷婷日本色| 日本乱论99| 玖玖五月丁香| 日本婷婷网| 操逼综合网| 欧美日本黄色| 婷婷舔| 日本熟妇乱妇熟色A片蜜桃| 日日夜夜天天| 九九九九九九九热| 久久久com| 激情婷婷丁香| 大香蕉婷婷丁香视频在线| 美妞av| 国产亚洲99久久精品熟| 色五月人妻| 丁香婷婷六月激情| 五月丁香婷婷色色| av第一二区| 99热这里有精品24| 亚洲操操| 欧美在线视频9| 激情操逼婷婷| 五月丁香婷婷六月| 丁香婷婷成人网站| 五月成人综合| 色情播放| 激情小说五月丁香在线视频观看视频| 中文AV在线观看| 大香蕉啪啪啪| 色色色成人网| 91超碰在线观看| 天天摸色吧天天摸色吧| 久久色五月| 丁香婷色| 日韩无码性爱| 99热主页日本| 国产成人AV在线播放| 黄色短视频在线观看| 婷婷综合久久| 伊人久久大香线蕉精品| 99色综合| 日本黄色三级片内射| 中文在线成人| 99在线精品视频| 思思热精品在线观看| 人人干Av| 亚洲婷婷欧美婷婷| 亚洲最大视频| 丁香五月Av| 无码人妻一区二区三区四区| 色五月婷婷成人视频| 婷婷成人综合| 激情啪啪五月天| 六月丁香五月激情亚洲AV| 五月丁香六月婷综合成人综合| 久热伊人9| 美国天天操无码| 色婷婷性爱| 丁香五月婷婷图片综合| 99色日本| 丁香五月狠狠综合欧美| 东北婷婷五月天| 九九机热| 97 A I色色| 黄页大全十八禁| 亚洲欧美999| 丁香婷婷月| 五月丁香伊人网| 开心五月网| 亚洲不卡欧洲| XX色综合| 日本色色影院| 色五月之第四色| 天堂婷婷丁香六月网| 婷婷丁香激情综合色情| 97人人干| 青青草原亚洲天堂| 国产1区2区3区在线观| 97碰碰视频在线观看| 婷婷欧美色| 激情五月四色| 中文字幕婷婷| 99ri精品| Aaa久久| 丁香五月婷中字幕| 一级精品999WWW| 色啪网| 五月婷婷综合网| 伊人喵咪a V| 九九色网| 极品人妻videosss人妻| 99操逼| 国产午夜一区二区三区| 狠狠色狠狠色综合日日91| 五月婷婷三级| 中文字幕成人影视| 国产精品第一国产精品| 久碰综合| 婷婷五月天高清无码| 99精品在线观看| www99精品在线观看| 色婷婷狠狠爱| 丁香五月无码| 五月激情综合网婷婷| 久久97久久99久久综合欧美| 超碰91人人操| 超碰人人超碰| 九久热| 亚洲AV日韩在线观看| 婷婷情色五月天| 欧美精品在线观看| 99er热精品视频| 五月天婷婷亚洲| 一本道综合网| 国产特级毛片AAAAAAA高清| 狠狠色五月| 亚洲最大五月六月丁香婷婷| 丁香六月丁香婷婷激情| 99热这里只有精品50| 亚洲婷婷成人五月天| 这里只有精品视频99| 99爱精品| 啪啪啪啪五月天| 色久天| 久久九九婷婷| 熟女网站久久| 99婷婷| 五月婷婷综合激情网| 色婷婷影视99| 色播五月丁香婷婷| 日韩在线视频中文字幕| 影音先锋男人站,影音先锋男人色资源网,影音先锋AV最新资源站,影音先锋AV资源 | 五月天激情日色在线| 国产综合婷婷| 老司机伊人| 婷婷激情性爱| 激情五月激情综合网| 碰碰女| 婷婷色情网| 久久久久久久久久91| 五月丁六月香av| 一起草av| 99久久九九| 婷婷婷婷婷婷婷婷婷婷丁香| 99热这里只有精品国产首页| 99热这里有精品首页10| 色五月天电影| 色色色色色色综合| 婷婷久久精品| www.色婷婷| 色综合久久五月| 女人高潮内射99精品| 久久精品五月| 91色五月| 九九热视频免费观看| 91精品国产综合久久久不卡电影| 综合一本道| 婷综合六月| 日日操夜夜撸| 99热精品少| 99热综合| 激情网第九色| 2025神马午夜福利| 操日视频| 色欲九区| 国产av天天插天天操天天爽| www久久艹| 狠干综合| 日本乱子人伦在线视频| 婷婷亚洲丁香五月| 丁香婷婷色情| 中文成人在线| 99九九精品视频| 色综合av超碰| 欧美在线| 久久综合五月天| 五月综合婷婷网| 婷婷丁香五月天激情四射| 亚洲丁香五月天视频| 欧美99热| 激情久久网| 久久久婷| 婷婷伊人网| 成人电影在线免费试看| 九九热这里只有精品9| 久青草影院| 天天插天天插天天操| 四色99久久| 激情 婷婷 插| 久久精品夜色噜噜亚洲a∨| 天天爽,夜夜爽| 五月天天堂久久| 六月婷婷综合| 99热国产| 深爱激情网噜噜色| 婷婷激情另类| 99热婷婷| 亚州男人天堂婷婷五月| 91精品久久久久久77777| 狠狠操婷婷| 亚洲Va成人| 婷婷成人av| 免费看成人747474九号视频在线观看| 99爱最新免费视频在线观看| 五月婷婷丁香啪啪| 人人97碰| 9热精品| 色欲色香综合网| 激情网综合| 日韩精品一品二区三区的使用体验| 风流少妇A片一区二区蜜桃| 超碰a女人的天堂| 情欲综合网| 五月天婷婷綜合院| 99亚洲精品视频| 日韩成人中文| AV片一区在线观看| 疯狂做受XXXX高潮A片动画| 亚洲 视频 导航 一区| 思思热久久久久思思热| 无码G高清天| 久久婷色| 99热这里是精品| 9久9久| 99热这里只有精品16| 午夜丁香丁香婷婷| 久久99热这里只有| 国在线激情网| 噜一噜免费视频| 综久久久| 色色色色区| 香港九九六区八区99| 久久久五月天| 婷婷伊人综合中文字幕| 少妇高潮一区二区三区99欧美| 久久久精品色| 丁香婷婷九月| 天天婷婷综合亚洲亚洲| 97色色网| 久久久国产精品黄毛片| 99在线观看精品视频| 99热新网址| 五月丁香五月婷婷| 成人在线网址| 色婷婷五月天| 五月天另类小说久久小说网| 免费成片在线观看| 99精品在线观看视频| 97日在线视频| 777色婷婷爱五月| 中文av在线观看| www.1024久久| 日本久久婷| 99热综合| 婷婷六月激情丁香| 日本高清综合网五月丁香| 亭亭五月色男人| 亚洲久久激情| www.婷婷| 丁香婷婷影院| 生活片五区| 五月天激情图片| 久久婷婷亚洲| 五月之婷婷| 超碰1999| 五月天色区| 久久视频在线视频| Caop在线| 日本色婷婷| 99在线精品视频观看免费下载| 欧韩性爱| 久久精品只有这| 影音先锋91| 色噜噜婷婷| 在线观看免费人成视频无码| www.AV在线| 激情四射网| 丁香婷婷激情五月| 婷婷日欧美在线观看| 色婷婷五月视频| 婷婷午夜精品久久久| 91日视频| 2025神马午夜福利| 99,色| 呦呦视频无码播放| 日韩欧洲亚洲| 色婷综合| 五月婷婷这里都是精品| 亚洲天堂大香蕉| 久热99| 九九超日本| 婷婷香蕉| 色婷久| 中文字幕日本最新乱码视频| 丁香六月婷婷久久高清| 色婷五月| 超碰91在线| 狠狠 久久| 五月天婷婷激情网| 91视频五月丁香| 欧美日韩中文国产一区发布| 亲子乱AV一区二区三区下载| 五月婷婷免费看| 九九在线精品| 精品婷婷丁香五| 日本欧美在线| 婷婷八月丁香激情综合| 黄色片avv| 亚洲精品电影| 成人综合视频在线| 日韩大片艹艹| 激情婷婷五月天日本系列| 日日夜夜天天| 婷婷人妻激情| 九九精品视频在线观看| 久久五月婷婷综合网| 色婷婷操逼| 综合色激情| JAPANRCEP老熟妇乱子伦视频| 香蕉伊人综合| 丁香五月天电影| 91九色最新视频| 激情图片亚洲| 涩五月婷婷| 97欧美在线| 欧洲免费视频色| 激情五月天婷婷| 欧美色色色色色色色| 毛片色五月| 欧美内射AAAAAAXXXXX| 玖玖爱综合网| 粉嫩av蜜桃av蜜臀av| 日韩成人电泉AV| 婷婷五月天论坛| 狠狠色综合网站久久久久| 亚洲色综合色网| 天天日天天日天天搞| 成人做爰高潮A片免费视频| 91人人爽狠狠狠| 99热99久久| 97婷婷在线视频| 深爱激情婷| 99精品综合在线| 婷婷免费无视频| 成人精品视频99在线观看免费| 婷婷综合| 少妇高潮A片无套内谢麻豆传| 99热精品在线| 久久九色| 五月天婷婷伊人| 丰满人妻妇伦又伦精品国产 | 天天肏夜夜肏| 爱草视频在线观看| 六月丁花香啪啪激情欧美| 亚洲色情一区二区三区四区| 黄网在线免费| 99色网站| 亚洲超碰在线| 做爰丰满少妇1313| 可以观看的AV| 五月丁香激情婷婷| 丁香久久| 五月草视频| 91婷婷五月丁香碰| 狠狠插狠狠插| WWW.开心五月天.COM| www...com黄在线观看| 激情五月婷婷色播网| 97男人天堂| 激情五月综合亚洲另类| 亚洲午夜精品久久久久久人妖| 狠狠操狠狠插| 久久这里都是精品| 另类激情五月天。| 日操夜操天天操不卡| 夜夜爽天天干| 综合欧美五月婷婷| 久久久久久人妻| 久久99热只有精品| 色停停影院五月天| 欧美色婷婷| 丁香五月激情六月综合| 99亚洲精品视频| 色香欲综合| 婷婷激情鹿城五月天| 99碰碰。| 26uuu亚洲| 思思热在线精品视频网站| 伊人大蕉香| 婷婷六月激情| 人人爱国产| 97啪啪| 538在线精品| 韩国激情五月天综合网| 丁香婷婷六月激情| 人人妻人人澡| 蒲京久久无码视频| 99久久网站| 婷婷五月天色| AV 3P| 五月天婷婷社区久久综合| 婷婷五月色播| 9l视频自拍9l九色9l成人| 五月婷婷六月丁香综合视频在线| 亚洲激情综| 亚洲国产精品二二三三区 | 久久R激情| 欧美婷婷日本| 亚洲无码色| 五月婷婷丁香五月亚洲色| 超级碰91| 欧美一级a| 97av在线视频| 丁香五月天激情| www一区二区三区| 婷婷久久久| 亚洲天堂无码| 四色五月婷婷| 国产偷人爽久久久久久老妇APP| 五月婷婷丁香大陆免费| 欧美色色色色色| 亚洲第精品| 99久久网站| 亚洲天堂制| 五月婷婷综合在线| 五月天激情久久| 这里只有精彩视频| 99综合色| 激情六月综合| 五月丁香六月香综合激情| 久久欧洲久久| 九九色热| 亚洲小视频免费播放| 亚洲无码成人网| 一片AV片免费播放| 色综合色综合色综合| 国产在线网| 欧美人与性动交CCOO| 国产9色在线/日韩| 99九九热在线观看| 99色热视频| 99这里有精品视频| 9月色婷婷| 日日操日日撸| 91九色中文| 激情五月丁香五月| 婷婷五月天天爽| 天天做天天爱天天要| 五月天伊人手机在线播放AV| www.ppypp| 九九视频这里只有精彩| 99热免费精品热久久66| 亚洲综合视频天天精品| 五月丁香六月婷婷免费| 五月天婷婷开心| 精品无码人妻一区| 五月婷婷激清网| 人人操超踫| 色五月激情基地| 五月色婷婷激情| site:feetmall.com| 久久婷婷丁香六月天| 婷婷五月丁香五月| 婷婷五月天六月综合| 婷婷激情六月综合| 无码色色| 玖玖在线| 色色色网站| 国色天香成人网| 97色 五月天丁香| 北条麻妃伊人 | 色色婷婷色色| 97久久视频| 久久在这里有精品| 久久网站免费亚洲| 亚洲性爱日韩无码| 中文AV在线观看| 天堂久久精品| 亚洲在线免费成人| 噜噜色五月| 天天插天天插天天操| 久久五月丁香激情综合| 丁香五月激情啪啪| 九九热在线视频观看| 99热亚洲| www.精品久9| 淫视馆aV二区一区| 另类综合网| 六月婷婷激情| 亚洲经典三级| 丁香六月婷| 激情美女五月天| 婷婷激情五月天小说| 丁香五月成人婷婷| 久久人妻熟女一区二区| 久久久久99精品成人网站| 色综合狠狠色| 久热精彩视频98| 九九在线精品| 日韩有码一区| 丁香婷婷综合激情五月色,开心五月丁香花综合网,激情综合五月亚洲婷婷,五月天 | 亚洲旡码| 日韩欧美骚货| 成人电影一区| 日本久久视频| 婷婷丁香五月综合激情视频| 99视频| 99日本视频在线观看专区| 九九精品99| 亚洲国产精品综合色区| 狠狠操综合| 五月激情婷婷四射| 五月天色五月天| 97干在线播放| 久久99草五月婷婷| 五月激情丁香五月宗合| 激情AV| 免费成片在线观看| 日本欧美国产| 免费看欧美成人A片无码 | 极品五月天| 色必久悠悠影院| 99热综合网| 丁香五月成人自拍| 中文字幕 久久9999| 亚州操人在线视频| 五月综合激情| 少妇综合网| 日本色99网站| 日韩av干| 中文成人在线| 夜夜人妻五月天| 五月婷婷激情性爱| 99狠狠操一| 五月天婷婷视频| 婷婷在线网| 亚洲中文无码成人| 久久人人看| 婷婷综合网站| 久操人妻| 欧美精品中文字幕亚洲专区| 色色五月婷婷| 这里只有精品免费视频| 久久婷婷五月天懂色| 能看的AV| 色狠狠999综合| 日韩aaa| 99热欲| 色婷婷丁香五月色综合网| 国产一区二区三区影院| 五月丁香激情婷婷综合字幕| 国产欧美日韩综合精品一区二区| 日本在线免费中文com.| 国产做A爰片毛片A片美国| 人妻乱码久久久| 色婷五月| 狠狠色综合777| 国产FREESEXVIDEOS性中国| 色播五月婷婷综合| 熟妇内谢69XXXXXA片| 五月天色综合服务平台| 久操欧美在线观看97| www.minyis.com【JT】国内CDN落地页保证转化QQ2101460746 | 日本三级大片| 激情五月色综合国产精品| 欧美黄色一级录像| 亚洲色婷婷五月| 91人人人人人人人| 丁香美女五月天婷婷| A级毛片高清免费不卡播放谢谢谢谢| 99久久6| se色综合网| 狠狠爱婷婷爱| 欧美天天五月丁香免费观看 | 男人天堂AV在线一区二区| 六九色综合婷婷五月天| 日本三级中国三级99| 日韩视频99| 久久亚洲精品成人无码网站导航| 伊人九热| 99re在线精品视频| 五月婷婷久久开心网| 五月丁香六月片| 99精品视频网站| 久久停停超碰| 国产做爰视频免费播放| www.99热这里精品| 天天做天天要天天爱| 亚洲中文字幕在线观看| 五月婷婷综合在线| 精品网站99| 亚洲午夜国产成人电影VA国产欧…| 五月丁香六月婷婷在线| 婷色五月| 久久丁香婷婷色情综合| 9色在线| 天天碰天天插天天操| 91嫩草久久| 成人片在线播放| 九九热免费| 99操99| 婷婷久久色五月婷婷久久久| 色五月婷婷色| 婷婷五月深爱五月| 天天肏屄夜夜爽| 九月av在线| AV九九| 桃色五月天| 欧美色骚婷婷五月天| 五月天之色情综合网| av大香蕉| 操操天堂| 夜夜干 夜夜操| 婷婷五月天在线看| 人人爽欧美婷婷久久久五月丁香| 国产小精品| 九九色欲网| 亚洲综合色五月| 99热日本| 人妻aV在线| 中文字幕在线日亚州9| 六月婷婷亚洲| 无码一区二区日韩| 久婷婷婷| 欧美啪啪网| 色五月婷婷777| av狠狠操| 久久婷婷综合网| 日婷婷| 日日做夜夜爱| 69婷婷丁香午夜| 狠狠色丁香久久久婷| 97操碰在线视频| 欧美久久久中文字幕| 九九亚洲视频| www.yw尤物| 九九亚洲| 五月丁香婷婷综合| 熟女激情五月天| 日本成人噜噜噜噜噜| 26UUU| 丁香六月激情| 一区二区乱码视频| 丁香婷婷色情| 日本三久久| 激情久久网 | 玖玖99免费视频| 激情骚五月| 色婷婷久久7777| 久草婷妨| 亚洲色频| 综合网狠狠| 无码一级片| 伊人热婷婷| WWW、日本色丁香、co m| 亚洲狠狠色丁香婷婷综合久久| 91狠狠综合久久久| 九九综合| 三级片AAA久久久AAA久久久AAA | 久草热在线视频| 欧美婷婷综合| 9l视频自拍九色9l视频在线观看| 色婷婷先锋| 秋霞A V毛片| 婷婷激情综合| 人人摸人人| 久久五月视频| 男人操女人高潮91视频| 伊人五月婷| 嘿嘿视频免费看9| 碰碰碰91| 日韩成人av在线| 亚洲综合网区| www.五月天婷婷姐姐| 五月综合精品| 六月丁香五月婷婷| 99re思思久久| 日日做A爰片久久毛片A片英语| 亚洲蜜桃精久久久久久久久久久久| 超碰只有精品在线| 日本黄色精品| 丁香五月综合| 第四色婷婷色五月| 色五月激情五月天| 色情五月丁香| 天堂成人A片永久免费网站| 五月美女婷婷风骚| 婷婷五月天丁香成人社区| 欧美色久| 亚洲九九九九| 天天做天天爱天天高潮| 天天综合精品| 婷婷五月娱乐在线| 久久婷婷五月| 激情六月一二| 91性高潮久久久久久久久| 色婷婷五月综合| 色吧99| 伊人干综合| site:publishdd.com| 五月丁香婷婷深深爱| 色五月亚洲| 亚洲黄色操逼| 综合色播| 日日夜夜狠狠操| 日狠狠| 色婷婷亚洲综合天堂| 大香蕉精品视频| www.minyis.com【JT】国内CDN落地页保证转化QQ2101460746 | 青青草青青草五月天| 五月丁香色婷基地综合久久| 99在线免费视| 婷婷爱五月| 日日影院 | 九九久久99精品免费观看www| 另类激情五月| 熟女激情五月天| 婷婷五月激情小说| 亚洲中文无码成人| 外国碰视频网站97| 欧美A片在线视频免费观看| 久久在这里99| 五月婷婷六月丁香在线| www.色五月| 欧美影院婷婷| 97色色综合| 情欲禁地| 99re这里只有精品9| 婷婷五月天六月丁香| 性av| 亭亭丁香aV| 亚洲AV网站在线观看| 激情 婷婷 插| 五月天开心网| 大香蕉手机视频| 五月婷婷在线观看黄| 影音先锋男人AV资源站| 色 丁香婷婷| 五月丁香天堂网| 狠狠五月激情丁香六月| 婷婷五月激情在线视频| 午夜不卡久久精品无码免费| 精品久久婷婷五月天| 免费国产视频| 五月间天堂综合| 五月天婷婷丁香社区| 久色精品| 婷婷五月天伊人网在线观看视频| 九月丁香| 黄色99视频| 狠狠色综合网| 欧美三级欧美一级| 久久久婷婷五月亚洲97号色| 光棍影院日韩精品| 婷婷综合网| 久久99jiu9| 色噜噜狠狠插综合| 九九视频在线观看视频在线播放69| 五月丁香六月激情综合啪啪| 亚洲精品又粗又大又爽A片| 99精品视频免费在线播放| 激情五月综合| 色 免费网站视频| 色五月天综合网| 操一区| 欧洲激情五月天| 国产欧美精品AAAAAA片| 天天粽合合合合| 情欲禁地| 婷婷五月天成人网站| 伊人喵咪a V| 99视频这里有精品免费观看| 男人的天堂av俄罗斯热| 天天插,天天射| 久草丁香婷婷五月天婷| 夜夜久久综合网| 超碰在线国产| 色婷婷五月天| 中文国产五月天| 狠狠色丁香久久综合婷婷亚洲成人福利 | 成人AV中文字幕| av网址在线| 五月天婷婷色| 成人AV在线网站| 久久婷婷五月综合网| 久久人妻久久| 丁香五月婷婷综合精品素人| 久操婷婷| 日韩狠狠色婷婷| 久久精品凹凸分类| 日日干天天爽| 另类图片天天影视在线观看| 婷婷成人五月天| 色五月婷婷天天操夜夜操| 九月婷婷在线观看| 激情五月天视频| 99久久a线观| 在线综合亚洲欧美65| 色综合久久五月天| 色婷婷电影| 亚洲春色奇米影视| 亚洲激情网| 人人爽人人射-美女久久久久久久久久-成人AV| 国产AV一区二区三区最新精品| 婷婷开心久久| 久99久视频| 久久综合婷婷激情| 成人综合视频在线| 日本在线免费中文com.| 超碰97干| 亚洲视频丁香网va| 婷婷五月天丁香激情| 久久只有18视频| 丁香五月av在线| 91seav| 婷婷久久色五月婷婷久久久| 91精品婷婷国产综合久久| 伊人狠狠狠综合| 国产操B视频| 香蕉久久国产AV一区二区| 五月天成人在线视频网站| 婷婷久久婷婷色五月| 亚洲最大视频网站| 99操| 激情丁香九九五月综合网| 五月丁香色五月| 丁香色综合| 91色综合久久| 亚洲精品成人| 欧美日韩成人高清在线| 色五月婷婷开心| 久久99久久99精品免观看粉| 婷婷香蕉精品| 精品人妻一区二区三区四区不卡在| 99re这里只有精品在线观看| 色综合夜夜| 久草狼人| 91猫咪国产在线播放| 99自拍视频| 大香蕉中文| 婷婷五月天成人小说| 丁香婷婷免费| 久热久| 亚洲午夜一区二区| 丁香九月激情在线视频| JAPANRCEP老熟妇乱子伦视频 | 超碰激情五月| 激情亚洲五月| 激情综合网激情五月天| 久草A片| 激情五月天小说|五月天开心激情网|亚洲精品国产自在现线|黄色五月天 | 久热久| 久99热| 丁香六月啪啪啪| 99热在线看| 日夜夜久久| 青青草六月丁香| bbwcuckold精品熟妇| 丁香婷婷网| 9久久久久| 免费播放片大片| 色五月婷婷激情基地| 色婷婷亚洲综合网站| 日韩av一区二区在线/日产精品久久久| 婷婷99| 日韩啪啪视频| 久久曰曰| 999热在线视频| 欧美啪啪9| 人妻内射视频| 在线综合网| 亚洲天天操| 五月激情站| 婷婷五月激情六月| 欧美激情综合色综合啪啪五月| 91成人性爱视频| 五月天婷婷无码| 天天拍天天操| 日韩av在线电影| 日本色道视频网站| 久久五月天综合| 91九色网| 久久一级AV| AV操操操| 激情视频综合| 国产成人网| 色播五月| 中国女人做爰A片| 久久久久久久11111111111| 欧美五月停| 97男人天堂| 色播五月综合网| 色三级色三级| 激情婷婷内射| 狠狠干青青草| 婷婷五月综合亚洲| 丁香五月色五月| 久久激情五月婷婷| 免费视频WWW在线观看网站| 色婷婷六月| 第四色色六月色综合| 狠狠久久婷婷| 九九久久精品| 天天日日天天| 五月天婷婷色综合| 午夜成人AV在线| 婷婷五月花| 五月成人丁香av91| 久久亚洲天堂| 99视频超级精品| 五月天成人在线| 亚洲欧美婷婷五月色综合| 国产亚洲在线观看| 国外亚洲成AV人片在线观看| 六月婷婷AV| 久久99免费视屏| 亚洲精品性色| 婷婷五月综合社区| 青青青在线视频国产| 久热99狠| 大香蕉婷婷五月天| 99热这里有精品24| 一起草无码| 97精品人人A片免费看| 99re免费视频| 国产99美少妇| 人妻啪啪啪| 丁香九月婷婷| 五月婷婷七月丁香| 777.色色| 色色亚洲| 91919191919久久成人视频| 性爱网六月丁香| 亚色网站小视频| 综合网激情| 九月婷婷综合| 97碰碰视频| 激情五月五月五月婷婷| 久99在线视频| 婷婷99视频全集高清| 九九re精品视频在线观看 | 9月色婷婷| A短视频免费在线观看| 丁香蜜臀黄色婷婷五月天| 激情五月天色爱| 天天日综合| www.久久爱.c n| 婷婷激情五月天亚洲综合| 丁香五月婷婷啪| 中文字幕高清av| 99热香港| 午夜丁香| 五月天婷婷色情| 激情五月婷婷综合视频| 亚洲国产成人综合| 色综合久久综合| 一本综合丁香日日狠狠色| 色五月婷婷在线| 97热在线精品| 99精品免费欧美小视频 | 开心五月天激情网站| 夜夜撸日日操| 欧美日本黄色| 五月天综合视频| 婷婷丁香熟女| 蜜桃婷婷丁香五月天狠狠久久综合| 991国产精选视频在线播放下载| 亚洲AV成人在线观看| se色99| 丁香六月婷| 久久99久久99精品免视看婷| 可以看的av| 久久爱综合| 婷婷五月噜噜| 国产婷伊人| 婷婷一本和五月丁香| 久99视频| 色婷婷五月影视| 色综合久久天天综合网| 99九九视频| www.色婷婷.com| 3DAV亚洲香蕉久久 一区二区| 五月丁香网中文字幕| 六月激情婷婷| 色频玖玖五月天| 婷婷成人五月天成人文学| 九九aV| 久久婷婷五月天懂色| 婷婷97碰碰| 激情婷婷五月| 国产成人综合在线| 色久女| 久9热在线视频| 99热最新| 丁香五月激情婷婷视频| 婷香五月激情视频| 六月丁香激情综合网| 96丁香六月婷婷蜜桃综合久久| 玖玖色综合| 91丨九色丨大屁股| 91操色| 男人操女人高潮91视频| 六月婷婷影院| 秋霞九九无码| 玖玖热视频| 97五月久久丁香婷婷| 91黄址| 综合激情五月四射婷婷| 五月天婷婷小说| 婷婷五月天激情在线观看| 一本色道久久88加勒比| 天天操天天日天天操| 久久38视频| 五月婷婷综合在线| 九九99免费视频| 狠狠狠狠狠| www.minyis.com【JT】币址百万U预算可预付QQ2101460746 | 99热国产| 99久久成人| 涩婷婷视频快播人妻| www.色九月| 天搞天天天天天| 日本欧美成人片AAAA| 丁香九月婷婷色| 欧美日韩五月婷婷| 婷婷五月天色| 婷婷瑟五月天久久综合| 五月天丁香花婷婷| 欧美日朝成人| 五月婷婷激情色情网| 色色色色色日韩午夜激情| 91人操人人人操人| 综合五月丁香久久| 天天干天天av天天射| 激情五月婷婷在线观看| 日本色频| 日韩AC在线免费观看| 神马欧美精| 99人这里只有精品| 亚洲第二AV| 婷婷香五月天| 日撸夜撸日操| 色欲色天天香综合| 国产精品久久久久久久久久免费| 丁香五月天中文字幕| 1024人妻| 天天肏在线视频| 日本片日本片祼观看网站在线看中文版网页在线看 | 婷婷久草| 婷婷五月天香蕉| 99热18| 青青操日本摸摸看看| 大香蕉精品视频| 日本不卡五月婷婷丁香| 91精品在线看| 色www99| 亚洲a色| 日本久久爱| 欧美性二区| 久久女人九九| 亚洲乱码日产精品BD| 97操碰在线视频| 五月丁香婷婷婷婷综合网| 久久久久久久久久91| 色哟呦av| 日韩色色视频| 综合婷婷五月天| 丁香五月综合福利视频导航| 9有码中文| 丁香五月瑟瑟| 天天干,夜夜爽| www.婷婷六月天| 无码色色| 五月天婷婷在线啪啪视频| 婷婷色吧| 日韩成人影片在线观看| 天天日天天插| 91 九色 熟女| 激情网五月天| 久热播这里只有精品| 青青热久久综合| 91成人品| 午夜丁香六月婷| www.第四色99| 专区无日本视频高清8| 啊v视频在线观看| 五月天伊人网| 秋霞三及片| 五月天综合区| 久久这里只有精品07| 99爱爱| 婷婷涩涩五月天| 精品国产a| www.色色色com| 日本人妻伦在线中文字幕| 超碰人人在线| 991国产精选视频在线播放下载| 亚洲视频图片婷婷五月| 五月丁香欧美| 丁香五月亚洲无码| 五月婷婷综合网在线播放| 99五月丁香丁| 黄色AV日韩| 综合色五月天| 五月色婷婷影院| 午夜丁香综合婷婷| 九色在线观看91av| 日本三级片片| 日本色色影院| 久热re在线视频| 啪啪五月综合| 午夜日日| 婷婷五月网图片区| 日韩AV在线免费观看| 五月天激情网址| 大香蕉九九操| 日韩高清久久| 九九re精品视频在线观看| 91碰超| 色色色国产| 五月丁香六月激情综合网 | 色五月婷婷久久| 79精品视频在线观看,| 99精品自拍| 婷婷五月天亚洲综合网| 久热91精品| 亚洲一区国产传媒| 色五月色图| 7777激情基地| 9999久久久久| 久久中文人妻系列| 日本色婷婷久久99精品91| 在线综合婷婷| 婷婷五月丁香综合人妻| 日本色色视频| 色天堂A| 五月丁香| 丁香五月婷婷啪啪| 热91久| 亚洲无码猫咪| 婷婷五月天AV在线| 99熟女| 天天狠狠插| www.丁香五月| 97se视频在线| 99在线观看精品视频| 婷婷五月丁香五月| 91聚色综合网| 色综合偷拍| 91狠狠综合久久久| 99色色最新视频| 激情五月天激情小说| 婷婷五月天Av| 啪啪91| 日噜噜色| 最新色色五月天| 色婷婷欧美在线| 99成人免费热视频| 日本一级一片免费视频| 日韩999| 日本久碰| 99热综合| 久热播这里只有精品| 影视av久久久噜噜噜噜噜三级| 五月天大香蕉| 丁香婷婷老司机久操| 久热综合| 操熟女成人网| 婷婷色网站| www.91五月| 99色热视频| www.五月激情红色| 第四色大香蕉| 欧美私人家庭影院| 97超级操操| 草美女在线观看视频在线播放| 婷婷金品综合视频| 99热这里只有精品9| 激情玖玖综合网| 热99国产精品| 夜夜夜夜夜操| 成人精品在线| 五月丁香最新| 激情网第四色| ww久久| 精品AV无码超碰| 九九99在线免费在线观看视频| 国产高清精品色| 丁香五月欧美| 超碰AV成人| 婷婷激情六月中文| 日韩性视频| 亚洲成人AV电影网| 琪琪秋霞| 丁香伊人网| 激情五月天.色网| 亚洲精品乱码久久久久久按摩观| 婷婷五月视屏| 亚洲国产精品VA在线看黑人 | 国产综合81p| 天天操天天日天天爽| 色啪影院| 九九综合88| 夜夜夜叫天天天做| 26UUU精品一区二区| 五月天激情网址| 婷婷五月天美女视频| www.丁香五月| w婷婷五月婷婷w| 97色色在线视频| 久久五月婷6 9| 五月丁香色婷婷婷基地| 婷婷涩涩五月天| 啪啪色激情五月天| 婷婷激情五月综合丁| 五月天色色网站| 97香蕉碰碰人妻国产欧美| 99性色| 大香久久综合网| 99re思思精品在线观看| 99成人| 色婷婷中文字母五月丁香| 亚洲旡码| 六月婷婷综合久久| 天天操人人干| 亚洲色频| 99成人小视频| 在线视频婷婷| 久久狠狠色| 国产熟妇的荡欲午夜视频| 99视频超级精品| 天天影院色| 色播五月婷婷| 色色激情网| 伊人超碰| 色九网| 色色色999| 色色五月天婷婷| 99操碰| 日本va欧美va国产激情| 这里只有精品视频222| 五月婷婷性爱| 丁香五月影院| 五月天综合| 天天日天天插天天操| 能看的AV| 婷婷AV丁香| 国产小精品| 色色日韩无码| 色99久草在线| 五月丁香六月情| 偷拍91九色| www.久久久.com|