欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,av无码精品一区二区久久,欧美性爱视频不卡一区三区,欧美乱人伦视频在线观看,国产一级牲交高潮

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
返回資訊列表
综合99久久天天综合| 俺去也五月天婷婷| 五月婷婷内射网| 婷婷五月综合社区在线| 一起草AV| 久久9视频欧美| 午夜精品777| 五月丁香六月婷婷成人| 字母不卡码人逼| www.五月天婷婷| 婷婷久久亚洲| 色五月成人网| 99视频精品8 | 日韩欧美一级大黄网站| 日韩无码系列| 亚洲综合碰| 九色婷婷| 欧美精品久久久久久视频观看| 婷婷色五月天色| 色综合久久888| 成 久久| 国产操碰| 色噜噜狠狠色综合日日| 成人在线日韩| 日韩啪啪视频| 国产成人网址| 色噜噜综合网| 婷婷色婷婷亚洲成人| 亚洲成人中文字幕| 日韩黄色AV无码| 成人综合视频网址| 99天堂在线观看免费视频| 五月婷婷丁香五月| 国产一级片| 婷婷月综合| 亚洲99精品欧美一区| 婷婷丁香一月| 人妻自慰高清合集| 日日干天天| 九九久久网| 丁香社区婷婷五月| 色婷婷小说| 亚洲99在线视频| 色另类五月天| 色色综合日韩| 如何安全看伊人婷婷| 婷婷色在线视频| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 九色91视频| 丁香狠狠操| 五月婷婷色色| 国产3p露脸普通话对白| 日韩国产在线精品| av在线免费播放观看| 精品无码久久久久久久久| 香蕉婷婷| 日本一级黄色片。| 97在线天堂| 免费91久久精品| 婷婷丁香社区| 色婷婷久久9.com| 欧美性猛交99久久久久99按摩| 可以看的av| 色色五月天婷婷| 色婷婷导航| 超碰99久久| nvrentiantang av| 99亚州综合精品成人网| 亚洲精品又粗又大又爽A片| 久久免费精彩视频| av婷婷丁香| 91操人人操| 色欲婷婷五月天丁香| 激情小说色五月| 久久婷婷综| 婷婷丁香五月在线观看91| 激情五月婷婷综合秋霞| 熟美女麻豆| 免费看无码视频A级| 91视频综合网| 天天免费成年人视频| 亚洲av免费在线| 99九九综合久久九九| 操久久网| 婷婷性爱无码视频| 1区2区视频| 一级A片天天操夜夜操| 国内一级精品| 天天爽天天弄| 欧美五月婷婷| 色婷婷小说网| 婷婷9月天| 九九九九中文字幕| 国产色丁香| 狠狠干在线视频| 天天爽夜夜爽夜爽精品| 久久色婷婷| 色屌丝中文字幕| 色五月婷婷五月天| 激情婷婷视频在线| 婷婷激情五月吧| 99免费综合网| 三级大香蕉网| 色五月在线观看| 亚洲亚洲人成综合网络| 色综合久久88色综合天天看| 亚洲精品无码久久| 99在线免费视频播放| 另类视屏| 久久这里只有欧美| 国产精品美女久久久久AV超清| 大香伊人久色| 日日夜夜狠狠婷婷色| 国产99视频永久免费| 丁香五月激情图片| 丁香五月性| avh片在线观看| 人人操插| 丁香桃色网| 99精品综合视频| 伊人激情综合| 狠狠肏综合网| 亭亭五月色男人| 青青草原亚洲久| 丁香六月激情| 99热这里只有精品4| 99久久6| 亚洲六月综合激情久久下卡| 色婷婷综合久色AV五色最新| 六月婷婷综合| 中文字幕无码人妻少妇免费视频| 五月婷婷啪| 99热无码| 婷婷色五月大香蕉在线| 亚洲中文丁香| 久久婷婷五月天| 亚洲色综合性| 人人天堂操| 人人草人人视| 国内9l视频自拍老熟女九色| 激情六月天| 丁香综合日产精品久久| 九九视频精品这里只有| 99re思思热久久| 4399精品一区二区| 婷婷五月中文字幕国产| 97在线观视频免费观看| 天天色一道本综合婷婷| 丁香婷婷基地| 五月丁香色情| 亚洲色综合| 综合九色| 天天插综合| 91男人操女人视频| 久久成人综合五月天| 91干| 99久久综合网| 五月婷婷香| 4399人妻无码久久久| 色久综合天天做视频| 51国精产品自偷自偷综合| 日本天堂免费99| 五月 婷婷 成人| 久久精品A片777777| 久久久人妻不卡| 婷婷综合一二三| 婷婷丁香五月基地| 日韩野外 无套| 丁香六月婷婷社区| 亚洲超碰在线| 桃色伊人在线| 97色综合视频| 婷婷色综合| ...婷婷五月综合不卡,国产在线手机| 五月天婷婷激情| 国产成人亚洲综合亚洲| 日本天堂免费99| 黄急一级视频| 日日.c| 狠狠色婷婷丁香五月| www.色擼擼.com| 97干干干丁香| 欧美草久久五月天91| 婷婷综合中文| 天天狠天天叉| 五月丁香91| 色五月婷婷在线| 日本婷久久| www.婷婷,com| 九九综合视频在线观看| 99riav 亚洲| 国产五月天激情小说| 亚洲色啪| 丁香五月23111| 国产97在线日韩亚洲女人被黑人巨大| 婷婷五月天熟妇| 九九热在线视频| 婷婷99狠狠躁天天| 噼里啪啦完整版中文在线观看| 亚色网站小视频| 五月丁香av在线| 国产肥白大熟妇BBBB视频| 五月婷人妻| 天天色天天| 丁香五月婷婷欧美成人色图| www久久久| 久久这里只有精品1| 国产在线视频1234| 中文字幕无码人妻少妇免费视频| 粉嫩AV久久一区二区三区| 九九热99re8热免费观看| 噜噜噜久久| 婷婷一本和五月丁香| 色五月综合激情网| 狠狠人妻色综合| 欧美极品999| 夫妇交换刺激做爰| www.久久综合| 五月久久噜噜| 六月丁香婷婷色狠狠久久| 97久久精品| 婷婷五月在线免费| 婷婷色色色| 久久综合婷婷五月| 伊人久久婷婷五月天激情四射| 真实的国产乱XXXX在线91| 色婷婷久久综合久色综| 丁香六月AV| 久久您您综合网| 亚洲另类视频| 婷婷色五月亚洲| 日韩精品一曲二曲三曲四曲五曲| 大香蕉九九| 久久性爱网| 亚洲精品99| 亚洲精品五月| 91日本在线| 久久五月天激情| 婷婷五月六月丁香综合| 婷婷五月激情网站| 久久婷婷桃花五月天| 五月丁香久人妻中文| 丁香亭亭久久| 日韩黄色网络| 丁香六月在线综合| 色五月六月| 天天天天天久久久久久| 玖玖视频福利| Caop在线| OYIWbGcPu8H| 色五月婷婷久久| 国产精品日韩十五区| 五月丁香综合激情| 看逼中文字幕| 久久视9精| 色综合天天综合成人网| 天天操夜夜肏| 丁香五月婷婷姐| 久99久99精品免| 大地9中文在线观看免费高清| 韩国激情五月天综合网| 天天天天做夜夜夜夜做| 亚洲性爱干干| 夜夜夜天天操| 天堂综合久| 久久久五月激| 天天干夜夜谢| 亚洲看av的网站| 亚洲AV成人精品日韩在线播放| 中文不卡av| 在线只有精品| 国产亚洲在线| 狠狠干天天内射| 色在线99| 91成人电影| 丁香五月伊人| 91久久人人操| 色播激情| 久久久久久久久久久44| 91干在线视频| 色九九一二| 99燥99日| 日本人人超碰| 久久黄色片| 狠狠色丁香| 一本久道综合色婷婷五月| 色色色色色色色色综合网| 噜噜噜噜在线| 午夜电影网VA内射| 五月天成人在线播放丁香| 婷婷5月色| 综合网色| 另类色视频| 色狠狠五月天| 色色综合成人网| caop在线视频| 国产免费AV在线| 天天拍天天操| 欧美精品XXXXBBBB| 超pen个人视频97| 久久精品五月| 婷婷九九| 色五月婷婷在线| 日韩黄色网络| 日本综合久久| 日本婷婷综合精品| 婷婷五月深爱五月| 色色a| 婷婷九色| 色色激情五月天| www久| 激情五月天丁香| 三级黄网站| 91碰碰碰| 能看的av片| 这里只有精品久| 久久在线人妻| 狠狠狠狠狠狠| 欧美25p| 在线看片av| 天天插综合网| 激情涩播| 在线观看av网站| 久月婷婷| 日韩av干| 99精品国产在热久久婷婷| 色婷婷丁香五月| 99热大香蕉| 亚洲激情婷婷| 91狼友视频在线观看| 色丁香五月婷婷综合久久| 亭亭玉月丁香| 97干婷婷| 国产午夜成人免费看片无遮挡| www.com亚洲网站在线免费| 天天舔夜夜操www com| 亚洲视频99| 亚洲亚洲人成综合网络| jiujiu热在线视频| av久热| 六月色 亚洲| 五月香蕉综合| 操操碰| 噜综合| 99热这里只有精品手机在线观看| 久久亚洲激情五码| 亚洲人妻av| 就爱日五月天| 久久这里只有精品5| 丁香五月天激情小说| 婷五月天| 狠狠精品干练久久久无码中文字幕 | 青青.com| 亚洲视频99| 天天干天天色综合| 亚洲国产色婷婷| 婷婷五月天色色| 五月天婷a| 国産精品| 香蕉99网| oumeisesewang| 色五月婷婷色五月| 色色热| 日本久久9| 热九九在线| 五月激情五月婷婷五月天在线| 久久久久亚洲AV无码网影音先锋| 婷婷婷婷婷婷婷婷婷婷丁香| 丁香五月影院| 色99在线观看| 婷婷色情 | 69午夜成人影片| 婷婷五月综合社区| 色一区高清| 婷婷久久五月| 婷婷五月天淫荡| www久久99com| 五月婷婷与六月丁香图片激情| 人与禽A片啪啪| XX久久| 伊人狠狠操| 99久久久99久久91熟女| 日韩av在线免费观看| 亚洲色欲AAAAAA| 丁香六月婷婷| 香焦网五月天| 天天狠天天叉| 99精品丰满| 激情婷婷五月黑人| 亚洲妇女熟BBW| 影音先锋噜一噜| 色五月丁香五月天| av网站免费在线| 国产伊人五月天| 婷婷丁香宗合888| 亚洲殴洲精品Av在线| 成人婷婷色五月天| 超碰久热| 五月丁香婷婷在线综合蜜桃| 99热97| 色吧五月婷婷| 色九月婷婷综合| 久久网址99热| 一级性爱视频| 久久成人性爱| 超碰色碰碰| 久久怡红院| 97碰碰人人| 97碰碰视频| 五月天开心激情综合网| 丁香五月 激情文学| 中文字幕 久久9999| 久久9视频| AV中文在线| 五月婷精品| 久久大香蕉视频| 伊人丁香花综合影院| 色五月激情五月| 国产婷婷综合| 激情五月婷| 思思热天天看| 大香蕉伊人久久| 色婷婷香蕉| 色婷婷香蕉| 色婷婷欧美| 久久资源网五月婷| 欧美激情丁香五月| 99热精品在线在线| 欧美英丁香开心快乐六月天网| 国产古装妇女野外A片| VA国产在线综合网站| 99色综合| 五月丁香六月婷婷久久久综合| 欧美综合五月天婷婷tin| 深爱激情六月| enecarbon-materials.comWu染请涟系Bao护@wip1688 | 精品人妻久久久久久| 中文字幕无码成人电影| 国产激情在线| 99噜噜噜在线播放| 1024国产在线| 丁香五月Av| 亚洲综合另类| 综合色播| 丁香五月开心五月激情| 啪啪操超碰| 婷婷九月激情| se99在线| 婷婷色五月天色| 激情久久久久久| 婷婷99| 丁香五月在线人妻| 任你干嘛免费视频播放| 日韩无码系列| 91人无码久久久久久| 天天日天天爽| 丁香六月婷婷久久综合| 五月婷婷丁香六月| 九九热最新| 99久久激情视频| 五夜丁香| 91热在线| 婷婷综合久久| 五月丁香免费看| 99九九综合久久九九| 直接看的AV| 日本久久爱| www.ppypp| 好好干av| 天天色,天天日,天天做| 人人人人人人人草| 99国产这里只有精品| 五月婷综合网| 久久99热久久99精品| 婷婷五月色亚洲| 色五月婷婷啪啪五月| 九九在线免费观看| 色婷婷色人人射| 日本性激情色播| 丁香婷婷射| 伊人婷婷激情| 色久五月| 深爱激清网| 丁香六月欧美| A片一曲| 婷婷99狠狠躁天天| 中文幕无线码中文字蜜桃| 亚洲日韩乱码一区二区三区四区| 8050一级网| 九九久久腿| 97ai婷婷| 99精品久久久久久久婷婷| 色综合色色| 激情五月深爱五月| 99亚洲色色| 色五月色五天免费视频| 婷婷五月天堂| 香蕉久久国产AV一区二区| 俺也去五月婷婷丁| 五月天大香蕉AV| 一二区成人电影| 亚洲啪视频| 99开心五月五月丁香激情| 激情丁香婷婷六月天| 五月婷久久综合| 伊人婷婷五月天| 丁香五月天在线直播观看| 另类精品视频在线观看| 天天做天天爱天天高潮| 97超级碰| 丁香六月啪| 99爱免费在线观看| 色婷婷综合影院| 99免费| 少妇水多A片太爽了| 激情婷婷护士激情| 亚洲sesesese| 亚洲视频99| 婷婷五月天综合在线| 国产高清av黄色看片| 99热999| a色色片| 久久黄色片| 欧美性爱五月天| 在线观看免费观看在线9久| 激情 婷婷| 丁香五月婷婷少妇| 女人天堂久久| 99热午夜精品| 蜜乳9188| 9久热在线视频精品| 婷婷五月天激情网| 婷婷五月天激情综合| 操逼123网| 激情综合网五月| 超碰只有精品在线| 99热天堂| 五月丁香偷拍| 狠狠色噜噜狠狠狠狠狠色综合久久| 97久久精品| 六月色色婷婷| 丁香五月性| 99亚洲精品视频| 亚洲麻豆乱码国产2028| 婷婷五月天小说| 五月香蕉婷婷| 99re鈥哸鈥唙| 午夜天天精品视频| 色婷婷五月天激情久久| 伊人AV五月婷| 91制片厂久久久国产电影| 五月综合亚洲色| 婷婷五月电影| av在线免费网站 | 婷婷国产日本欧美| 丁香五月激情综合| 色五月天丁香婷婷| 日本丁香五月| 91操在线观看| 激情性五月天免费小说视频 | 97碰碰人人| 99热思思| 久久大香蕉伊人| 丁香五月婷婷激情中文| 丁香婷婷欧美综合| 草婷婷在线| 香蕉AV福利精品导航| 色九亚洲| 婷婷婷婷婷婷婷五月丁香| 国产日韩av片| 日韩av在线电影| 激情视频91| 五月激情综合网| 亚洲成人AV在线| 看久久性爱99视频| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 色色婷五月天| 激情文学综合婷婷五月天丁香花| 26uuu欧美日韩| 六月婷婷综合| 色99视| 99噜噜噜在线播放| 丁香5月啪啪| 亚洲电影在线观看| www五月天激情com| 丁香五月久久社区| 五月丁香在线| 五月天久久婷婷| www.久久99| 激情av| 人人摸人人干| 米奇影视资源婷婷狠狠色激情欧美五月丁香 | 成人色五月天| 丁香五月天影院| 婷婷丁香五月在线播放| 人橾人| 精品婷婷| 日日夜夜爽爽| 婷婷99狠狠躁天天躁中文| 区美毛片子| 91热视频色网站| 操碰91| 久久er+| 999热在线观看视频| 五月天婷婷爱| 91性高潮久久久久久久久| 狠狠综合网| 色狠狠伊人久久五月丁香| 久久大大香| 激情六月色| 九九久久精品| 91re色综合视频| 色综合五月天| 天色综合网站| 久久激情天堂| 日本欧美成人片AAAA| 五月丁香花激情综合网| 51XX午夜影福利| A片试看50分钟做受视频| 五月草视频| 五月婷丁香| www.色色色com| 色五月婷婷影院| 激情五月天开心网丁香无码| 亚洲另类av| 亚州美女| 丁香激情网| 涩涩婷婷五月| 色999五月色| 婷婷五月丁香基| 91人人网| 久久久久思思热| 久99热| 婷婷五月综合中文字幕| 天天噜噜| 日日噜噜夜夜狠狠久久丁香五月| 玖玖资源部在线播放| 99免费青青蜜臀| 丁香五月大香蕉| 99九九视频| 色综合xx| 丁香五月色| 四射综合网| 少妇性BBB搡BBB爽爽爽视頻| 亚洲AV成人片无码网站| 一本久道综合色婷婷五月| 成人精品一区二区三区四区五区 | 99色嘟嘟精品网站| 久久久18| 欧美内射AA| 天天插天天日| 久久久久思思热| 国产99精品免费视频| 五月丁香自拍| 99小视频在线观看| 日操熟女| 国精产品一区一区三区免费视频| 婷婷午夜天| 狠狠色大香蕉| 日本人人xxx| 丁香五月婷婷啪| 色情五月丁香| 91AV婷婷| AV网站免费在线| 婷婷激情四射五月天| 欧美成人AAA片一区国产精品| 日本久久网| 丁香激情四射| 99亚洲视频| 九九这里有精品| 成人视频婷婷| 欧美激情凹凸丁香网| 五月天自拍网| 色亚洲色宗合| 春色激情第四色| 五月天激情四射| 色5月婷婷| 99ri精品| 开心五月六月婷婷| 只有精品在线观看| 婷婷欧美色| 五月天婷婷基地丁香| www狠狠| 色综合色| 这里只有精品,日韩视频| 人妻自慰在线| 丁香五月天激情AV| 思思re视频在线| 99热这里只是精品| 国产成人+亚洲+欧洲| 亚洲 六月 综合| av五月天婷婷丁香| 精品久久人妻| 999婷婷综合| 色综合久| 国产成人精品一区二三区熟女在线| 国产精品日本一区二区在线播放| 丁香花大香蕉婷婷综合| 五月丁香综合久久夜夜| 五月丁香成年黄色| 久久草大香蕉| 激情五月天之五月婷婷| av人人操| 五月天激情四射网站| 国产67194| 久久久久久久人妻| 五月婷婷丁香五月| 色99在线视频| 天天操天天操综合| 99热a片免| 日韩人妻在线观看| 色婷五月天| 99re8热精品免费视频| 五月丁香趴趴| 91精品91久久久中77777| 99aese| 天天做天天爱天天玩| 亚洲成人网站在线观看| av中文网| 国产av基地| 久久亚洲色导航| 丁香涩涩爱| 91精品久久久久久| 97爱艹婷婷开心丁香激情综合| 久久久久久久久久久久久久久久一道本| 亚洲视频无| 五月网激情| 免费观看欧美成人AA片爱我多深 | 天天撸天天干天天插| 成人版视频在线观看| 五月丁香婷婷色| 熟女国产在线一区二区三区四区| 99久久婷婷| 五月宗合激情网| 色婷婷综合网站| 97luluse| 综合网色| 婷婷五月天天天| 天天色播| 26UUU欧美激情一区二区| 啪啪啪啪五月天| 99色五月| 日本波多野结衣视频| 婷婷伊人綜合中文字幕| 十月色综合| 亚洲av综合网| 墨西哥毛片内射精| 五月天色婷婷小说| 色色色色五月| 99热超碰天堂网| 五月的丁香六月的婷婷| 丁香六月婷婷综合| 色射7856五月天激情四射| 蜜臀A∨在线水帘洞| 亚洲色网络| 青青草国产亚洲精品久久| 涩综合网| 91九色中文字幕女在线观看| 久久99激情五月天| 婷婷五月天激情在线观看| 久久综合五月天| 一区二区三区四区牛| 黄涩毛片| 久热免费| 中文无码婷婷| 丁香五月开心亚洲| 色欲久久久久| 日本猛少妇色XXXXX猛叫| 五月婷婷六月丁香综合| 欧美五月婷婷| 婷综合六月| 精品免费99| 色综合色色| 俺来也综合网精品一区| 97精品自拍| 日本97在线| 亭亭玉月丁香| 98色丁香五月婷婷综合网| 色五月丁香五月婷婷五月成人网| 国产美女无遮挡裸体毛片A片| 婷婷色导航| 日本在线va| 日韩国产在线免费观看| 婷婷丁香成人五月天| 久久久久久久91| 五月丁香狠狠地噜噜噜噜| 免费观看全黄做爰的视频| 丁香六月天婷婷在线| 国产在这里只有精品| 色碰碰视频| 色婷婷导航| 日韩99视频| 99综合一区| 九九re精品视频在线观看| 日本99在线视频| 91在线日| 丁香六月啪| 激情开心五月婷婷| 九色视频这里只有精品| 日韩在线视频中文字幕| 天天做天天爱高潮片| 久久久久er热| 梁铮版蜘蛛女在线观看| 蜜臀AV在线观看| 色五月婷婷激情五月| 色色色色欧美| 九九热在线视频观看| 男人視頻站| 99热这里只有精品在线观看| www.精品99| 亚洲免费婷婷| 精品婷婷五月天| 五月丁香六月片| 五月婷婷无码| 婷婷四色五月| 婷婷涩涩网| 色综啪啪| 色婷婷亚洲| 狠狠香婷婷五月| 黄色中文字目| 五月天婷婷综合| 婷婷久久亚洲| 日本强伦片中文字幕免费看| 久热这里只有精品在线| 国产精品色婷婷久久久精品| 婷婷色中文字幕| 青青草日本亚洲| 婷婷终合色图| www.色综合| 天天做天天爱天天玩夜夜爽| 伊人五月天97| 久草五月| 色色AV色色色东莞| 婷婷成人综合| 亚洲精品无人区| 欧美啪啪五月天| 婷婷在线精品| 久久久久久丁香五月| 91日视频| 久久er99热精品一区二区 | 任你搞网站| 五月激情综合网| 丁香六月婷婷综合缴| 77799热| 欧美色色日韩| 99热这里都是精品| nvrentiantang av| 色。 日日日| www狠狠com| 免费看欧美成人A片无码| 五月婷婷之综合激情| 五月婷五月婷伊人伊人五月婷| 玖玖@三月天天丁香婷婷| 丁香五月天堂| 色婷婷www| 97干婷婷五月天| 色色色综合色| WWW色色色COM| 国产精产国品一二三在观看| 九九热视频在线观看| 激情五月综合色婷婷| www.五月婷婷.com| 丁香五月 性爱| 国外亚洲成AV人片在线观看 | 日日夜夜干| 91人人操人人爱| 丁香久久久| 大香蕉婷婷丁香| 亚洲无码九九九| 欧美性猛交XXXX乱大交极品| 天天肏在线观看| 婷婷综合六月| 成人羞羞啪啪 全 视频| 成人AV中文字幕| 伊人香大香蕉视频| 级情九色| 91啪啪视频| 色婷婷综合影院| 五月丁香龟婷婷| 婷婷色五月天第7色| 九九久久99精品免费观看www| 久久激情四射| 99在线精品免费视频| 婷婷五月丁香五月| 九热视频| 九九99精品| 亚洲婷婷基地| 人人摸人人干| 99这里只有精| 五月丁香六月婷婷国产视频| 激情婷婷丁香色情五月天| 激情网战码亚洲A| 99自拍视频在线观看| 色呦呦美女| 99热天堂| 丁香五月人妻| 综合激情在线| 五月丁香啪啪网| 国产99久久久| 操人91| 久草婷婷| 26uuu视频欧美| 、激情六月天| 亚洲无线视频| 深爱激情中文五月天av| 5月激情天| 色一区高清| www.av视频xx999.com| 狠色综合网| 国产VA播放| 人伦30P| 综合欧美五月婷婷| 天天摸天天舔天天爽| 婷婷五月激情丁香激情| 91啪级电影| 特级片神马电影| 亚美欧色影院| 婷婷色在线播放| 婷婷久久久久| 色五月激情五月| 碰97 久| 日本丰满久久| 欧美性爱中文字幕| 丁香五月婷婷啪| 亚洲小视频免费观看| 色五月av伊人| 婷婷九月激情| 丁香五月婷婷在线观看| 日91高清无玛| 99亚洲精品视频| 亚洲V国产V欧美V久久久久久| 五月成人丁香av91| 超热久碰.com| 丁香五月天在线视频| 无码激情精品色婷婷久久久久| 另类小说五月天综合网| 婷婷五月天激情基地| 99色热视频在线| 99热这里只有精品中文字幕| 337p大胆噜噜噜噜噜91Av| 99热成人| 美女被肏网站在线看| 91精品久久久久久久久久| 五月婷婷黄网站大全| 超碰二区| 丁香久色| 五月婷婷综合丁香视频| AV成人在线播放| 99视频内射三四| 亚洲第一成人无码A片| 激情婷婷视频在线| 天天想夜夜爽天天爽| av在线色五月丁香婷区久| 天天日天天舔| 99热只有| 婷婷综合日本| 婷婷性爱无码视频| 神马欧美精| 国产精品扒开腿做爽爽爽A片唱戏| www.婷婷五月天,com| 五月丁香婷婷综合| 五月开心深深爱激情综合| 国产亚洲精品久久一区二区三区| 性一交一乱一交A片久久四色| 久久综合最新网址| 婷婷色导航| 色五月激情婷婷| 久热这里| 高清国产AV| 日本成人小说婷婷六月| 婷婷五月综合在线| 墨西哥毛片内射精| oumeisesewang| 91九色国产熟女| 丰满少妇猛烈A片免费看观看| 一起草无码| 热99精品视频| 婷婷五月天色色| 啪色综合| 天天爽日日爽夜夜爽| 99网| 婷婷导航| 99这里热| 亚洲永远av在线播放| sS丁香五月婷婷| 国产婷婷综合在线免费视频| 精品操逼一区二区| 日韩成人无码人妻| 婷婷五月天激情小说| 色色婷婷综合| 色A网| 99久在线精品99re8热| 97久久五月丁香婷婷| 欧美激情2025| 香蕉久久国产AV一区二区| 色五月色图| 99精在线| 波多野结衣不卡AV| 五月www| 五月丁香综合啪啪| 久久99婷婷| 色婷婷a v| 我想看国产大学生口爆吞精的视频| 俺也去在线久久精品23欧美综合视频网站,丰满人妻一区二区三区在线视频53,丰满 | 久人人操| 丁香六月婷婷姐网| 色色亚洲五月天| 99re99在线看| 中文字幕在线资源| 九九色综合网| 九月激情综合| 五月婷婷婷综合网| 欧美日本黄色| 一月婷婷色色| 久久久婷婷五月亚洲97号色| 色婷婷文字幕| 野战毛片三一3| 搡BBBB搡BBB搡五十| 99热精这里只有精品| 性色做爰片在线观看WW| 99视频自拍| 日本色频| 黄网在线播放| 色激情综合狠狠婷婷| 五月丁香激情综合| 日本激情ⅩXX免费视频| 亚洲精品成人| 婷婷五月天日本国产| 综合久久婷婷| site:minyis.com| 亚洲色婷婷| 26uuu美女三级视频| 99日韩| 色婷婷五月色| 婷婷五月天AV| 久久五月天激情美女| 伊人久久婷婷| 天天天添天天操| 九九激情| 国产色网站| 中文字幕在线免费观看视频| 九九热在线99| 高清激情av在线观看| 五月天激情四射| 颜射 精品性爱av| 婷婷碰碰| 日韩在线观看亚洲| 开心婷婷五月天综合| 97精品人人A片免费看| 五月丁香基地| 色五月激情综合| 夜夜操天天干| 久久只这里有精品| 综合久久激情久久| 日韩三级高清无码| 91精品婷婷国产综合久久| 开心五月深爱五月| 婷婷深爱五月丁香网| 丁香六月婷婷综合欧美| 日本婷婷| 天天夜夜操| 99操无码视频观看| 99热最新网址| 夜夜操夜夜操| 亚州色婷婷| 婷婷色色网站| 五月综合激情| 中文字幕1区2区。| 亚洲色网络| 六月99天天婷婷激情综合| 在线视频区| av在线色五月丁香婷区久| 亭亭五月基地在线| 疯狂做受XXXX高潮A片| 九九视频热| 99re热在线观看| 色情婷婷| 这里只有精品在线视频在线观看| 久久只有精| 丁香五月激情五月| 丁香五月婷婷基地| 五月丁香激情深爱婷婷| 97人凄人人操人人爽| 久热A片| 欧美日韩成人在线| 日日舔夜夜操| 九九精品在线视频观看| 丁香五月性爱| A片一曲| 79色色色色| 热九九在线| 99久久五月丁香野外| 桃色五月婷婷| 成人丁香| 99re这里有精品手机在线| 日本久久高清| 色婷婷色综合| 99在线精品免费视频| 色五月激情| 丁香五月婷在线观看| 丁香五月花婷婷开心| 97视频.干com| 丁香婷婷综合喷| 欧美搡BBBBB摔BBBBB| 婷婷九九| 另类综合婷婷五月天欧美视频| 五月花综合网| 久久电影4399| 婷婷94s| 夜夜骑夜夜操| 99九九视频精彩在线| 天天爽夜夜爽| 婷婷五月天va| 日本一级一级一级一级| 五月婷天堂视频| 精品一二三区久久AAA片| 婷色五月| 99操无码视频观看| 五月婷婷中文| 人人天堂操| 丁香五月综合色婷婷| 九九这里是免费的视频5| 久9热插入| 涩五月婷婷| 91碰碰| 色碰碰| 新激情五月天天在线网| 九九久久99| 这里只有精品视频看看| 婷婷久久性爱| 日韩视频女神99| 婷婷五月天大香蕉在线视频观看| 久久人人添人人爽添人人片αV| 五月丁香色婷婷| 五月开心网| 五月丁香影视| 日日干天天| 九九干视频| 五月丁香色综合| www.激情| 思思久久99热只有频精品66| 婷婷色丁香六月| 丁香六月激情网C0W| 久久激情五月网| 色爱终和网| 欧美综合激情丁香五月六月婷| 丁香五月天在线| 丁香五月婷婷色情综合| 色婷婷五月中文字幕在线dvd| 亚洲激情婷婷| 色婷婷激情| 成人综合AV| 大香蕉精品视频| www.色婷婷.com| 国产超碰在线| 丁香激情综合| 色情久久久| 亚洲色亚洲精品| 欧美色色色色色| 久久超视频| 五月婷婷六月丁香| 在线看片av| 99综合网| 夜夜爽77777妓女免费下载| 操97在线观看| 久久女人九九| 91干在线| 五月婷婷高清| 区区久久妻| 久久婷婷五月草视频在线播放| 丁香婷五月天| 伊人深爱综合| 天天日天天色| 日本三级大片| 97色吧| 成人午夜视频精品一区| 9九九久久精品无码专区| 99re免费视频| 综合色情网| 婷婷丁香五月天影院 | 色综合色综合网| 色婷婷丁香五月| 97碰 在线视频观看| 国产人人操| 国产日产成人亚洲欧美国产VA| 激情图片婷婷| 丁香五月在线观看| 久噜久噜| 色色亚洲99com| 久久大香免费| 开心五月六月婷婷| 日日操,天天操| 婷婷天堂综合| 99热 精品在线| 久久9999| 欧日韩AV| 超碰猛烈的性猛交| 九九伊人网| 影音先锋综合网| 婷婷丁五月| 五月天婷婷基地| 五月婷在线| 艹天天射| 丁香婷婷人妻| 亚洲激情视频网| 五月丁香欧美在线| 在线视频你懂得| 久久这里只有精品视频15| 亚洲小电影在线观看黄999| 超碰在线观看成人视| 日韩好吊操| 色播五月婷婷| 色欲色欲久久宗合网| 9热在线视频| 99 频99热国里只有精品| 五月天色在线| 激情第四色| 婷婷亚洲在线| 99色色热| 色综合色色| 国产AV一区二区三区最新精品| 1024AV视频| 日日噜狠狠色综| 超碰97人人操| Av免费网站在线| 色日本丁香婷婷| 国产婷婷五月色情综合| 丁香六月婷婷久久综合| 91九色视频在线观看| 色五月天在线| 六月色婷婷| 国产1区2区3区| 岛国AV网站| 99在线精品观看99| 永久免费视频| 色综合色色色| 五月婷婷亚洲天堂97色婷婷| 婷五月天在线草| 婷婷精品视频| 成人短视频在线免费观看| 婷婷五月天激情丁香| 色婷婷成人做爰A片免费看网站 | 亚洲综合在线播放| 欧美日本va| 欧美成人在线观看| 91一起操| 成人综合视频在线| 六月婷在线| xxxx五月| 激情婷婷丁香| 天天爽成人综合网站| 色婷婷六月天| 日本操片| 狠狠狠狠狠干| 婷婷激情五月天激情小说| 精品无码99| 桃色五月婷婷| 五月天婷婷激情干干| 香蕉人妻AV久久久久天天| WWW色五月天| 狠狠干综合| 色狠狠色综合久久久绯色AⅤ影视| 51国精产品自偷自偷综合| 丁香五月激情啪啪啪啪| 天天情天天狠天天透| 狠狠做深爱婷婷久久综合一区|