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

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
返回資訊列表
色欲操| 精品成人无码A片观看香草视频| 大香蕉啪啪| 色综合久久五月| 丁香九色不卡aaa| 日韩视频99| 丁香五月影| 综合网五月| 色色色色色色色综合| 日韩三级视频一区二区| 色www久视频| 婷婷娌伦网| 五月色情婷婷开心五月色情| 婷婷第六色| 久久综合站| 夜夜躁爽日日| 久久综合丁香激情五月| 色六月婷婷| 玖玖资源站蜜臀| 婷婷丁香久久五月综合| 国产婷婷五月中文字幕高清| 婷婷丁香第一页| 久久永久视频| 日韩不卡DvD| 夜色爱爱亚洲| 婷婷丁香五月天熟女丝袜| 五月综合激情| 五月天开心色色网| 嫩草视频。| 极品人妻VIDEOSSS人妻| 日韩中文字幕| 欧洲MV日韩MV国产| 丁香六月天婷婷色| 色婷婷五月中文字幕在线dvd| 丁香综合网| 极品五月天| 91日在线视频| 超碰激情五月| 91人碰| 色婷婷久久9.com| 国产偷人爽久久久久久老妇APP| 99久视频| 国产午夜伦鲁鲁| 婷婷伊人綜合中文字幕| 99re欧美精品| 婷婷五月丁香A∨| 青吴乐视频| 丁香五月综合狠狠| 97se视频在线| 久久丁香| 开心五月婷| 美女婷婷六月色| 丁香五月婷婷动漫| 99国产这里只有精品| 五月丁香婷婷婷婷综合网| 五月亭亭六月色| 色综久久久| site:wpjngj.com| 99热综合| anquye五月| 开心五月丁香婷婷| 色色色综合| 色色九九五月天| 色色色色色综合| 另类国产区| 丁香婷婷色| 九九99久久| 日木狠狠干| www.天天干.com| www.狠狠操.com| 天天拍久久| 99热精品6| 另类综合色| 婷久久| jiZZdr| 蜜桃成语时李时珍 免费| 久久AAAA片一区二区| 欧美色男人网站| WWW.亚洲无码| www.激情| 久久这里都是精品| 亚洲综合五月天婷婷丁香| 狠狠精品干练久久久无码中文字幕| 日欧一片内射VA在线影院| 九九婷婷五月天| 久久免费丁香| 天天色天天舔天天爱天天爽 | 天天日天天日天天搞| 五月丁香六月在线| www九九免费视频| 色www.con| 少妇日麻屄| 欧美人妻一区二区| 成人超碰网| 色婷婷久久综| 婷婷五月在线播放| 91打屁股免费看| 97黑人精品区| 婷婷色五月色| 欧美色男人网站| 99九九热在线观看| 色五月欧美| 日韩啪啪网| 91综合在线观看| 久久久久久久丁香五月天婷婷| 婷婷五月开心中文字幕在线| 狠狠色婷婷7777久| 五月天日日操夜夜操 | 免费观看的av| 婷婷五月天最新综合你懂的| 婷婷综合视频| 青青艹b| 777.色色| 啪啪啪大香蕉| 色VA| 囯产精品久久欠久久久久久九大| 91偷拍视频| 成人免费va| 欧美性做爰大片免费看办公室| www.婷婷,com| 激情婷婷久久| 五月天开心色情网| 日日夜夜天天综合| 综合激情在线| 丁香五月首页| 婷婷的99视频网站| 九九久久五月天| 超碰AV成人| 色狠狠综合网| 淫视馆av三区| 99热在线精品观看| 在线伦子99热| 538任你爽| 91九色国产熟女| 精品国产va久久久| 人妻操日日| 久久66精品| 99精品成人无码A片观看金桔| 久久九色| 狠狠五月天| 天天摸天天肏| 五月婷婷色| 一起草无码视频| 欧美三级欧美一级| 第2色五月婷| 日韩人妻无码专区| 深爱激情四射| 久久日本wwww色| 在热视频精品| 国产资源在线视频| 夜夜撸夜夜骑| 色婷婷五月亚洲| 野战J办公桌椅H| 婷婷丁香五月激情中文字幕版| 天天插天天插天天插天天插| 亚洲综合新99视频| 久热精彩视频98| 五月婷婷自拍视频| 久久久宗合| 51XX午夜影福利| AV在线观看网站| 激情六月婷婷| 丁香狠狠| 激情图片婷婷丁香五月| 成人va在线播放| 日本激情ⅩXX免费视频| 超碰九热| 国产67194| 9久久精品| 五月天色色网站| 婷婷久久五月| 黄色毛片精品| 啪啪啪综合网| 五月激情久久| 思思99热在线| 在线99色| 国产精品久久久久9999小说| 大香线蕉伊人| 开心五月深爱激情| 婷婷综合网| 99网| 久久婷网| 五月丁香六月婷婷手机无线| 九九热10| 婷婷综合久久综合| 五月亭亭开心网| www.狠狠狠狠| 欧美色色色色色| 99热这里有精品| 五月天婷婷在线播放免费| 色香久久| 熟妇高潮一区av| 色播五月综合网| 精品久久人妻热| 色婷婷无吗| 久色网址| 五月天天天天天天天天天天天天天天天婷婷婷 | 欧美十二区| 亚洲第一黄网| 天天激情欧美美女| 玖玖福利视频资源| 他改变了拜占庭| 91在线视频观看午夜福利| 久超超碰| 六月丁香婷婷综合在线| 久久99热精品a片在线观看| 嫩草国产| 亚洲综合碰| 五月婷婷大香蕉| 久久这里只有国产视频| 丁香桃色综合网| 综合伊人久久| 色播色丁香五月| 天天噜噜| 成人电影一区| 丁香 久久| 亚洲性爱99在线| 久久婷婷五月综合色奶水99啪| 国产精产国品一二三在观看| 午夜丁香| 午夜色婷婷| 九九在线视频| 美欧成人视频| 激情综合网五月天| 色私五月婷婷| 99热这里只有精品青草| 色婷婷色五月天| 五月色 亚洲| 国产在线黄色| 五月婷婷深深爱| 日韩啪啪视品| 久久久全国免费视频| 97久久视频| 97色在线视频| 91Chinese在线| 婷婷五月婷婷| 91九色中文| 午夜做爱影院| 亚洲另类日本| 国产九九一区二区三区| 婷婷操久久| 色婷婷成人| 婷婷五月天欧美图片在线播放电驴| 99在线精品观看99| 婷婷五月花免费视频在线| 亚欧州精品视频| 9久久网| 丁香五月天堂婷婷| 五月婷婷 自拍| 婷婷婷婷午夜| 成人免费视频一区| 激情丁香九九五月综合网| 成人人操| 五月丁香综合啪啪| 久久五月网| 九九热九九热精品| 亚洲一区二区无码蜜乳av| AV 3P| 五月丁香啪啪啪啪| 婷婷五月色情天| 常久最新免费的色吊丝| 亚洲丁香五月天视频| 欧美人妻一区二区| 色狠狠综合| 久久九九99| 激情五月综合婷婷| 夜色五月天| 天天干天天av天天射| www.99.色| 成人AV播放| 色婷婷玖玖影院| www.久久爱.c n| 久久婷婷色情7777网站| 婷婷五月欧美综合| 五月婷婷之综合激情| 另类综合色| 超碰色综合| 99在线观看| 操99| 久久色吧| 人人玩人人橾| 99热这里只有精品国产精品| 99操视频| 超碰cap| 丁香五月婷婷婷桃花影院| 久99久视频免费观看| 婷婷色中文字幕| 桃色激情婷婷伊人网| m色激情网| 91成人视频| 日本欧美成人片AAAA| 五月丁香六月停停停| 夜夜躁婷婷AV| 99热这里精| 久久人妻精品| 成人国产网站在线免费看| 日本理论久久| 99综合99| 天天干 夜夜爽| 无码成人播放器| 五月婷婷激情久久| 五月天久久丁香| 五月激情婷婷综合| 爆乳熟女-区二区三区| 婷婷爱爱蜜臀天天操| 二人电影免费版在线观看| 婷婷瑟瑟五月天| 夜夜谢天天干| 五月天天堂久久| 日韩av干| 色婷婷亚洲婷婷| 六月婷婷AV| 亚洲成色综合网站免费观看| 97碰碰视频在线观看| 欧美日本韩国亚洲| 五月色婷婷亚洲 | 99热免费18| 9久热| 99热这里只有精品最新| 亚洲综合五月天| 天天肏天天肏天天肏| 激情五月综合六月丁香婷婷狠狠干| 五月婷在线观看| 狠狠狠狠狠干| 色婷五月婷婷| 免费黄色视频网址| 操比激情五月综合| 五月色丁香| AⅤ网站在线看| 亚洲婷婷丁香五月在线| 激情综合婷婷| 色久九| 五月丁香六月婷婷姐| 天天日中文| 在线区区区| 欧美激情综合| 天天日日夜夜爽| av久热| 久久aaaaa| 99色免费视频| jiujiuxiangjiaowang| 丁香五月日啪| 国产精品久久久久久久久久 | 日日婷婷不卡| 中国丰满熟女A片免费观| 丁香九月婷婷| 婷婷综合五月| 色婷婷伦理| 欧美精品XXXXBBBB| 五月开心婷婷| av免费在线观看0| 六月亭亭久久综合激情| 久草婷| 久久性爰视频这里只有精品| 天天肏天天舔AV| 色五月天激情| 精品九九婷婷| 9久久久久久久久久久| 亚洲av无码精品色午夜| 91人操人人人操人| jiujiu热在线视频| 国产成人精品一区二三区熟女在线| 久久五月天大美女| 欧美大片| 五月婷婷婷| www.久9| 国产精品色色| 可以免费观看的av网址| 亚洲蜜桃精久久久久久久久久久久| 蜜桃婷婷丁香五月天狠狠久久综合| 99在线精品观看99| 99re思思精品在线观看| 青草青草久9视频在线视频| 久久久久久性爱视频| 欧美WW在线网| 丁香六月天| 激情婷婷人妻| 一区二区三区四区牛| 四色五月婷婷| 播五月婷婷开心| 日本人人超碰| 婷婷九月在线| 人妻系列久久久久久久久久久 | 直接看的AV| 亚洲免费观看高清完整版AV线| 欧美99视频| 六月丁香婷婷视频综合在线观看| 激情涩播| 九九热欧美| 成人欧美一区二区三区在线观看 | 99re思思在线视频| 男人天堂AV在线一区二区| 九九99热| 亚洲无码成人性爰网| 色色综合五月| 色色五月天婷婷| 99免费视频网| ss五月天激情| 99热国产婷婷| 欧美大片| 久草大| 六月丁香综合网| 色九月国产| 这里只有精品视频| 婷婷五月天基地| 婷婷色五月噜噜| 婷婷天堂伊人| 天天做天天爽| 夜夜久久综合网| 激情综合色五月六月婷婷| 亚洲天堂碰碰婷婷| 成人午夜天| 无码髙清| 九九热免费| 午夜色色色极品视频| 大大香蕉综合在线| 国产精品18久久久| 人人摸人人搞| 九月综合| 婷婷五月天在线一区| 丁香五月六月久久综合| 亚州操操| 六月丁香婷婷大香蕉| 99热最新网址| 激情五月天电影| 亚洲第一第二网站| 极品五月天| 婷五月天天| 哇嘎成人久久| 激情婷婷丁香色五月| 中文字幕网伦射乱中文| 99热亚洲| 天天爽夜夜操| 夜夜干夜夜操| 国产亚洲99久久精品| www激情com| 99热99免费| 久久久久久久综合狠狠综合| 欧洲不卡视频| 婷婷五月丁香六月| 久热一本| 色狠狠色| 噜噜干日本| 色欲影香| 色婷婷777狠狠| 婷婷五月天大香蕉在线视频观看| 任你弄在线视频免费| 婷婷五月花| 另类视频五月天| 99热超碰| 综合五月天| 久久综合丁香激情五月| 婷婷五月天精品| www.99婷婷| 色婷婷狠| 色丁香五月婷婷| 大香网伊人久久综合| 亚洲视频二区| 成人看片网站| 120分钟婬片免费看| 婷婷五月天福利| 五月激情小说| 激情图片亚洲| 黄色91在线观看| 色播色丁香五月| 97干在线免费| 亚洲无码成人网| 超碰成人av| 久热中文字幕| 久久亚洲色导航| 色综合色综合色综合高潮| 亚洲中文无码成人| 色人妻五月| 99热无码首页| 大香蕉久艹| 99精品免费视频| 天天日日夜夜| 综合99在线| 99偷拍视频在线日本| 婷婷激情人妻| 激情com| 久久久久久综合五月婷婷| www.丁香五月| 激情婷婷色色| yazhoujiqingav| 成片免费观看大全| www.91.com黄| 五月色丁香国产在线视频| 五月激情婷婷女| 五月天色综合| 亚洲欧洲中文日韩久久AV乱码| 久热精品免费视频4| 99热九九在线| WWW、日本色丁香co m| 九九色99| AV在线免费播放| 91热爆在线| 91大屁股在线| 91久久久久久久| 九九一综合精品| 天天插天天射| 国产成人AV| 99九精品| 婷婷婷五月天最新综合你懂的| 久久99热这里只有精品| 91狠狠综合久久久久久| 久久五月天免费网站| 五月婷婷六月丁香| 久久爱婷婷| 99免费在线| 日本久久九| 四色永久成人网站| 六月丁香六月婷婷欧美| 国产人妻777人伦精品HD| 九九超日本| 丁香五月天天哦| 99re思思热久久| 91九色首页| 日本在线wwww| www.五月婷婷久久.com| 五月天婷婷视频| 人人操婷婷| 久久久er热| 日本久久人| 色色婷婷综合| 这里只精品| 婷婷婷久久久| 久久久久久18| 婷婷五月天亚洲综合网| 另类激情综合| 日本超碰在线| 欧美色99| 五月天伊人久久久久| 久久这里只有精品网| 婷婷丁香色五月| 懂色av蜜臀av粉嫩av永陈冠希| 婷婷亚洲激情在线观看视频| 狠狠操综合| 蜜乳人妻一区二区三区| 婷婷丁香人妻天天爽| 97精品人人A片免费看| jiujiu热在线视频| 日本色色色| 色婷婷91| 青青草五月天| 婷婷色偷拍| 婷婷色爱| 丁香亚洲色综合| 久久久久人无码人妻| 激情小说五月天| 午夜大香蕉| 欧美啪啪9| 激情久久丁香| 久久综合中文字幕| 99在线资源| 影音先锋天天日| 欧美激情伊人| 九九99热久久精品66中文字幕| 色色网91| 色色色地址| 六月丁香色色| 亚洲操人| 婷婷激情五月天天天开心| 日本久久99| 久久综合爱| 五月大香蕉| 91久久久久久久| 久久久www| 久操福利| 99热色精品| 伊人丁香六月婷婷| 香蕉久久国产AV一区二区| 思思99精品视频在线观看| 婷婷五月天激情网| 狠狠久综合| 韩日AV片| 久久99婷婷| 五月丁香婷婷在线| av在线资源| 五月激情视频网| 99婷婷狠狠成为人免费视频| 99热在线成人网站| 另类激情码| 激情五月天综合| 99爱免费在线观看| 思思干精品| 亚洲另类视频| 亚洲色色色色色色色色色| 九九热精品| 亚洲、热| 五月天婷婷基地综合网| 99精品无码| 情婷婷五月天| 婷婷99中文字幕| 99精品在线| 丁香五月在线观看完整版| 婷婷丁香五月天大香蕉| 五月婷婷激情五月| 玖玖资源站蜜臀| 亚洲成人无码网站| 99精品免费| 岛国AV网| 九玖视频这里只有精品| 一区二区你懂的| 久久人人看| 欧美天天综合网站上去吧| 91九色在线观看免费| 丁香五月婷婷超碰在线| 丁香五月天啪啪激情综合网| 国产1区2区3区| 大战熟女丰满人妻AV| 五月天婷婷激情在线色图| 超碰人人在线| 92久操视频| 色五月AV| 五月天色综合| 新五月天婷婷激情电影| 91色五月| 99啪啪骑| 91 九色大美女| 天天操中文字幕| 色婷婷影音| 97色干| 黄色aa观看aaguochan| 91九九| 激情伊人五月天| 三区激情四射av| 91视频五月丁香| 性欧美大战久久久久久久83| 五月激情综合网| 我要射综合| 婷婷综合| aaa久久| 99久久婷婷国产综合亚洲| 丁香五月婷婷五月| 99超级碰碰| 亚洲激情97五月天| 丁香六月婷婷综合麻豆| 六月丁香深深爱综合网| 久久婷五月综合| 日韩精品VIP| 亚洲精品久久久无码| 五月色色色| 色色色色色色网| 伊人9999| 色综合综合色| 天天舔天天插天天干| 色五月婷婷婷婷婷婷婷婷婷婷| 综合网狠狠| 亚洲区1| 亚洲免费综合一区| 国产精品久久久久9999小说 | 色色色热| 99网| 五月丁香综合网| 播四月婷婷六月丁香| 亚洲综合婷婷五月| 五月天色婷婷成人| 婷婷色导航| 毛片色五月| 青青草日本亚洲| 色婷婷在线视频久| 六月婷婷狠狠| 青青草蜜臀| 色情·com| 久鲁鲁色网| 性韩日色婷婷五月天激情啪啪XXX| 婷婷在线综合| 六月丁香久久| 99热最新精品| 日本www五月婷婷| 久久五月网| 久久99久久99精品免视看婷婷| 五月综合婷婷网| 婷婷天天综合| 亚洲亚洲亚洲AAAAAA| 99er热精品视频| 九九無妻| 色玖玖综合网| 99性爱| 亚洲乱码日产精品BD| 精品夜夜澡人妻无码AV| 99久久婷婷精品视频| 五六月婷婷久久| www.久久久久久久久久久| 日韩黄色网络| 色一区高清| 五月天影院婷婷在线观看| 婷婷丁香亚洲五月天| 丁香五月激情视频| 在线视频99| 九九综合久久| 97超碰,人人舔,人人操,人人摸 | 操操操www.com| 精品福利911| 亚洲色婷婷五月| 国产午夜精品一区二区| 六月综合婷婷开心伊人| 日韩黄色中文字幕| 九九青草热| 欧美情月伍月天| 婷婷成人小说综合| 9热在线观看| 99久视频| 久久资源综合| 五月开心婷婷极品激情| 国精产品一区二区三区| 五夜丁香| 欧美怡红院黄站| 色五月婷婷1| 亚洲综合激情五月天婷婷| 亚洲综合色五月| 超碰色综合| av在线播放网站| 欧美色图天堂网色| 丁香五月激情视频在线| 九九re精品视频在线观看| 国产亚洲精品AAAAAAA片| 亚洲视频另类| 涩涩涩,com| 天天爽天天摸天天爱| 丁香婷婷啪啪| 91疯狂操操操操| 五月天成人网婷婷| 色婷婷97| 91操在线| 婷婷丁香五月激情图片| 五月色色网| 成人AV片播放| 台湾综合丁香五月蜜桃| 天天天在线观看| 亚洲V国产V欧美V久久久久久| 国产97色在线 | 日韩| www.婷婷,com| 99自拍视频在线| 97色欧美| 天天爱天天吃狠天天透| 色五月丁香五| 人妻乱码久久久| 婷婷五月丁香香蕉| 五月婷婷,六月激情| 武则天精品久久| 五月婷久久综合| 五月天婷婷爱丁香中文字幕| 狠狠操狠狠爱| 2015超碰| 婷婷五月丁香六月综合网| 国产毛片精品一区二区色欲黄A片| 亚洲午夜视频| 天天摸天天透天天舔| 五月天丁香婷婷久久九| 亚洲精品乱码久久久久99| 在线观看中文字幕亚洲| 91丁香婷婷综合资源| 成人性爱精品视频| 国产真实乱对白精彩| 亚洲综合网区| 五月婷婷之综合激情| 日韩欧美成人片| 五月丁香六月婷婷色日| 99在线一区| 精品三区影院| 五月天婷婷狂暴白浆| 五月丁香啪啪激情| 欧美在线| 激情五月婷婷在线区| 丁香五月自拍| 99re热| 色五月首页| 色情·com| 99久久99久久综合| 天天爽天天日人人爱 | 激情丁香九九五月综合网| 五月六月丁香激情| 六月激情网| 爽天天天天天天天| 国产97色在线 | 日韩| 人人草人人爱| 国产五月天婷婷| 天天肏在线观看| 久久激情综合| 99色色网| 思思色综合网站| 六月成人网| 色婷婷色五月综合| 真实熟女-91九色| 激情五月色播五月| 九热视频精品| 黄网在线免费观看| 成人五月天在线观看| 天天日夜夜爽| 五月婷婷欲色| 停停综合色色| 99久久久国产大片区| 婷婷爱五月天| 森林影视大全,最好看的2019年视频 | 色哟哟www| wwwss在线观看| 噜噜噜噜噜日本视频| 狠狠五月婷婷| 久久 天天| 91天天操天天干天天射| 777精品久无码人妻蜜桃| 色婷婷色情| www,99色| 99久热| 色婷五月天网站| 国产精品岛国片在线观看免费| 丁香婷婷五月色成人网站| 他改变了拜占庭| 色婷婷丁香女女| 另类综合色| www。五月天激情| 色色欧美色色色| 丁香五月成人婷婷| 色五月综合婷婷久久综合婷婷久久综合婷婷久久综合婷婷久久 | 大香伊人婷婷影院| 成人精品在线| 5月丁香六月婷婷| yellow视频在线观看91| 亚洲精品一区中文字幕乱码| 日本色爽| 免费日韩99| 婷婷五月天大香蕉| 亚洲色婷婷| 日日噜噜夜夜狠狠久久丁香六月| 婷婷六月激情小说网| 免费日本aⅴ中文字幕 | 久久er99热精品一区二区| 噜噜色噜噜网| 婷婷色色狠狠| 先锋资源婷婷| 1024亚洲无码| 级情九色| 韩国三级五月天婷婷。| 婷婷啪啪| 99九九热视频免费| 99热在线观看| 天天色图| 99热99热在线| 婷婷大美在线| 久久HD| yirenjiqingshiping| 在线视频你懂得| 丁香五月婷综合网| 激情精品久久| 婷婷五月天黄色| 99九九99九九九视频精品| 少妇激情五月天| 五月婷婷在线免费观看| 中国AV性爱观看| 天天爽人人综合免费7799| 97操女视频| 国产亚洲精品AAAAAAA片| 天堂色婷婷| 亚洲色爱综合| 精品皮股午夜AV| 美女天天艹人人爽| 97碰碰视频在线观看免费| 日韩啪啪自拍| 久久婷婷五月天大香蕉| 色色色欧美| 色欲丁香| 色色五月婷婷久久| 丁香五月激情婷婷婷婷在线观看| 青青草日本亚洲| 深爱五月综合网| 91Chinese在线| www.久久爱.com| 五月丁香人妻| www.爱婷婷.com| 狠狠爱丁香婷| 国产精女同一区二区三区久| 成人精品一区日本无码网| 激情五月天 婷婷| 97操碰视频| 综合网啪| a久久| 99精品在线观看| 99在线小视频| 五月婷婷在线免费观看 | 五月天操逼网| 极品另类| 亚洲黄色精品| 欧美精品啪啪| 五月丁香婷中文| 久久婷婷综合网| 影音先锋色婷婷| 丁香九月婷婷综合| 日日噜狠狠| 人妻无码精品一区| 日本狠狠干| 人妻久久久| 香蕉久久av一区二区三区 | 精品人妻在线| 色婷婷激情| 超碰人人在线| 五月丁香婷成人网| 婷婷色香六月综合激情| 第四色婷婷五月| 精品久久久久久久人妻| 天天干com| 五月在线| PORNY九色9l自拍视频成人| 9色视频在线| 色婷五月天| 免费观看18视频网站| 超碰成人黄色网| 久久综合香蕉国产国产蜜臀AV| 极品少妇婷婷五月| 中文字幕AV网址| 久久五月丁香| 激情五月婷婷色综合| 亚洲人人操BD| 丁香五月天激情综合| 97色婷婷成人综合在线观看| 丁香六月激情综合| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | 7777国产盗摄农村女人| 熟美女麻豆| 99久re热视频精品98| 丁香五月天婷婷久久综合| 久久激情五月天| 久超超碰| 精品亚洲国产成AV人片传媒| 丁香亚洲色综合| 婷婷少妇激情| 婷婷五月激情基地| 久久精热| 色激情五月天| 色九九九综合| 六月婷婷综合| 五月天婷婷黄色| 亚州操操| 国产精品天天狠天天看| 精品爆操| 婷婷六月丁香久| 五月婷婷丁香五月婷婷丁香| 色婷婷色99国产综合精品| avh片在线观看| 中文无码婷婷| 深爱激情av| 久操热线| 日本熟女啪啪| 天天狠天天狠| 亚洲激情另类| ..真实国产乱子伦对白在线_欧| AVV黄| 五月丁香直播| 日韩 中文 欧美| 97 天堂| 大香蕉婷婷丁香天堂AV| 五月天精品综合在线| 另类视频一区| 大香蕉视频婷| 色婷婷精品小视频| 日韩啪| 亚洲情欲久久| 99re在线观看视频| 色五月婷婷综合在线| 人人摸人人操人人爱| 91爱啪啪| 五月天婷婷综合免费| 四LLL少妇BBBB槡BBBB| 一本久道综合99| 99热99这里有免费的精品| 国产亚洲99久久精品| 超级97碰碰| 森林影视大全,最好看的2019年视频 | 天天日天天肏天天奸| 丁香五月天激情| 色停停五月,在线观看| 一级黄在线| 国产色丁香| 九九亚洲综合| 久激情| 久久久久久丁香五月| 亚洲色五月| 99九九在线| 激情五月天综合网| 久9草在线观看视频| 丁香五月aV| 这里有精品| 超碰人人艹| 婷婷狠狠18禁久久| 另类图片五月激情| 综合激情深爱| 无码 av电影| 日本精品。999| 九九婷婷网五月天| 激情久久五月天| 一区二区乱码视频| 99久在线精品99re5热视频| 色五月婷婷色五月| a免费在线| 五月天婷婷永久免费视频| 国产成人精品一区二三区熟女在线| 另类在线| 思思精品视频| 99综合色色色| 激情五月天小说网| 五月婷婷色播视频| 网站免费一站二站| WWW,五月天| 伊人在线视频| Av狠狠色丁香婷| 婷婷五月天在线观看| 99色精品视频| 久热无码| 欧美五月丁香在线观看| 思思re最新视频| 婷婷色丁香五月| 色九四色| 婷婷色爱| 五月丁香久久丝袜啪啪| 人妻久久久久久| 色情婷婷。| 久久久久亚洲AV无码网影音先锋| 久9无码视频| 熟女激情网| 婷婷五月小说色综合| 久久综合九九| 亚洲色欲AAAAAA| 中文超碰视在线| 99精品性爱| 97视频.干com| 丁香五月天婷婷激情| 欧美综合激情五月丁香| 九月激情婷婷丁香| 5月婷婷激情在线| 91在线操| 婷婷五月丁香六月| 丁香成人综合| 久久婷婷大香蕉| 激情五月婷| 久鲁鲁色网| 久操香蕉| 91热视频色网站| 九九热这里只有精品556| 无码人妻丰满熟妇奶水区码| 色五月亚洲开心网| 日本色色网站| 四色永久成人网站| 天天舔天天摸天天透| 综合激情专区| 99热最新| 五月婷av| 午夜婷婷| 1024AV视频| 久久狼人天堂| 亚洲五月天综合| 亚洲色图啪啪| 天天色视频| 丁香色综合| 久99久在线| 夜夜嗨一区二区三区直播内容 | 天天干天天操天天干天天操天天干天天操| 六月丁香AV| www色色com| 五月天在线视频尤物视频在线看| 色九九九九| 天天爽天天操| 天天日综合| 婷婷五六月丁香| 婷婷香蕉视频| 亚洲天堂久久| 久久这里只有精品99| 狠狠操天天操| 我去色色网五雨天| 熟女人妻一区二区三区免费看| 26uuu在线观看| 色婷婷五月丁香在线观看| 97干在线看| 在线观看免费视频| 六月婷婷综合激情| 狠狠狠狠操| 天搞天天天天天| 亚洲精品成人片在线播| 蜜臀AV在线观看| 99操逼视频| 青草少妇激情| 人人爱天天摸摸天天爱| 色v综合网| 99精品综合在线| 成人精品一区日本无码网| 狠狠爱婷婷爱| 日韩在线婷婷五月天综合| 日韩砖区| 久久久www| 日本在线视频看se99| 人妻丰满精品一区二区A片| 99日本黄站| 婷婷社区五月天| 婷婷狠狠五月综合| 亚洲小视频免费观看| 99五月婷| 久久九九99.www| 成人做爰高潮A片免费视频| 五月天综合在线| 五月丁香婷婷婷激情爱爱| 亚洲最大五月天成人网| 六月丁香婷婷色综合| 日韩色色网| 亚洲在线操| 久久超级碰视频| 4399在线观看免费高清毛片| 成人中文网| 99精品在线| 五月婷丁香| 九九热只有精品| av网址在线| 日本色99| 操操自拍| 狼人婷婷久久| 五月天偷拍| 欧洲激情精品婷婷| 中文乱子伦视频| www.五月天社区| 人人操人av| 战争与艾拉电影免费观看| 五月丁香婷中文字幕| 天天成人综合| 婷婷久久视频| 色天天综合色| 呦呦v线| 丁香五月天av| 99久久精品网| 五月丁香婷中文字幕| renrencaoav| 97婷婷丁香五月天激情图片| 综合久久丁香婷婷,五月婷婷六月丁香,开心激情综合网,六月丁香在线观看,婷婷丁 | 丁香五月婷婷激情中文| 亚洲无码猫咪| 丁香香蕉婷婷| 亚洲AV免费国产电影| WWW99视频| 91丨九色丨熟女|新版| 日日噜噜夜夜狠狠久久丁香六月| 丁香五月首页| 99热在线爱| 丁香六月狠狠| 天天操天天操综合| 1010日日无码| 色在线视频网2025| 五月天婷婷丁香| 色色丁香婷婷综合| 色婷五月| 99色在线视频| 日本一级黄色片。| 日韩久久日| 色情五月天。| 丁香六月啪| 六月激情婷婷综合| 六月狠狠综合| 国产精品色色| 色色网站| 日韩一本操| 九九热青青草| 五月丁香综合激情网| 色五月开心婷婷| 五月婷婷手机在线| 无码色| 九九这里只有精品| 99燥99日| 99热高清在线| 青草青草久热这里只有精品| 丁香婷婷六月天| 色播播婷婷| 99热综合| 五月丁香六月激情| 1区2区视频| eeuus五月婷| 思思久久99热只有频精品66| 超碰国产在线观看| 色色婷婷丁香| 婷婷五月天丁香久久| 色婷婷97| 婷婷五月天成人基地| 99热免费精品| 亚洲成人AV电影在线| 狠狠色丁香久久| 天天综合干| 人人草人人舔| 日本人妻伦在线中文字幕 | 婷婷色五月噜噜| 色综合激情| 97av在线视频| 69精品人妻不卡视频| 六月婷婷成人| 四色五月婷婷| 国产精品久久久久久亚洲毛片| 99热全是精品| 天天拍夜夜爽日日| 九月av| 综合AV网| 9999久久久久| 婷婷伊人五月天| 久热99| 久久99精品久久久久久三级| 热的国产,热的综合,热的有码 | 吾爱AV导航| 天天噜天天爱| 99久久婷| 五月天激情日色在线| 99热欧| 五月天激情图片| 东北熟女视频99| 日韩狠狠色婷婷| 日本啪啪天堂| 9999综合99综合人| 色五月天综合| 激情www| 97五月天婷婷综合激情网| 久久人妻情侣| 天天插天天插| 九九热re99re6在线精品| 六月五月婷婷| 狠狠操狠狠插| 色五月综合激情| 欧美色色色色色| 九九热视频精品999| 天天爱天天做天天舔| AAA久久| www、丁香五月天| 热久久99热欧美国产亚洲| 久久久99精品免费观看| 久久这里只有精彩| 九色视频91疯狂| 99九九中文字幕视频| 99综合一区| 日本女色人人| 99er6| 超碰99热| 六月婷婷天天操夜夜爽视频| 精品久久久999| 综合www色| 五月天婷婷视频| 色婷婷小视频| 国产日日操夜夜操的肉棒视频| 天堂无码人妻精品AV一区| 激情五月激情综合俺也去婷婷小说| 久热欧美| 99热精品在线在线| 亚洲色激情| 久久a热| 免费观看日韩成人av| 亚洲婷婷成人五月天| 国产成人精品一区二三区熟女在线| 久操热| 色五月琪琪| 人人澡玖玖一| 欧美影院婷婷| 黄网免费看| 婷婷伊人久久| 四虎成人精品永久免费AV九九| 亚州操操| 五月丁香另类图片| 成人片在线播放| 91大神操美女| 日本99久久| 久久女婷| www激情| 人人色性网| 操人妻AV| 婷婷开心激情五月激情网| 9 1 A v久久久|