99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

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

基于JSP+Servlet+MySQL的智能小區(qū)物業(yè)管理系統(tǒng)實(shí)戰(zhàn)解析

基于JSP+Servlet+MySQL的智能小區(qū)物業(yè)管理系統(tǒng)實(shí)戰(zhàn)解析 很多人做JavaWeb課程設(shè)計(jì)或畢業(yè)設(shè)計(jì)時(shí)第一反應(yīng)就是去網(wǎng)上找個(gè)Spring Boot Vue的模板改改數(shù)據(jù)庫(kù)交差完事。但真到了答辯或復(fù)試一問事務(wù)怎么控制的一問Servlet生命周期直接卡殼。我前陣子帶著一個(gè)學(xué)弟把這個(gè)“基于JavaWeb和MySQL的JSPServlet智能小區(qū)物業(yè)管理系統(tǒng)”從頭到尾完整擼了一遍用的就是最傳統(tǒng)的JSP Servlet Bootstrap JavaScript MySQL那套組合。做完之后我最大的感受是這個(gè)項(xiàng)目看起來“老”但它恰恰是理解JavaWeb底層運(yùn)行邏輯的最佳載體。這套系統(tǒng)不是那種花里胡哨的演示項(xiàng)目它覆蓋了小區(qū)物業(yè)管理的真實(shí)業(yè)務(wù)場(chǎng)景業(yè)主信息維護(hù)、房屋信息綁定、物業(yè)費(fèi)賬單生成與繳費(fèi)、報(bào)修工單流轉(zhuǎn)、投訴建議處理、公告發(fā)布以及最關(guān)鍵的登錄認(rèn)證和權(quán)限控制。技術(shù)棧雖然基礎(chǔ)但五臟俱全。如果你是正在準(zhǔn)備JavaWeb期末項(xiàng)目、畢業(yè)設(shè)計(jì)或者想徹底搞懂Servlet JSP MySQL之間到底怎么協(xié)作的這篇內(nèi)容會(huì)從需求拆解、數(shù)據(jù)庫(kù)設(shè)計(jì)、功能實(shí)現(xiàn)到部署踩坑按我實(shí)際動(dòng)手的思路給你完整過一遍。很多細(xì)節(jié)是網(wǎng)上教程不會(huì)寫的。1. 需求拆解與整體功能設(shè)計(jì)1.1 角色權(quán)限是這類系統(tǒng)的樞紐我以為最開始考慮的不應(yīng)該是“要建幾張表”而是系統(tǒng)給誰用。小區(qū)物業(yè)系統(tǒng)表面上功能很多但剝開看其實(shí)只有三類人拿著鑰匙的業(yè)主、干活的物業(yè)人員、管全局的超級(jí)管理員。業(yè)主端注冊(cè)登錄、綁定房屋、查看自己的賬單、在線繳費(fèi)、提交報(bào)修、投訴、看公告。物業(yè)端處理業(yè)主提交的報(bào)修單、回復(fù)投訴、發(fā)布公告、維護(hù)業(yè)主和房屋信息。管理員端人員管理、角色分配、查看全局?jǐn)?shù)據(jù)比如繳費(fèi)率、報(bào)修量、系統(tǒng)參數(shù)配置。權(quán)限控制如果從一開始沒想清楚后面寫Servlet過濾器的時(shí)候會(huì)非常痛苦。這套系統(tǒng)我采用的是基于“角色標(biāo)識(shí)”的Session控制方案用戶登錄成功后把 user 對(duì)象和 roleId 塞進(jìn) Session后續(xù)每個(gè)需要權(quán)限的Servlet或JSP頁面都先過一遍過濾器。權(quán)限控制的核心不是“頁面隱藏”而是“后端攔截”。很多新手以為只要在頁面上根據(jù)角色隱藏按鈕就夠了實(shí)際上直接訪問Servlet URL是完全繞開頁面的。所以我在項(xiàng)目里寫了一個(gè)全局Filter專門攔截所有 /admin/* 和 /property/* 路徑校驗(yàn)Session里有沒有對(duì)應(yīng)角色的標(biāo)記。1.2 功能模塊劃分要有邊界按業(yè)務(wù)邊界把功能切成四塊后面寫代碼、分工才不亂基礎(chǔ)信息管理樓棟、單元、房屋、業(yè)主檔案這是整個(gè)系統(tǒng)運(yùn)行的地基。收費(fèi)管理賬單生成、繳費(fèi)登記、欠費(fèi)查詢、收費(fèi)統(tǒng)計(jì)這個(gè)模塊最容易暴露SQL和事務(wù)設(shè)計(jì)問題。工單管理報(bào)修單創(chuàng)建、派單、處理進(jìn)度回填、投訴建議處理。運(yùn)營(yíng)支撐系統(tǒng)公告、管理員賬號(hào)管理、登錄日志。邊界劃分的意義在于它是一個(gè)小程序轉(zhuǎn)型為大系統(tǒng)必經(jīng)之路。如果在JSPServlet階段你就有了模塊化意識(shí)以后理解微服務(wù)里的服務(wù)劃分會(huì)自然得多。2. 技術(shù)選型為什么還是JSP Servlet2.1 不是非要守舊而是“裸奔”一次才能理解框架現(xiàn)在做JavaWeb項(xiàng)目絕大多數(shù)教程開場(chǎng)就上Spring Boot。Spring Boot太方便了一個(gè)注解搞定請(qǐng)求映射一個(gè)注解搞定依賴注入。但代價(jià)是你幾乎看不到HTTP請(qǐng)求從Tomcat進(jìn)來之后是如何一步一步走到數(shù)據(jù)庫(kù)再返回頁面的。這套系統(tǒng)堅(jiān)持用JSP Servlet目的就是把這個(gè)鏈路完完整整暴露出來。我讓學(xué)弟自己寫Servlet類自己配置 web.xml自己封裝request.setAttribute和請(qǐng)求轉(zhuǎn)發(fā)。他做完之后說了一句讓我印象很深的話“原來Spring MVC里那些Controller本質(zhì)上就是一個(gè)Servlet殼子?!边@個(gè)理解很值錢。你面試時(shí)如果能把 Servlet 生命周期init - service - destroy、請(qǐng)求到響應(yīng)的流轉(zhuǎn)、JSP本質(zhì)是Servlet這三個(gè)點(diǎn)接上就已經(jīng)碾壓了一堆只會(huì)背框架注解的候選人。2.2 前端增強(qiáng)Bootstrap負(fù)責(zé)“能看”JavaScript負(fù)責(zé)“好用”這套系統(tǒng)的頁面層我采用的是JSP負(fù)責(zé)動(dòng)態(tài)渲染后端數(shù)據(jù)Bootstrap負(fù)責(zé)布柵格和響應(yīng)式布局JavaScript負(fù)責(zé)交互校驗(yàn)和異步請(qǐng)求。Bootstrap在2024年之后雖然熱度不如Tailwind CSS但在課程設(shè)計(jì)、后臺(tái)管理系統(tǒng)這種傳統(tǒng)場(chǎng)景下它依然是最穩(wěn)的選擇。因?yàn)樗幸惶壮墒斓慕M件庫(kù)和柵格系統(tǒng)你不用自己寫CSS只需要把骨架搭好抄Bootstrap官方文檔里的組件結(jié)構(gòu)頁面就不會(huì)丑到哪里去。JavaScript在這套里的角色遠(yuǎn)不止是表單校驗(yàn)。重點(diǎn)用在了以下幾個(gè)地方前后端聯(lián)調(diào)的Ajax請(qǐng)求特別是繳費(fèi)模塊和報(bào)修狀態(tài)輪詢。前端二次校驗(yàn)比如手機(jī)號(hào)格式、金額合法性、必填項(xiàng)控制。操作確認(rèn)彈窗比如刪除業(yè)主前的二次確認(rèn)。動(dòng)態(tài)渲染聯(lián)動(dòng)下拉框比如選擇了樓棟之后單元下拉框要自動(dòng)刷新。值得多說一句JavaScript 判斷數(shù)據(jù)類型是這門基本功在寫表單校驗(yàn)時(shí)天天用。你可以用 typeof 判斷原始類型用 Object.prototype.toString.call() 判斷引用類型。例如判斷某個(gè)值到底是不是數(shù)組Array.isArray 在部分兼容場(chǎng)景下不夠保險(xiǎn)最穩(wěn)妥的寫法是function isArray(value) { return Object.prototype.toString.call(value) [object Array]; }2.3 JDK Tomcat MySQL版本組合我建議的版本組合是組件版本推薦理由JDK1.8 或 8u202兼容性最廣教程多Tomcat99%適配Tomcat9.xServlet 4.0規(guī)范支持Java EE 8MySQL5.7 或 8.05.7部署簡(jiǎn)單8.0功能新IDEA2023.3及以上內(nèi)置Tomcat集成配置順手如果你在Windows 10上折騰MySQL安裝最忌諱的是下載8.x解壓版卻忘了初始化data目錄。8.x解壓版必須執(zhí)行 mysqld --initialize-insecure 才能生成root空密碼實(shí)例5.7用msi安裝包會(huì)更省心。我個(gè)人建議初學(xué)做課程設(shè)計(jì)直接用5.7的msi版一路Next設(shè)置好root密碼就行少踩很多坑。3. 數(shù)據(jù)庫(kù)設(shè)計(jì)表結(jié)構(gòu)決定系統(tǒng)上限3.1 核心表清單及關(guān)系物業(yè)系統(tǒng)的數(shù)據(jù)模型并不復(fù)雜關(guān)鍵是理清幾個(gè)核心實(shí)體的外鍵關(guān)系。我設(shè)計(jì)的核心表如下我知道你急但你先別急著建表先看關(guān)系設(shè)計(jì)表名用途核心字段tb_user所有登錄賬號(hào)id, username, password, role_id, phonetb_owner業(yè)主信息id, user_id, name, id_card, phone, building_id, house_idtb_building樓棟id, name, address, areatb_house房屋id, building_id, unit, floor, room_num, area, statustb_fee_item收費(fèi)標(biāo)準(zhǔn)id, name, unit_price, fee_typetb_fee_bill物業(yè)繳費(fèi)賬單id, owner_id, item_id, amount, status, deadlinetb_repair報(bào)修工單id, owner_id, repair_type, detail, img, status, create_timetb_complaint投訴建議id, owner_id, content, reply, status, create_timetb_notice公告id, title, content, admin_id, publish_time外鍵關(guān)系說白了就是一句話業(yè)主指向用戶和房屋賬單和工單都指向業(yè)主公告指向管理員。3.2 關(guān)鍵設(shè)計(jì)細(xì)節(jié)賬單生成邏輯物業(yè)繳費(fèi)不能是手動(dòng)一條一條錄的那樣會(huì)累死。我的做法是做一個(gè)“自動(dòng)生成月度賬單”的定時(shí)任務(wù)思路每月1號(hào)掃描 tb_owner 表的房屋面積結(jié)合收費(fèi)標(biāo)準(zhǔn)表里的單價(jià)自動(dòng)計(jì)算物業(yè)費(fèi)并插入 tb_fee_bill 表。對(duì)應(yīng)的核心SQL邏輯大致如下-- 把關(guān)聯(lián)查詢出來的結(jié)果插入賬單表這是典型的INSERT ... SELECT寫法 INSERT INTO tb_fee_bill (owner_id, item_id, amount, status, deadline, create_time) SELECT o.id, fi.id, ROUND(h.area * fi.unit_price, 2), unpaid, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), NOW() FROM tb_owner o JOIN tb_house h ON o.house_id h.id JOIN tb_fee_item fi ON fi.fee_type property WHERE o.status active;這種寫法的好處是把業(yè)務(wù)規(guī)則下沉到SQL層而不是在Java代碼里循環(huán)幾百次再一條條insert那性能會(huì)很差。這張賬單表的值班就是“對(duì)賬依據(jù)”業(yè)主繳費(fèi)后狀態(tài)改為 paid同時(shí)記錄繳費(fèi)時(shí)間。3.3 事務(wù)處理不能忘繳費(fèi)不是單純update一條賬單狀態(tài)它往往伴隨資金流水表的插入。這兩條SQL必須在一個(gè)事務(wù)里。自己在Servlet里控制事務(wù)的寫法比較裸但能讓你看清本質(zhì)Connection conn null; try { conn DBUtils.getConnection(); conn.setAutoCommit(false); // 關(guān)閉自動(dòng)提交開啟事務(wù) // 更新賬單狀態(tài)為已繳 String sql1 UPDATE tb_fee_bill SET statuspaid, pay_timeNOW() WHERE id?; PreparedStatement ps1 conn.prepareStatement(sql1); ps1.setInt(1, billId); ps1.executeUpdate(); // 插入收支流水 String sql2 INSERT INTO tb_pay_log (bill_id, amount, pay_type, create_time) VALUES (?, ?, alipay, NOW()); PreparedStatement ps2 conn.prepareStatement(sql2); ps2.setInt(1, billId); ps2.setBigDecimal(2, amount); ps2.executeUpdate(); conn.commit(); // 都成功才提交 } catch (Exception e) { conn.rollback(); // 任何異常整體回滾 e.printStackTrace(); } finally { if (conn ! null) conn.close(); }MySQL默認(rèn)存儲(chǔ)引擎在5.5之后就是InnoDB支持事務(wù)。但如果你在建表的時(shí)候沒注意把表定義成了MyISAM那事務(wù)是不生效的。建表語句一定要帶 ENGINEInnoDB這是排查“為什么回滾無效”的第一根線。4. 項(xiàng)目骨架搭建從零擼一個(gè)JavaWeb工程的步驟4.1 IDEA創(chuàng)建Web工程的正確姿勢(shì)如果你用IDEA 2023不要選錯(cuò)項(xiàng)目類型。正確路徑是File - New Project - Jakarta EE然后勾選 Web ApplicationApplication Server 選你已經(jīng)配置好的Tomcat。如果你建出來發(fā)現(xiàn)沒有WEB-INF目錄直接右鍵項(xiàng)目 - Add Framework Support - 勾選 Web Application。這個(gè)步驟很基礎(chǔ)但我見過太多人在這里翻車。翻車表現(xiàn)是明明建了項(xiàng)目運(yùn)行的時(shí)候卻提示“Artifact未部署”或“404”。原因就是IDEA只在項(xiàng)目文件里生成了一個(gè)空殼沒有生成Web目錄結(jié)構(gòu)。你需要在 web/WEB-INF 下自己補(bǔ) web.xmlTomcat 9 不強(qiáng)制要web.xml但學(xué)了Servlet規(guī)范手動(dòng)配置一次對(duì)理解URL映射會(huì)非常直觀。4.2 web.xml與Servlet注解的取舍當(dāng)前Servlet 3.0 支持用 WebServlet 注解代替 web.xml 配置更簡(jiǎn)潔。但作為學(xué)習(xí)向的項(xiàng)目我還是建議兩個(gè)都用一用。注解方式寫起來是這樣WebServlet(/login) public class LoginServlet extends HttpServlet { Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // 處理登錄邏輯 } }用web.xml配置的方式更傳統(tǒng)但是能把“Servlet類 URL映射”這層關(guān)系展示得極為清楚。其實(shí)項(xiàng)目里真正要注意的是一個(gè)Servlet只負(fù)責(zé)一類請(qǐng)求不要寫一個(gè)超級(jí)Servlet然后url-pattern配成 /*那樣后期維護(hù)會(huì)非常痛苦。4.3 分層思想即使沒有框架代碼也要分包這套系統(tǒng)即便沒有用到Spring我也強(qiáng)行把它分成四個(gè)包entity實(shí)體類對(duì)應(yīng)數(shù)據(jù)庫(kù)表。dao數(shù)據(jù)訪問層只負(fù)責(zé)SQL增刪改查。service業(yè)務(wù)邏輯層處理事務(wù)、判斷、計(jì)算。servlet控制層接收請(qǐng)求調(diào)用service轉(zhuǎn)發(fā)結(jié)果。分層的目的不是多余而是讓你在項(xiàng)目里面對(duì)一個(gè)“修改報(bào)修狀態(tài)”的功能時(shí)知道應(yīng)該去哪一層改代碼。如果所有JDBC代碼全寫在Servlet里面兩千行代碼的Servlet會(huì)讓你懷疑人生。5. 核心功能模塊的實(shí)現(xiàn)解析5.1 登錄鑒權(quán)與過濾器登錄邏輯是每一套管理系統(tǒng)的門神。用戶輸入用戶名密碼后Servlet調(diào)用service層的 login 方法查詢用戶表校驗(yàn)密碼同時(shí)查出角色id存Session。登錄成功之后下一步就是做“已登錄保護(hù)”。寫一個(gè)過濾器攔截未登錄用戶訪問受保護(hù)資源。WebFilter(/auth/*) public class AuthFilter implements Filter { public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws IOException, ServletException { HttpServletRequest request (HttpServletRequest) req; HttpServletResponse response (HttpServletResponse) resp; HttpSession session request.getSession(false); if (session null || session.getAttribute(user) null) { response.sendRedirect(request.getContextPath() /login.jsp); return; } chain.doFilter(req, resp); } }注意這里用的是 request.getSession(false)而不是 getSession()。前者拿不到Session就返回null后者拿不到會(huì)強(qiáng)行創(chuàng)建一個(gè)新Session這會(huì)導(dǎo)致“明明未登錄卻因?yàn)樾聞?chuàng)建的Session繞過了校驗(yàn)”的嚴(yán)重安全漏洞。5.2 報(bào)修工單核心狀態(tài)機(jī)報(bào)修模塊是系統(tǒng)中業(yè)務(wù)狀態(tài)最多的地方。它的狀態(tài)流轉(zhuǎn)是業(yè)主提交工單 - 狀態(tài)為“待分配”物業(yè)主管受理 - 狀態(tài)變?yōu)椤疤幚碇小蓖瑫r(shí)指定維修人員維修人員回填結(jié)果 - 狀態(tài)變?yōu)椤耙淹瓿伞睒I(yè)主確認(rèn)/超時(shí)自動(dòng)確認(rèn) - 狀態(tài)變?yōu)椤耙呀Y(jié)束”狀態(tài)用代碼里定義常量表示千萬不要在數(shù)據(jù)庫(kù)里存中文狀態(tài)值。數(shù)據(jù)庫(kù)只存狀態(tài)碼比如 0:待分配, 1:處理中, 2:已完成, 3:已結(jié)束頁面顯示時(shí)再映射成中文。這樣后期如果要擴(kuò)展?fàn)顟B(tài)不需要改數(shù)據(jù)庫(kù)字典表還能在業(yè)務(wù)代碼里做狀態(tài)合法性校驗(yàn)避免出現(xiàn)“直接從待分配跳轉(zhuǎn)到已結(jié)束”的非法流轉(zhuǎn)。5.3 Bootstrap頁面布局實(shí)戰(zhàn)使用Bootstrap最忌諱的是把整個(gè)頁面代碼全塞在一個(gè)JSP里。我的做法是做一個(gè)公共的 header.jsp 和 sidebar.jsp用 include 動(dòng)作引入。% page contentTypetext/html;charsetUTF-8 languagejava % div classcontainer-fluid div classrow div classcol-md-3 bg-dark text-white p-3 !-- 側(cè)邊欄菜單項(xiàng)根據(jù)角色動(dòng)態(tài)顯示 -- /div div classcol-md-9 p-4 jsp:include pagecontent.jsp / /div /div /divBootstrap的柵格系統(tǒng)本質(zhì)上是12列布局你只要記住 col-md-3 占四分之一的寬度col-md-9 占四分之三搭配起來就能做出一個(gè)經(jīng)典的后臺(tái)管理布局。表格直接套 table table-bordered table-hover表單套 form-control整體效果就已經(jīng)像模像樣了。5.4 JavaScript聯(lián)動(dòng)與數(shù)據(jù)校驗(yàn)頁面交互最常用到的場(chǎng)景是選擇樓棟后單元下拉框自動(dòng)加載該樓棟下的單元列表。這個(gè)必須用Ajax異步請(qǐng)求后端Servlet拿到數(shù)據(jù)再動(dòng)態(tài)渲染下拉項(xiàng)。// 樓棟下拉框change事件 $(#buildingId).change(function () { var bid $(this).val(); $.ajax({ url: /property/loadUnits, type: GET, data: { buildingId: bid }, dataType: json, success: function (res) { var unitSelect $(#unitId); unitSelect.empty(); unitSelect.append(option value請(qǐng)選擇單元/option); res.forEach(function (item) { unitSelect.append(option value item.id item.name /option); }); } }); });這里有個(gè)很容易忽略的細(xì)節(jié)返回JSON之前Servlet一定設(shè)了 response.setContentType(application/json;charsetutf-8)否則前端拿到的漢字會(huì)是亂碼。這就是瀏覽器頁面編碼和后端響應(yīng)編碼不一致導(dǎo)致的經(jīng)典坑放以前你可能會(huì)懷疑是數(shù)據(jù)源亂碼其實(shí)根源就是HTTP響應(yīng)頭沒設(shè)置對(duì)。6. 環(huán)境配置三步走JDK Tomcat MySQL6.1 Tomcat配置的關(guān)鍵不是配了就能跑很多人以為IDEA里集成了Tomcat就沒問題了。實(shí)際上你還需要在Project Structure里加一個(gè) ArtifactWeb構(gòu)建產(chǎn)物然后把這個(gè)Artifact部署到Tomcat的運(yùn)行配置里。如果沒加Artifact啟動(dòng)Tomcat會(huì)直接報(bào)錯(cuò)找不到要部署的包。IDEA 2023版本的配置路徑是Run - Edit Configurations - Tomcat Server - Local - Deployment - Add - 選擇你的項(xiàng)目 exploded。注意 artifact 名字里如果帶 .war 和后面的 exploded 是兩個(gè)東西exploded是解壓目錄方式開發(fā)期調(diào)試用這個(gè)即可。6.2 MySQL連接三大“神坑”我把這個(gè)項(xiàng)目里最常踩到的MySQL連接問題列成了排查速查表。現(xiàn)象根本原因解決方案Could not create connection to database serverMySQL服務(wù)未啟動(dòng)以管理員身份打開服務(wù)面板啟動(dòng)MySQL服務(wù)Access denied for user root密碼不對(duì)或權(quán)限為空用命令行登錄重置密碼Unknown database數(shù)據(jù)庫(kù)名不一致確保連接串里dbName和實(shí)際庫(kù)名一致Public Key Retrieval is not allowedMySQL8.0安全沙箱限制JDBC連接串加 allowPublicKeyRetrievaltrueSSL連接錯(cuò)誤證書校驗(yàn)失敗5.7可以忽略8.0改useSSLfalse并關(guān)掉requireSSL如果你是MySQL 8.0連接串盡量這樣寫jdbc:mysql://localhost:3306/property_db?useUnicodetruecharacterEncodingutf8useSSLfalseserverTimezoneAsia/ShanghaiallowPublicKeyRetrievaltrueserverTimezone是必須的不然IDEA會(huì)報(bào)服務(wù)器時(shí)區(qū)不一致的異常。characterEncodingutf8 是必須的不然JSP往MySQL插中文必現(xiàn)亂碼。6.3 數(shù)據(jù)庫(kù)初始化腳本我強(qiáng)烈建議不要用手工敲表的方式去建庫(kù)太容易缺字段。把建表腳本和初始化數(shù)據(jù)寫進(jìn)一個(gè) init.sql 文件用Navicat或命令行一次性執(zhí)行。腳本開頭加一句DROP DATABASE IF EXISTS property_db; CREATE DATABASE property_db DEFAULT CHARACTER SET utf8mb4; USE property_db;字符集用 utf8mb4 而不是 utf8因?yàn)镸ySQL的utf8最多只能存三個(gè)字節(jié)遇到生僻字或emoji會(huì)寫入失敗。utf8mb4是MySQL的完整版兼容utf8且支持四個(gè)字節(jié)這是2014年之后做項(xiàng)目的一個(gè)小常識(shí)。7. 常見運(yùn)行錯(cuò)誤與排查技巧實(shí)錄7.1 “Account/read failed during TUI bootstrap”類環(huán)境問題在IDEA里配置Tomcat時(shí)如果你恰好使用了一些自動(dòng)配置插件或IDEA引導(dǎo)框架有可能會(huì)在啟動(dòng)階段卡在類似“account/read failed during tui bootstrap”的錯(cuò)誤。這個(gè)錯(cuò)誤本質(zhì)上是IDEA讀取用戶配置或插件狀態(tài)失敗不是項(xiàng)目代碼的問題。一個(gè)干凈的做法是File - Invalidate Caches / Restart把IDEA緩存清掉重啟如果還是不行就直接在本地Tomcat的conf/server.xml里面刪掉默認(rèn)的Host下多余Context重新部署。核心思路是讓Tomcat和IDEA的耦合降到最低直接把項(xiàng)目打成war丟進(jìn)Tomcat的webapps目錄里跑繞開IDEA自帶的復(fù)雜集成反而更快。7.2 數(shù)據(jù)庫(kù)連接失敗一個(gè)被忽視的MySQL服務(wù)狀態(tài)陷阱MySQL安裝成功不代表服務(wù)已經(jīng)啟動(dòng)。Windows 10下MySQL8.x默認(rèn)不會(huì)自動(dòng)啟動(dòng)服務(wù)。如果你連接數(shù)據(jù)庫(kù)報(bào)錯(cuò)第一個(gè)動(dòng)作是去“服務(wù)”面板看MySQL80到底有沒有在運(yùn)行而不是去懷疑代碼。命令行手動(dòng)啟動(dòng)的方式net start mysql80裝MySQL 8.0.x時(shí)MSI安裝器會(huì)默認(rèn)把服務(wù)名設(shè)為 MySQL80。如果裝的是5.7服務(wù)名一般叫 MySQL57。記住一點(diǎn)命令行里 services.msc 查到的服務(wù)名必須和 net start 后面寫的一致。7.3 JSP頁面找不到或404學(xué)生做這個(gè)項(xiàng)目最常報(bào)的錯(cuò)之一就是Tomcat都正常啟動(dòng)了但訪問 http://localhost:8080/xxx 返回404。排查路徑按順序走看URL有沒有帶項(xiàng)目訪問路徑contextPath如果你的應(yīng)用部署名是 propertyMS那必須訪問 /propertyMS/login.jsp 而不是 /login.jsp??碬EB-INF里的JSP頁面能不能被直接訪問。WEB-INF是被保護(hù)目錄瀏覽器無法直接訪問其中的資源但你部署的時(shí)候如果把頁面放到WEB-INF里面了就必須通過Servlet轉(zhuǎn)發(fā)才能訪問不可直接用URL打開??创a里的路徑加沒加 request.getContextPath()。在JSP里引用CSS或JS文件路徑必須帶著項(xiàng)目名不然全是404。一個(gè)簡(jiǎn)單的辦法是在JSP頭部寫死% String path request.getContextPath(); String basePath request.getScheme() :// request.getServerName() : request.getServerPort() path /; % base href%basePath%這個(gè)base標(biāo)簽加上后頁面里所有的相對(duì)路徑都會(huì)自動(dòng)以項(xiàng)目根路徑為基準(zhǔn)從此不再出現(xiàn)“圖片顯示不出、CSS加載不了”的弱智錯(cuò)誤。7.4 中文亂碼問題一串到底怎么治中文亂碼在JavaWeb里是個(gè)高發(fā)問題但它其實(shí)是一個(gè)長(zhǎng)長(zhǎng)的鏈路只要中間一個(gè)環(huán)節(jié)斷裂必然亂碼。排查順序JSP頁面第一行是否寫了 % page contentTypetext/html;charsetUTF-8 languagejava %。瀏覽器是否以UTF-8解析沒有的話JSP里加。POST請(qǐng)求取參之前有沒有執(zhí)行 request.setCharacterEncoding(UTF-8)。Servlet響應(yīng)時(shí)有沒有 resp.setContentType(text/html;charsetUTF-8)。數(shù)據(jù)庫(kù)連接串有沒有帶 characterEncodingutf8。對(duì)POST請(qǐng)求setCharacterEncoding 寫在 getParameter 之前才有效寫在后面等于沒寫。對(duì)GET請(qǐng)求Tomcat8默認(rèn)字符集是UTF-8Tomcat7及以下要對(duì)get提交參數(shù)做二次解碼最好在Tomcat的server.xml Connector里配 useBodyEncodingForURItrue。7.5 頁面顯示正常但JavaScript報(bào)錯(cuò)最常見的是JS操作的元素沒渲染出來報(bào)錯(cuò)信息是 Uncaught TypeError: Cannot read properties of null。仔細(xì)檢查一下這個(gè)元素到底是不是放在jsp:include里面了如果那個(gè)include里頁面內(nèi)容為空J(rèn)S在DOM沒加載完成時(shí)執(zhí)行就會(huì)拿不到元素。穩(wěn)妥的操作是把你寫的JS代碼放到頁面最底部或包在 $(document).ready() 里。還有一類是前端Ajax請(qǐng)求返回了HTML而不是JSON。這個(gè)大概率是Servlet跳轉(zhuǎn)了頁面或者異常被Tomcat默認(rèn)錯(cuò)誤頁捕獲導(dǎo)致dataType為json但實(shí)際拿到的是HTML就會(huì)直接報(bào)parsererror。排查方式很簡(jiǎn)單瀏覽器F12打開Network標(biāo)簽看那個(gè)XHR請(qǐng)求的Response原文到底是什么內(nèi)容。8. 從課程設(shè)計(jì)到簡(jiǎn)歷項(xiàng)目的進(jìn)階建議8.1 加一點(diǎn)緩存和日志項(xiàng)目質(zhì)感立刻提升如果項(xiàng)目做完了還有時(shí)間我不建議急著擴(kuò)展新模塊先補(bǔ)兩個(gè)工程化能力一是在查詢繳費(fèi)記錄的地方加一個(gè)簡(jiǎn)單的HashMap緩存以業(yè)主id為key緩存最近10條賬單查詢結(jié)果。哪怕你用最簡(jiǎn)單的ConcurrentHashMap也能體現(xiàn)出緩存意識(shí)面試官問到“JSPServlet項(xiàng)目還有什么優(yōu)化點(diǎn)”時(shí)你能答出SQL索引優(yōu)化和緩存手段這比說“我是Java后端開發(fā)”要有說服力得多。二是在關(guān)鍵操作加日志。不用上Log4j直接在Servlet里用JDK自帶的 java.util.logging 或ServletContext.log打印關(guān)鍵參數(shù)。面試問“你項(xiàng)目里怎么排查問題的”你說“我看Tomcat日志”比說“我打斷點(diǎn)調(diào)試”更像生產(chǎn)環(huán)境實(shí)戰(zhàn)。8.2 前端功能點(diǎn)上做一點(diǎn)“超綱”小設(shè)計(jì)除了基礎(chǔ)CRUD我強(qiáng)烈建議在任意一個(gè)頁面用Bootstrap的 Modal 模態(tài)框做新增/編輯操作而不是跳轉(zhuǎn)到另一個(gè)JSP頁面。這一個(gè)細(xì)節(jié)能讓你的項(xiàng)目在答辯演示時(shí)顯得格外流暢。同時(shí)配合JavaScript的 confirm 彈窗做刪除確認(rèn)或者用 SweetAlert 替換難看的原生alert視覺上直接提升一個(gè)檔次。記住一個(gè)原則用戶體驗(yàn)的細(xì)節(jié)往往比功能本身更讓老師覺得“這個(gè)學(xué)生真的有產(chǎn)品思維”。9. 踩坑小結(jié)做完這個(gè)項(xiàng)目最大的體會(huì)這個(gè)JSP Servlet的小區(qū)物業(yè)系統(tǒng)做完后我最大的感受是它像一道“基礎(chǔ)題”但咬合了JavaWeb日常開發(fā)的所有關(guān)鍵環(huán)節(jié)。比如你天天在Spring Boot里用Transactional根本不知道事務(wù)底層需要手動(dòng)管conn.commit和conn.rollback你天天用MyBatis自動(dòng)生成SQL根本不知道預(yù)編譯PreparedStatement是防SQL注入的第一道防線你天天說前后端分離但對(duì)Bootstrap的柵格布局和Ajax異步加載一知半解。做完這個(gè)項(xiàng)目這些坑基本都趟平了。如果再用這個(gè)項(xiàng)目去面試建議你提前把數(shù)據(jù)庫(kù)建表的幾條核心SQL背熟把過濾器的重定向路徑熟記把前端Ajax請(qǐng)求的URL和Servlet的映射關(guān)系講清楚。面對(duì)“你項(xiàng)目里遇到的最大困難是什么”這個(gè)問題你也不愁沒素材了。最后再分享一個(gè)我個(gè)人的操作習(xí)慣每次項(xiàng)目快收尾時(shí)在本地備份一份完整的源碼和數(shù)據(jù)庫(kù)腳本然后重新裝一臺(tái)干凈環(huán)境從零開始跑一遍部署流程。凡是這個(gè)流程里卡殼的地方就是你項(xiàng)目文檔里最該重點(diǎn)寫清楚的地方。這個(gè)習(xí)慣能讓你的項(xiàng)目交付質(zhì)量明顯高于同期水平。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
五月综合六月婷婷| 六月丁香网| 亚洲六月综合激情久久下卡| 天天干天天做| 天天综合图片| 久99| 国产精品国产| 五月天婷婷狂暴白浆| 五月婷婷深深爱| 丁香丁婷五月激情| 久久婷婷五月综合伊人| 中文字幕性爱视频| 久在线综合69| 一区二区成人电影免费播放| 激情五月天网| 超碰在线视屏| 久热亚洲| 91热网址| 天天舔天天摸| 五月丁查人人| 五月天色丁香| 激情五月天无人视频在线| 欧美日韩成人| 婷婷激情四射| www,久久久| 国产真实乱对白精彩| 五月久久婷婷天堂视频| 这里只有精品免费| 色色色色五月| 天天爽天天摸人妻综合网| 999热在线视频| Www.se.久久| 精品色色| 五月天婷婷激情在线色图| 亚洲色无码| 日韩三级片一区二区| 激情国产五月| 日本A片一区| 日日爽夜夜爽| 国产精品天天狠天天看| 亚洲视频在线观看| 国产古装妇女野外A片| 九九综合伊人| 开心激情综合| 五月天激情网站| 久久狠狠干| 亚洲色网址| 操操操B| 天天色色天天| 99色天堂| 伊人婷婷大香蕉在线| 久久精彩视频| 噼里啪啦完整版中文在线观看| 任你爽视频| www.五月婷婷久久.com| 97福利视频| 婷婷色五月激情| 91se在线视频| 日韩免费视频| 九月婷婷综合在线| 99在线热| 丁香五月天无码| 99国产小视频免费观看| 五月天婷婷青青草| 婷婷色在线播放| 婷婷五月天高清无码| 国产精品激情五月天色婷婷| 欧美成人精品A片免费一区99| 五月丁香在线综合| 五月天激情久久| 99热主页日本| 无码一区精品一区视频| 丁香五月天婷婷91| 亚洲黄色影视| 婷婷干五月综合在线播放| 五月婷婷片| 婷婷五月影院| 男男野外做爰全过程69| 美女美女美女三级色天天天天天| 欧美美美女性色视频| 人人操人人爱丁香五月| 超碰人人干| 久久婷色| 丁香婷婷影院| 九九熱最新視頻| 日日天天操| 开心五月婷婷99| 天天久综合| 久久99视频| 久久香蕉影院| 热久69| 91一起操| Www.狠狠| 无码激情AAAAA片-区区| 久久永久视频| 中文字幕色色| 色五月欧美| 婷婷五月天久草在线| 丁香五月激情欧美| 五月丁香成人| 成人短视频在线| 精品亚洲国产成AV人片传媒| 中文字幕在线免费观看视频| 婷婷丁香五月亚洲| 精国产品一区二区三区A片| 99资源人人| 久久久久9| 婷婷丁香激情五月| 夜夜操夜夜操| 97影院一级片| 色99在线| 色99超碰| 甈你aaaaa| 五月天婷婷綜合院| 婷婷色情五月| 亚洲激情精品| 五月丁香亭亭电影久久| 五月丁香网中文字幕| 五月丁香六月成人| 啪啪六月婷婷| www.夜夜操.com| 内射在线CHINESE| 99ri精品在线| 站长推荐无码播放| 99狠狠操一| 五月丁香在线国产| 色五月婷婷五月天| 亚洲激情图文小说| 99自拍视频在线| 99热热热国产超碰| 亚洲婷婷五月天| 91干婷婷| 欧美成人精品一区二区| 欧美日韩成人h| 人人色人人摸人人看| 久久婷婷五月天激情四射| 国产内射婷婷| 婷婷五月天干干| 日产精品久久久久久久蜜臀| 五月天婷婷在线观看精品男人| 91大神操美女| 激情五月天婷婷图| 啪啪操网| 亚洲国产婷婷色五月| 日日干五月天婷婷| 99热都是精品| 五月婷婷激情四季| 777精品久无码人妻蜜桃| 人妻久久婷婷| 99re思思热久久| 97干欧美| 婷婷伊人| 丁香激惜男女| 三男玩一女三A片| 激情小说五月天| 九九碰九九爱97| 丁香五月综合激情啪啪| 激情五月婷婷网| 亚洲综合草草| 丁香五月天综合| 99re熱| 91久久婷婷| 五月天色综合| 97婷婷色| 天天操狠狠操| 日本精品99网站| 色婷婷综合久久久久| 综合久久综合久久| 婷婷综合| 丁香五月激情啪啪| 欧美婷婷丁香五月社区| 激情内射人妻1区2区3区| 热的国产,热的综合,热的有码| 激情五月五月婷婷| 99热色在线精品| 美女视频图片久久91| 亚洲亚洲永久无码777777| 色九四色| 狠狠干夜夜干| 六月丁香影院| 99热9| 国产成人精品一区二三区熟女在线| 激情影院免费视频婷婷五月天| 在线视频婷婷| 操操天堂| 天天视频亚洲| 婷婷五月天中文字幕.| 99久久网站| 婷婷激情综合无月| 97久操视频| 亚洲综合99| 婷婷丁香五月天欧美| 99国产99| 五月丁香在线| 另类激情五月在线视频欧美| 婷婷综合五月天激情| AV操一操| 免费无码毛片一区二区A片| 久久婷婷五月草视频| 色涩影院六月丁香| 一二线视频 另类| 亚洲这里只有精品| 97婷婷丁香五月天激情图片| 婷婷丁香色情| 九九激情| 在线免费视频caop| 亚洲色久| 日本综合色色| 国产欧美va| 狠狠做五月| 99碰碰碰| 99原创自拍视频在线观看| 99精品视频网站| 亚洲网站在线鸭子av| 成人AV片播放| 中文字幕按摩做爰| 激情婷婷| 熟女网站久久| 激情五月天婷婷| 五月天小说激情| 婷婷综合视频| 9久久网| 禁欲电影完整版在线播放| www.婷婷六月天| 国产欧美婷婷五月| 99久久66| 久草婷婷| 色九月| 97在线/日本| 成人无码髙潮喷水A片| 婷婷的色色五月天| 激情视频综合| 九九成人视频| 激情综合网五月婷婷| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 色综合播放| 色五月婷婷老师| 成人视频在线免费播放| 九九热精品| anquye五月| 伊人久久激情图区五月| 久久这里只有国产| 久久婷婷六月天| 色一情一乱一乱91Av| 色97啪啪| 99人人精品| 超级97碰碰| 久久免费少妇高潮99精品| 夜夜爽77777妓女免费下载| 丁香五月伊人| 国产片XXXXA片国语对白| 色99网站| 成 人片 黄 色 大 片| 色五月人妻| 欧美97色| 亚洲激情另类| 极品人妻VIDEOSSS人妻| AV成人在线网站| 99热国品| 亚洲成人AV一区在线观看| 午夜成人片400| 婷婷五月天成人| 天天日天天色| 亚洲精品a成人在线播放| 黄急一级视频| 色色色天堂网| 婷婷久久五月丁香| 天天做天天双| 激情綜合W W W,激情五月天| 色综合九九| 99热青青草| 丁香五月欧美激情| 99久久国产宗和精品1上映| 五月婷婷深深爱| 大战熟女丰满人妻AV| 婷婷五月影院| 色色丁香色五月| 色五月婷婷五月天激情综合| AV激情五月| 婷婷六月综合在线| 五月婷婷第四色| 色婷婷久久综合中文久久一本| 婷婷99狠狠躁| 99色色网| 丁香五月 激情文学| 婷婷五月天精品| 九色91美女| 丁香五月,开心五月,成人婷婷| 丁香五月婷婷性爱| 五月六月婷| 99久久婷| 北条麻妃伊人| 婷婷亚洲色| 丁香五月大片| 在线观看av网站| 婷婷五月丁香五月| www.99久久久久99| 人妻五月天激情开心网| 狠狠色大香蕉| 亚洲色99综合天堂| 婷婷五月天AV网| 婷婷五月天第四色| 这里只有精品视频在线| 免费观看2018www黄色操逼网站| 99色色| 99精品这里只有免费视频| dingxiangtingtingliuyue| 99视频在线观看网址| 婷婷五月激情图片| 九九99男女视频在线观看| 欧美性二区| 五月天成人在线播放丁香| WWW.99视频| 国精产品一区一区三区免费视频| 五月天丁香婷| 五月丁香六月婷婷操操操| 26uuu亚洲| 殴美97色| 九九成人精品| 天天做天天爽| 四色永久成人网站| 丁XX 成人| 99热这里有精品| 激情五月丁香六月综合AVXXXX| 99er6| 99狠狠色| 99riAv1国产在线观看| 日本在线噜噜| 色伦专区97中文字幕| 99ri视频在线播放| 五月丁香六月婷婷无码| 激情五月四色| 天天日,夜夜爽| 五月婷婷婷婷| 色婷婷影视| 五月激情小说| 极品九九九九九九| 人人草人人看| av五月丁香| 五月丁香久久久日婷婷久久婷婷日| 超碰猛烈的性猛交| 永久免费一区二区三区| 婷婷五月天综合网| 大香蕉 伊人夜| 香蕉AV777XXX色综合一区| 伊人综合网站| α久久| 五月开心久久| 婷婷五月天伊人在线| 99热日本| 丁香五月婷婷深爱综合激情 | 92久久| 五月婷婷视频| 肏屄色播伊人97婷婷| 亚洲视频99| 中文成人在线| 亚洲激情综合| 婷婷五月AV| 色婷婷AV在线| 91在线日| 综合激情五月丁香| 五月天婷婷色播在线网| 日本在线播放97| 婷婷娱乐丁香综合网| 一本大道熟女人妻中文字幕在线| 99视频精品全部免费观看| 欧美精品XXXXBBBB| 婷婷五月天论坛| 无码激情AAAAA片-区区| 天天五月情| 婷婷无五月无码视频| 色狠狠图片| 久久久久久久久久久-久五月天婷婷| 天天色天天色天天色天天色天天色天天色| 国产真人做爰视频免费| 99热这里只有精品2024| 婷婷久久色| 国产色色视频| 97成人丁香婷婷| 天天日天天插| 五月激情网综合| 99热色综合| 色综合另类| 色婷婷五月在线| 在线中文av| 激情无码五月天| 亚洲乱码日产精品BD| 天堂婷婷丁香六月网| 丁香九月激情在线视频| 青青草原亚洲天堂| 婷婷六月色| 丁香五月综合久久八| 亚洲va综合va国产va中文| 99re这里有精品手机在线| 97成人丁香| 久久综合首页| 丁香五月激情站| 日本天堂网站99| 婷婷午夜综合| 久久五月激情网| 五月色婷丁香| 五月丁香激情综合| 日日噜噜夜夜狠狠久久丁香六月| www.婷婷五月天,com| 青青久久五月| 婷婷成人五月天成人文学| 婷婷丁香基地在线| 日韩黄黄| 丁香五月WWW| 五月天婷婷久久| 综合图区激情| 噜噜色五月| 婷婷五月欧美AA片免费| 婷色五月天| 婷婷涩涩五月天| 天天婷婷综合| www.婷婷,com| 影音先锋男人站,影音先锋男人色资源网,影音先锋AV最新资源站,影音先锋AV资源 | 色五月在线视频观看| 亚洲一区国产传媒| 五月丁香激情综合网官网| 97色久| 九九久久综合网站| 六月激情婷婷色| 常久最新免费的色吊丝| 亚洲人妻AV| 日韩无码亚欧无码| 屁股翘好撅高迎合跪趴| 欧美这里只有精品| 丁香久久久| 久久九九蜜| 五月丁香六月综合情在线观看| 五月婷婷丁香综合,亚洲天堂| 五月天色丁香| 五月丁香婷婷久久| 婷婷五月丁香超碰| 五月亚洲| www激情com| 影音先锋激情网| 超碰色婷婷| 丁香五月天亚洲综合| 成人无码髙潮喷水A片| 欧美在线操| 色婷婷五月天在线观看| 狠狠干夜夜干| 婷婷五月天成人网| 婷婷五月天国产在线播放| 99er6热在线观看精品6| 婷婷中文字幕版| 99亚色色色| 99黄色性生活| 天天久久66xxx| 91热久久| 97操操| 欧美99视频| 99资源人人| 久久综合9| 狠狠色丁香乆乆| 内射爽无广熟女亚洲| 久久只有18视频| 任你爽精品免费视频6| 开心激情综合| 久久婷婷内射| 色色色色综合网| 97日本在线| 吾爱AV导航| 久久五月天免费网站| 色五月色开心开心五月| 丁香六月青青草| 超碰五月婷婷五月天| 五月婷婷先锋| 婷婷情色五月天| 99在线热| 开心婷婷五月天电影院| 蜜臀av在线成人电影| 日日操日日射| 五月天激情久久| 亚洲激情另类| 婷婷五月激情网| 99热国产免费| 91男人操女人视频| 变态另类色图| AV在线大香蕉| 色婷婷在线视频久| 五月婷婷综合潮喷| 成人免费高清在线播放| 五月天另类小说| 久久久网站| 国产毛多水多女人A片| 日日噜噜夜夜狠狠久久丁香五月| 婷五月天| 国产亚洲99| 玖操97| 激情99在线视频| 久久五月天综合| 五月丁香婷婷久久| 五月天色小说| 激情五月天啪啪| 思思热国产视频| 婷婷深爱网| 天天干天天色综合| 丁香五月影院| 激情综合色婷婷啪啪六月天| 99这里有精品免费| 99视频这里有精品| 亚洲无AV在线中文字幕| 99久操| 色婷婷婷av| 韩国三级五月天婷婷。| 九九色人| 五月激情婷婷开心五月| 高清无码入口| 内射人妻视频国内| 色综合中文| 人妻五月天激情开心网| 狼人婷婷综合| 亚洲激情四射色| 99热99精品| 天天综合干| 欧美成人日韩| 色逼综合网| 欧美色图天堂网| 丁香五月六月婷婷殴美综合| 久99热| 久九九热| 五月天婷婷导航| 色婷婷免费观看| 亚洲六月综合激情久久下卡| 99re热精品在线视频| 婷婷五月伦理网站| 极品人妻VIDEOSSS人妻| 伊人婷婷青青cao| 青青草成人网| 欧洲综合一区| 婷婷丁香五月精品| 五月丁香综合激情| 9久视频| 色婷婷丁香五月在线观看| 国产色99| 色色色在线观看| 五月丁香在线国产| 色婷婷五月综合| 99婷婷五月天激情| 亚洲国产精品成人va在线观看| 久久伊人婷婷| 九九干视频| 天天色天天爱天天爽| 性色五月天| 色情五月婷| 成人开心五月天| 九月激情婷婷丁香| 久久婷婷欧美| 亚洲亚洲人成综合网络| 亚洲色情免费网| 日本久久婷| 99视频在线观看视频| 这里只有精品视频在线看| 色婷婷五月天| 激情亚洲五月| 国产精产国品一二三在观看| 色色五月天婷婷| 激情黄色小说色五月| av人人干| 婷婷刺激综合| 26UUU欧美激情一区二区| 狠爱婷色| 人妻少妇色综合| 涩 五月 婷婷 狠狠| 九一99| 九月丁香八月婷婷加勒比| 亚洲激情丁香五月基地| 六月婷综合| 五月丁香六月婷婷久久久综合| 成人做爰高潮A片免费视频| 亚洲视频在线观看99| 日本丁香五月| 久久五月天激情视频| 国产精产国品一二三在观看| 先锋av性爱成人电影| 极品人妻VIDEOSSS人妻| 精品三区影院| 婷婷五月中文字幕| 丁香九月婷| 天天久久66xxx| 五月天婷婷基地| 丁香色播五月天| 9视频在线成人网站| 亚洲激情97五月天| 大香蕉99| 日本精品久久久久中文字幕| 色色色国产| 东京热免费视频网站| 五月丁香久久网| 激情五月深爱五月| 97爱艹婷婷开心丁香激情综合| 五月天婷婷中文字幕在线播放| 九九激情| 激情五月天婷婷丁香| 五月丁香成人| 五月激情射| 99热这里只有精| 色婷婷五月亚洲| 六月丁香婷婷综合影院| 五月婷综合| 色综合天天综合成人网| 婷婷丁香五另类网站| 亚韩精品视频1区| 久久婷婷五月综合啪| 色五月网址| 人人艹艹艹| 噜噜在线| 国产日日夜夜操| 青青草Avb在线| 五月天婷婷久久视频| 五月天婷婷黄色| 日韩超碰在线| WW婷婷五月天com| 成人一级片| 狠狠色狠狠鲁| 影音先锋一区二区三区| 97人人妻人人艹| www.色五月.com| 丁香五月天激情小说| 久久精品99久久久久久| 婷婷五月天VI| 五月婷婷五月天| 色婷婷婷婷| tingting五月天亚洲| 97超级碰碰碰| 性按摩玩人妻HD中文字幕| 天天搞天天色综合| 欧美激情凹凸丁香网| 五月大香蕉| 69人人操人人爽| 99热思思| 99热伊人| 免费AV在线| 婷婷色网站| 丁香六月婷婷缴情欧美| av在线中文| 一起操最新网址| 综合婷婷| 伊人婷婷五月天| 99久在线精品99re8| 森林影视大全,最好看的2019年视频 | 操操操B| 大香蕉伊人久久| 久久人妻人人| 天天操电影院色狼性av| 九九操综合网| 激情 五月 婷婷 丁香| 久久99热在线观看| www,av好吊操| 五月丁香久久激情网| 五月丁香久久网| 五月色婷| 亚洲精品视频在线播放| 久久久.COM| 中日韩狠狠色| 五月丁香久久丝袜啪啪| 香蕉中文在线| 77777亚洲午夜久久| 日本色超碰| 丁香激情综合| 色吧网综合| 天天激情站| 成人做爰黄A片免费看直播室男男 久草热8精品视频在线观看 | 精品成人久久久久久久_一二三四视| 日韩一级淫乱片一区二区三区| 国产AV一区二区三区最新精品| 99热这里只有精品55| 久久ww| 日本超碰在线| 婷婷色综合| 久久曰曰| www.婷婷| 大地9中文在线观看免费高清| 天天射影院| 丁香五月影院| 免费无码毛片一区二区A片| 日韩成人无码| 8050一级网| 一本久久婷婷| 五月花激情网| www.综合久久.com| 97人妻碰碰碰久| 99re思思| 小视频一区 | 婷丁香五月天| 99色在线| 中文字幕网伦射乱中文| 欧美日本不卡黄色片| 九色视频入口91| 伊人综合婷婷| 啊v视频在线观看| 亚洲超碰在线| 亚洲激情视频网| 日韩欧美骚货| 综合网啪啪| 久久婷婷色| 色色五月婷婷狠狠| 香蕉大综综综合久久| 99在线热| 五月丁香婷婷啪啪综合网| 99在线亚洲| 婷婷六月色开| 色色色五月天婷婷| 色综合久久88色综合天天看| 秋霞午夜理论| 色婷婷丁香| 丁香五月天堂| 任你爽在线视频| 九九色之九九色88| 青青草深爱激情网| 91ncm视频| 夜精品无码A片一区二区蜜桃| 亚洲免费成人电影AV| 婷婷97碰碰| 情情五月天色| 久久草中文日韩欧美| 久久久久久久人妻| 激情五月婷婷视频一区二区三区| 国产VA播放| 五月花在线观看视频| 丁香五月成人社区| 九九热99久久99| 激情五月天婷婷免费观看| 婷婷情色激情| 97操操| 91 九色 入口| 26uuuavcom| 欧美五月婷婷| 婷婷9月天| 五月天狠狠网站| 婷婷五月花丁香| 五月婷丁香| 碰碰人人漕| 色婷婷六月精品| 五月丁香| 77777亚洲午夜久久| 久婷婷久草| 婷婷精品免费久久| 麻豆精品| 五月成人综合| 老师的粉嫩小又紧水又多A片视频| 大香蕉九九热| 亚洲婷婷激情五月天| 激情五月天综合网| w婷婷五月婷婷w| 噜噜精品| 99天天操夜夜操| 思思热99er在线视频| 超碰91人人操| 丁香五月婷婷天堂大香蕉| 日本激情五月| 亚洲V国产V欧美V久久久久久| 久热黄色| 天天日天天插| 18久久| 婷婷色Av| 七月丁香五月婷婷在线| 六月婷婷无码观看| 丁香五月天堂网| 亚洲精品色色| 久久婷婷五月| 99热久| 九九久久综合| 97香蕉碰碰人妻国产欧美| 天天射影院| 色噜噜五月丁香婷婷| www.日日夜夜.com| 久久精99| 婷婷激情五月综合| 五月天激情日色在线| 婷婷综合网站| 九九色video| 色色综合视频| 激情五月婷婷丁香综合网| 五月丁香六月停停| 万月丁香狠狠爱| 婷婷综合在线观看视频| 色五月xxx| 亚洲成人在线免费| 婷婷天堂综合| 色99在线视频| 国产婷婷综合| 成人国产网站在线免费看| 人妻videos人妻高清| 日本少妇裸体做爰高潮片| 天天操天天爽天天爱| 国产欧美性成人精品午夜| 99热这里有精品6| 蜜臀AV在线观看| 五六月丁香激情视频| 碰99在线| 久久 天天| 色七七九九| 91久久久久久久久18| 69热在线| A片试看50分钟做受视频| 丁香五月激情六月综合| 九九中文色色| 99毛片| 7月婷婷六月丁香| 99噜噜噜在线播放| 深爱五月婷| 亚洲色人妻| 久热这里只有精品6| 五月丁香婷色| 超热久碰.com| 丁香五月天色婷婷| 色婷五月天网站| 在线91日韩| 丁香五月综合| 色久五月| 91网站黄| 伊人无码高清| 开心激情婷婷| 六月丁香成人| 国产91在线视频| 婷婷五月情| 亚洲综合视频一下| 99热第一页| 九九99精品| 五月婷婷免费看| 国产成人高清| 国产看真人毛片爱做A片| 欧美色色色色色| 男人的天堂999| 丁香五月婷婷综合激情哟哟哟| 亚洲综合无码| 激情五月丁香在线观看直播| 六月婷婷香蕉| 中文字幕无码人妻少妇免费视频| 极品人妻VideOssS人妻| 深爱女色婷婷丁香五月亚洲图区| Av在线不卡一区| 天天插综合网| www.婷婷五月天.com| 亚洲人人96@| 婷婷丁香五月激情密臀av| 天天爱天天操| 99视频在线播放大全| 五月天激情中文字幕| 另类伊人婷婷| 九一九九黄色| 专区无日本视频高清8| 五月综合视频| 色天天综合成人网| 99色婷婷| 亚洲成人九九九| 国产五月视频| 伊人婷婷五月天| 播播网色播播| 亚洲久热无码| 丁香月五月天婷婷久久| 日韩精品999| 国产亚洲成人综合| 国产偷人爽久久久久久老妇APP | 一级性感毛片| 97日韩无套内| 色婷婷视频| AV在线观看网站| 五月婷婷基地| 开心五月综合激情综合五月| 久久久精品99亚洲综合| 99日本在线| 亚洲色婷婷五月天| 久久久色情| 五月天婷婷综合色| www.激情| 久久久久人妻网址| av网址在线| 99九九99九九九视频精品| 大香蕉综合网| 久久激情五月| 五月天.com| 亚洲六月婷婷| 五月天婷婷网站888| 丁香五月天啪啪| 天天搞天天色综合| 激情二色月| 五月丁香六月婷婷免费| 丁香五月色播中文在线播放| 99色区| 狠狠做五月| 亚洲另类电影| 在线成人网站| 九热精品| 变态另类9| 日韩狠狠色| 五月天开心色情网| 六月婷婷综合| 亚洲午夜精品久久久久久人妖| 五月天激情四射| 欧美色色色| 亚洲综合在线伊人婷| 玖热精品综合视频| 这里只有精彩小视频视频网站| 五月婷色| 操人妻90p| 日本va网站| 亚洲人人干| 五月天玖玖狠狠色色| 色丁香五月综合网| 99热这里只有精品搜| 人妻久久久久久久久久久| 五月天婷婷爱| 激情深爱五月天| 日本三级中文字幕| 五月婷综合| 亚洲精品V天堂中文字幕| 精品成人无码A片观看香草视频| 日本人妻伦在线中文字幕 | 六月丁香好婷婷| 思思国产99| 五月婷婷成人| 精品久久久人妻| 日本99视频| 色色色com| 伊人久久大香线蕉AV最新午夜| 99碰| 色色综合成人网| 日日操日日干| 久久激情网| 无码激情| 麻豆AV一区二区三区| 97人人操人人拍| 超碰在线观看9| 99爱视频精品| 日撸夜撸日操| 日本一级特黄大片AAAAA级| www夜夜操| 天天插操| 五月婷精品| 美女主播野战视步页| www.minyis.com【JT】实力收量可预付QQ2101460746 | 九色在线五月婷婷网址| 婷婷久久婷婷| 丁香婷婷综合精品六月初| 婷婷五月天免费| 97性视频| 国产精品激情AV久久久青桔| 亚洲操B视频| 丁香五月天偷拍| 婷婷日日夜夜| 99热这里只有精品在线观看| 99福利视频导航| 久久激情五月| 天天综合社区| 玖玖热视频| 丁香九色不卡aaa| 五月丁香久人妻中文| 岛国AV网| www.99热| www.91婷婷| 久久成人天| 丁香午夜天| 亚洲第二AV| 秋霞午夜理论| 激情五月天啪啪| 丁香五月狠狠在线观看| 婷婷五月激情网| 四色AVwww| 五月天婷婷综合| 2017狠狠干| 色人妻五月| 大香蕉综合| 97操碰在线视频| 91人妻视频| www.狠狠操| 在线观看亚洲视频影院| 99色免费视频| 99国产精品久久久久久久久久久| 91色综合网| 婷婷五月花西瓜| 国内外色色色色色成人视频| 婷婷激情在线| 午夜做爱影院| 熟女人妻视频| 欧美狠狠草| AV在线免费网站| 久久九九经典| 激情五月天色爱| 午夜丁香婷婷| 久久综合中文| 97欧美在线| 狠狠色噜噜色狠狠狠综合色| 狠狠狠人妻| 开心婷婷五月| www.超碰在线| 99精品热视频| 麻豆雪千夏| 婷婷丁香色无五月| 啪啪日本欧美| 97色伦另类图片小说视频 | 小视频在线亚洲| 六月丁香婷| 亚洲天堂啪啪| 久久综合影院| 天堂综合久| 99热97| 久久久精品99| 五月婷婷五月天激情网| 亚洲啪啪自拍| 色婷婷色婷婷五月| 久久婷婷原创视频| 精品综合五月| 亚洲偷| 99久久精品视频女神1| 综合色在线| 色五月视频,小说| 蒲京久久无码视频| 在线可以看的av网址| 日韩aⅴ视频| 婷婷五月天高清无码| 九九机热| 丁香五月婷婷欧美性爱| 婷婷五月伦理| 99日本视频在线观看专区| 深爱婷婷丁香五月激情| 秋霞网在线免费基地五月婷婷丁香| 婷婷五月色亚洲| 琪琪狠狠干| 激情五月天激情小说| 日韩成人综合| WWW.17C亚洲精品| www.婷婷六月天| 99爱视频在线| 亚洲婷婷丁香五月亚洲| 97在线观视频免费观看| 激情小说之五月| 99精品久| 玖玖婷婷五月| 六月丁香婷| 中文字幕乱码亚洲精品一区| 日撸夜撸日操| 色日本综合| 这里只有精品2| 久色成人| 九九久99免费视频| 久久与婷婷| 五月天伊人av| 亚洲99热| 国产激情在线| 天天综合亚洲综合网天天αⅴ| 青青草视频免费观看| 五月激情婷婷女| 婷婷六月综合| 97精品综合久久| 日逼免费视频 | 思思热视频| 99久久久免费| 2025超碰| 99热日| 99re热| 五月久久| 日本丁香五月| 婷婷丁香色五月| 97色干| 秋霞九九无码| 亚洲中文字幕av| 色婷婷五月网| 亚欧州精品视频| 亚洲亚洲人成综合网络| 丁香五月六月综合激情| 久久er这里只有精品| 狼人伊人干| 99热这里有精品| AV人人操| 婷婷五月天激情偷拍| 91 九色 入口| 夜精品无码A片一区二区蜜桃| 俺去也五月天| 影音先锋激情网| 日韩精品一区二区亚洲AV观看| 亚洲爆乳无码精品AAA片蜜桃| 久久婷婷五月天蜜桃| 午夜理论片最新午夜理论剧| 51XX嘿嘿午夜无码| 五月丁香在线| 激情亚洲婷婷| 热久久国产视频| 二色av| 丁香激情五月少妇| 亚洲欧洲中文日韩久久AV乱码| 五月丁香婷婷爱| 激情五月六月丁香| 五月天激情综合网俺也去| 1024久婷| 免费无码毛片一区二区A片| 久久性视频| 狠狠做深爱婷婷久久综合一区| 色婷婷五月天天天天天| 伊人玖玖精品| 五月婷综合| 99ER热精品视频| 久久国产色| 欧美日韩成人在线网站| 久久色五月天综合网| 精品无码av丁香五月激情| 91精品又长又大又粗又爽又猛| 激情操逼婷婷| 一级黄色影片| 99久在线精品99re8热| 婷婷色综合| 精a品a| 激情五月天www| 天天做天天要天天爽| 久久丝丝热| 丁香九月综合| 丁香 亚洲 久久| www.com在线操视频免费观看| 搡BBBB搡BBB搡18| 婷婷久久五月天| 婷婷性爱影院| 成人在线观看一区| 欧美三级视频| 五月天丁香久久综合 | 五月婷婷综合性爱噜噜| 99日热在线视频| 国产真实乱了老女人视频| 99视频在线| 99热在线播放| 99热这| 久久六月天| 1024人妻| 久久五月丁香| 久草热在线视频| 婷婷欧美| 五月丁香啪啪啪| 网站免费一站二站| 久久婷色| 丁香六月婷| 国产乱妇无乱码大黄AA片| 狠狠色综合网| 26uuu欧美| 99热这里| 夜夜嗨一区二区三区直播内容 | 色色永久| 丁香香五月激情免费视频| 五月天婷亚洲天综合网综合| 秋霞电影一级黄| 丁香丁香激情网| 色五月在线| 天天干天天操天天上| 色色色色色色97| 五月开行婷婷色五月| 久久久久丁香婷婷五月天| 日本色爽| 色色五月天网站| 操一区| 九九在线精品| 色欲色欲久久宗合网| 99精彩视频在线观看| 天堂网啪啪| 97操操| 777丁香六月青青草婷婷综合久月 五月丁香综合伦理片 | 五月天大香蕉| 国产激情视频在线观看| 日本欧美成人片AAAA| 91九九九九九九| 五月激情射| 热中文字幕| 精品人妻久久久| 激情综合丁香五月| 丁香激情网| 伊人五月天| 狠狠爱婷婷五月天| 久久精品9| 西西4r午夜剧场| 激情九九六月激情免费视频| 成人AV免费观看| 中文字幕欧美日韩VA免费视频| 亚洲天堂婷婷丁香| 成人在线视频男人的天堂4399| AA久久| 国产精品久久在线观看技巧| 天天做天天爱综合| 4399在线日本A片| 成人午夜天| 日韩一级网站| 夜夜人妻五月天| 九九精品网| 婷婷五月天激情文学| 国产AV影片| 国产97色在线 | 日韩| 色色成人網| www.minyis.com【JT】实力收量可预付QQ2101460746 | 我爱大香蕉| 免费91久久精品| 欧美六月| 天天透天天摸天天舔| 九九热自拍| 久久九九激情五月天 | YW无码| 色综天天综合| 欧美日韩AAAA| 九九热精品视频在线观看| 天天综合色99| 久久黄色免费视频| 婷婷五月天最新网址| 人人叉久| 五月丁香久久久日婷婷久久婷婷日| 久久婷婷五月天蜜桃| 久久人妻精品| 久久久久98| 丁香婷婷色五月天| 可以看的AV| 新激情综合| 全国最新疫情| 日本片日本片祼观看网站在线看中文版网页在线看 | 国产亚洲99久久精品熟女| 五月色婷婷亚洲| 婷婷午夜综合| 99天堂在线观看免费视频| 色情综合网| 超碰国产AV| 亚洲成AV人片在线观看| 婷婷激情丁香五月天综合| 91超级碰在线视频| 啪啪色激情五月天| 久久a热| 日本黄 色 片| 激情综合五月婷| 噜噜狠狠色综合久| 亚洲综合碰| tingtingzonghewang| 午夜丁香婷婷| 天天搞天天色综合| 国内精品玖玖| 日本欧美成人片AAAA| 婷婷丁香社区网| 亚洲美女高潮久久久久久69| 一本狠婷婷综合| 丁香五月综合在线播放| 色婷婷成人| 激情五月天久久丁香| 99啪| 97操碰在线视频| www,26uuu,c0m,色情| 天天色中文字幕女优AV| 色婷婷在线综合色播网| 久久五月天婷婷| 婷婷六月色开| 色一情一乱一乱一区91| 爆乳熟女一区二区三区爆乳| 99国产在线| 婷婷五月激情小说| 国产精品激情五月天色婷婷| 九九视频在线观看视频6| 久久在这里有精品| 五月丁香在线| 亚洲国产精品五月天| 天天综合网在线| a色色色色色| 色色a| 精品视频这里只有精品| 丁香五月天激情视频| 九九精品99| 99视频内射三四| 丁香五月婷婷狠狠色| 日本狠狠干| 色婷婷丁香五月天在线视频| 中字幕视频在线永久在线观看免费| 免费AV黄在线播放|