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

ARTICLE DETAIL

資訊詳情

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

Java+HTML5綠色環(huán)保網(wǎng)站課設(shè)實(shí)戰(zhàn):從架構(gòu)到部署避坑指南

Java+HTML5綠色環(huán)保網(wǎng)站課設(shè)實(shí)戰(zhàn):從架構(gòu)到部署避坑指南 簡介這套基于JavaHTML5的綠色環(huán)保網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)項(xiàng)目面向高校畢業(yè)設(shè)計(jì)或課程設(shè)計(jì)場景采用管理員與普通用戶雙角色設(shè)計(jì)。系統(tǒng)覆蓋首頁、環(huán)保資訊、環(huán)保課堂、環(huán)?;顒?dòng)、環(huán)保科普、環(huán)保培訓(xùn)及信息交流等模塊支持登錄注冊(cè)、資訊維護(hù)、用戶管理、知識(shí)評(píng)論等典型Web功能適合用作Java Web開發(fā)練習(xí)或論文配套項(xiàng)目。資源包為zip格式共2000個(gè)文件壓縮包大小約37.32MB文件類型以png、js、css、java、jsp、xml、jpg為主png等圖片構(gòu)成頁面視覺素材js/css負(fù)責(zé)前端交互與樣式j(luò)ava/jsp完成后臺(tái)業(yè)務(wù)邏輯xml/properties用于配置文件sql腳本可初始化數(shù)據(jù)庫此外還包含PSD設(shè)計(jì)稿等項(xiàng)目輔助文件。目前已有147人學(xué)習(xí)下載可參考其頁面布局、功能分層與交互邏輯快速搭建一套具備完整業(yè)務(wù)鏈的環(huán)保主題網(wǎng)站也可在此基礎(chǔ)上擴(kuò)展低碳出行、綠色校園等專題模塊提升畢業(yè)設(shè)計(jì)的完整度和演示效果。1. 拿到一套 javaHTML5 綠色環(huán)保網(wǎng)站別急著寫代碼先看它值不值得當(dāng)課設(shè)每年到這個(gè)時(shí)間點(diǎn)總有人被畢業(yè)設(shè)計(jì)或課程設(shè)計(jì)卡在選題上——要 java、要網(wǎng)頁、還得有點(diǎn)現(xiàn)實(shí)意義。綠色環(huán)保網(wǎng)站就是那種看著不起眼、實(shí)際上把「前端展示 后端管理 數(shù)據(jù)庫存取」全串起來的典型項(xiàng)目。我拆過不少同類資源這套基于 java HTML5 的綠色環(huán)保網(wǎng)站設(shè)計(jì)實(shí)現(xiàn)核心功能是前臺(tái)環(huán)保資訊展示、用戶注冊(cè)登錄、留言互動(dòng)外加后臺(tái)對(duì)內(nèi)容和用戶的管理技術(shù)上覆蓋 Servlet、JSP、MySQL前端用 HTML5 語義化標(biāo)簽和表單校驗(yàn)。它的定位是「能跑通、能演示、能答辯」的完整課設(shè)項(xiàng)目適合 java 基礎(chǔ)尚可但缺一個(gè)全流程實(shí)戰(zhàn)的學(xué)生也適合想快速搭一個(gè)信息展示類網(wǎng)站的非科班開發(fā)者。資源里帶演示意味著你可以先看效果再?zèng)Q定要不要?jiǎng)邮指摹@比從空項(xiàng)目開始攢要省事得多。2. 項(xiàng)目拆開看架構(gòu)MVC 分層與 JSP/Servlet 的選型邏輯2.1 先摸目錄結(jié)構(gòu)別一上來就雙擊 index.html很多新手拿到項(xiàng)目壓縮包第一反應(yīng)是找 index 頁面然后雙擊打開結(jié)果看到滿屏標(biāo)簽樣式全亂。這是不對(duì)的。java HTML5 的綠色環(huán)保網(wǎng)站本質(zhì)是動(dòng)態(tài)站點(diǎn)頁面上的環(huán)保新聞、用戶留言都是從數(shù)據(jù)庫實(shí)時(shí)讀取的純靜態(tài)打開只有空殼。正確姿勢是先看目錄結(jié)構(gòu)確認(rèn)它是不是標(biāo)準(zhǔn) JavaWeb 工程。常見做法是 eclipse 或 IDEA 的 Web 項(xiàng)目結(jié)構(gòu)WebContent 下放 JSP、CSS、JSsrc 下放 java 包分為 servlet、dao、entity、util 幾層。先記住一個(gè)判斷標(biāo)準(zhǔn)如果 resources 或 src 目錄里有大量 .java 文件那這就是需要部署到 Tomcat 才能跑的項(xiàng)目不是純靜態(tài)網(wǎng)頁??匆幌碌湫湍夸洸季謳缀跛械恼n設(shè)項(xiàng)目都是這么拆的GreenWebsite/ ├── src/ │ ├── com.ep.controller/ # Servlet 控制器層 │ │ ├── LoginServlet.java │ │ ├── RegisterServlet.java │ │ └── NewsServlet.java │ ├── com.ep.dao/ # 數(shù)據(jù)庫操作層 │ │ └── NewsDao.java │ ├── com.ep.entity/ # 實(shí)體類 │ │ ├── User.java │ │ └── News.java │ └── com.ep.util/ # 工具類數(shù)據(jù)庫連接、字符串處理 │ └── DBUtil.java ├── WebContent/ │ ├── index.jsp # 前臺(tái)首頁 │ ├── newsList.jsp # 環(huán)保資訊列表 │ ├── newsDetail.jsp # 資訊詳情 │ ├── register.jsp # 用戶注冊(cè)頁 │ ├── login.jsp # 登錄頁 │ ├── admin/ # 后臺(tái)管理頁面 │ │ ├── adminIndex.jsp │ │ └── newsManage.jsp │ ├── css/style.css │ ├── js/main.js │ └── WEB-INF/web.xml # 核心配置把 Controller、Dao、Entity、Util 分開放好處是出了問題能快速定位。比如登錄報(bào)錯(cuò)先去 LoginServlet 看請(qǐng)求參數(shù)接收再去 UserDao 看 SQL 條件不用把整個(gè)項(xiàng)目翻一遍。這個(gè)分層看起來笨但課設(shè)答辯時(shí)老師喜歡問「你分層了嗎」有這一層結(jié)構(gòu)能少費(fèi)很多口舌。資源里如果還提供 sql 文件通常放在項(xiàng)目根目錄或 db 文件夾導(dǎo)入 MySQL 時(shí)注意字符集選 utf8不然中文容易變問號(hào)。2.2 為什么課設(shè)項(xiàng)目還在用 JSP/Servlet而不是 Spring Boot打開這個(gè)項(xiàng)目你會(huì)發(fā)現(xiàn)它沒有 pom.xml也沒有 application.yml就是純 JSP Servlet JDBC。第一次看到的人容易疑惑現(xiàn)在企業(yè)里不都 Spring Boot 了嗎為什么課設(shè)還在用這套答案很簡單這跟「用對(duì)工具」無關(guān)跟「課程要求」有關(guān)。大部分學(xué)校的 java Web 課程設(shè)計(jì)大綱里明確要求體現(xiàn) Servlet 和 JSP 的使用目的是考察你對(duì) HTTP 請(qǐng)求處理、會(huì)話跟蹤、JDBC 連接這些基礎(chǔ)原理的理解Spring Boot 封裝掉的東西反而沒法在答辯時(shí)講清楚。從個(gè)人角度我建議你按原有技術(shù)棧做完再私下補(bǔ)一個(gè) Spring Boot 版本面試時(shí)能證明你不是只會(huì)課設(shè)那套。技術(shù)選型這件事別追求「新」追求「老師看得懂、你能講明白」。Servlet 的生命周期、doGet 和 doPost 的區(qū)別、request 和 response 的作用范圍這些是答辯必問的而 Spring Boot 里一個(gè) RestController 注解就把所有細(xì)節(jié)蓋住了。如果資源本身是 SSM 或 Spring Boot 寫的另當(dāng)別論可這套項(xiàng)目定位就是課設(shè)那遵循課設(shè)邏輯就是最優(yōu)解。數(shù)據(jù)庫連接用 JDBC 直連配置在 DBUtil.java 里換數(shù)據(jù)庫或換密碼改這一個(gè)文件就行。這種「把變化收斂到一個(gè)點(diǎn)」的設(shè)計(jì)恰恰是答辯時(shí)能講出彩的地方。2.3 數(shù)據(jù)庫連接與 web.xml先把基礎(chǔ)設(shè)施配好再談頁面凡是 JavaWeb 項(xiàng)目第一步永遠(yuǎn)是確認(rèn)數(shù)據(jù)庫連接是對(duì)的。綠色環(huán)保網(wǎng)站這種項(xiàng)目數(shù)據(jù)庫無非三張表撐全場用戶表、環(huán)保資訊表、留言表偶爾加個(gè)管理員表。你先看資源里的 SQL 腳本把表結(jié)構(gòu)導(dǎo)到 MySQL 里。然后打開 DBUtil.java改數(shù)據(jù)庫地址、用戶名、密碼。這一步如果漏了后面所有頁面訪問都會(huì)報(bào) 500 或連接超時(shí)。最常見的坑是 MySQL 版本差異導(dǎo)致驅(qū)動(dòng)類名不一致5.x 用 com.mysql.jdbc.Driver8.0 以上要換成 com.mysql.cj.jdbc.DriverURL 還要帶 serverTimezoneAsia/Shanghai否則驅(qū)動(dòng)直接拋時(shí)區(qū)異常。web.xml 是這個(gè)項(xiàng)目的命脈文件Servlet 映射、歡迎頁面、字符集過濾器全在這配。不少資源會(huì)漏掉編碼過濾器導(dǎo)致表單提交中文變亂碼。我一般拿到項(xiàng)目第一件事是檢查 web.xml 里有沒有這行配置filter filter-nameencodingFilter/filter-name filter-classorg.apache.catalina.filters.SetCharacterEncodingFilter/filter-class init-param param-nameencoding/param-name param-valueUTF-8/param-value /init-param /filter filter-mapping filter-nameencodingFilter/filter-name url-pattern/*/url-pattern /filter-mapping這段配置的作用是讓 Tomcat 對(duì)所有經(jīng)過的請(qǐng)求和響應(yīng)統(tǒng)一按 UTF-8 處理。有人問我頁面里寫了meta charsetutf-8還不夠嗎真不夠。頁面 meta 只決定瀏覽器怎么解析響應(yīng)體而 POST 請(qǐng)求提交的參數(shù)在到達(dá) Servlet 之前由 Tomcat 用默認(rèn)的 ISO-8859-1 解碼不裝過濾器中文必亂。URL 里帶 serverTimezoneAsia/Shanghai 是另一個(gè)常見補(bǔ)丁MySQL 8.x 默認(rèn)時(shí)區(qū)是美國不指定會(huì)報(bào)The server time zone value ?D1ú±ê×?ê±?? is unrecognized這行配置就是后半句的后悔藥。配完這兩處項(xiàng)目才能算「能跑」再往下才是頁面邏輯。3. 前端 HTML5 部分實(shí)戰(zhàn)從靜態(tài)頁面到動(dòng)態(tài)渲染的完整鏈路3.1 首頁布局與 HTML5 語義化標(biāo)簽的使用綠色環(huán)保網(wǎng)站的首頁一般是這個(gè)套路頂部導(dǎo)航欄帶 logo 和菜單中間是環(huán)保資訊輪播圖往下是新聞列表和環(huán)保小貼士底部是版權(quán)信息。HTML5 帶來的變化是布局標(biāo)簽從滿屏 div 變成 header、nav、main、article、section、footer 這些語義化標(biāo)簽。這套資源的首頁如果寫得規(guī)范你應(yīng)該能看到成體系的語義化結(jié)構(gòu)。語義化標(biāo)簽的價(jià)值不在視覺效果而在三點(diǎn)第一對(duì)搜索引擎友好爬蟲能分清哪塊是導(dǎo)航哪塊是正文第二對(duì)屏幕閱讀器友好殘障用戶能跳過導(dǎo)航直接讀內(nèi)容第三代碼可讀性強(qiáng)你半年后回頭改自己寫的頁面一眼能找到功能區(qū)。下面是從這類首頁中抽出來的典型結(jié)構(gòu)去掉具體樣式后的骨架header classsite-header h1 classlogo綠色環(huán)保在線/h1 nav classmain-nav ul lia hrefindex.jsp首頁/a/li lia hrefnewsList.jsp環(huán)保資訊/a/li lia hrefknowledge.jsp環(huán)保知識(shí)/a/li lia hrefmessage.jsp留言板/a/li lia hrefadmin/adminIndex.jsp后臺(tái)/a/li /ul /nav /header main section classbanner div classbanner-item active保護(hù)地球從我做起/div div classbanner-item垃圾分類資源循環(huán)/div /section article classnews-list h2最新環(huán)保動(dòng)態(tài)/h2 !-- 此處由 Java 代碼循環(huán)輸出新聞項(xiàng) -- /article /main footer classsite-footer p? 2024 綠色環(huán)保網(wǎng)站設(shè)計(jì)項(xiàng)目/p /footer這段結(jié)構(gòu)里輪播圖區(qū)域banner-item默認(rèn)隱藏只有帶 active 類的顯示通過 js/main.js 里定時(shí)器切換 active 類來實(shí)現(xiàn)輪播。想換文案或圖片直接在 HTML 里改文本和背景圖路徑即可。news-list這個(gè) article 在純靜態(tài)階段是空殼實(shí)際運(yùn)行時(shí)由 JSP 的c:forEach標(biāo)簽或% %表達(dá)式循環(huán)輸出數(shù)據(jù)庫里的環(huán)保新聞標(biāo)題和摘要。這也是資源演示里最亮眼的部分前臺(tái)不是死的用戶每發(fā)一條環(huán)保知識(shí)評(píng)論頁面刷新后就能看到新內(nèi)容。3.2 HTML5 表單校驗(yàn)注冊(cè)登錄頁的前端防線注冊(cè)頁和登錄頁是 HTML5 特性用得最集中、也最容易翻車的地方。HTML5 原生表單校驗(yàn)用起來完全不需要 JavaScript直接在 input 標(biāo)簽上寫 required、type、pattern、minlength 這些屬性瀏覽器就會(huì)在提交時(shí)自動(dòng)攔截空值、格式錯(cuò)誤、長度不足。這套資源里注冊(cè)頁如果用了這些屬性是有東西可以講的。比如郵箱輸入框?qū)懗蓆ypeemail瀏覽器會(huì)自動(dòng)校驗(yàn)是否包含 符號(hào)手機(jī)號(hào)輸入框用pattern1[3-9]\d{9}限制 11 位且首位為 1密碼框加minlength6要求最短長度。這些屬性全部是聲明式的不需要額外引入任何庫。看一個(gè)典型的注冊(cè)表單實(shí)現(xiàn)form actionregister methodpost idregForm label forusername用戶名/label input typetext idusername nameusername required placeholder4-16位字母或數(shù)字 pattern[a-zA-Z0-9]{4,16} label foremail郵箱/label input typeemail idemail nameemail required label forpassword密碼/label input typepassword idpassword namepassword required minlength6 maxlength20 label forconfirmPwd確認(rèn)密碼/label input typepassword idconfirmPwd nameconfirmPwd required button typesubmit注冊(cè)/button /formusername 輸入框的 pattern 是正則校驗(yàn)[a-zA-Z0-9]{4,16}表示只允許大小寫字母和數(shù)字長度 4 到 16 位不滿足時(shí)瀏覽器彈出提示且不發(fā)請(qǐng)求。密碼和確認(rèn)密碼的一致性檢查純 HTML5 屬性做不了這個(gè)要交給 js/main.js 里的 submit 事件。監(jiān)聽表單提交比對(duì)兩個(gè) password 框的值不一致則event.preventDefault()阻止提交并彈出警告。前端校驗(yàn)只是提升用戶體驗(yàn)后端 Servlet 里必須再做一次同樣的判斷因?yàn)橛脩艨梢岳@過瀏覽器直接 POST 數(shù)據(jù)。這是課設(shè)答辯時(shí)一個(gè)非常好的加分提問點(diǎn)前端校驗(yàn)與后端校驗(yàn)各自解決什么問題。3.3 CSS3 動(dòng)效與響應(yīng)式讓頁面看起來不是「原生課設(shè)臉」很多 java 課設(shè)網(wǎng)站一眼就能被認(rèn)出來因?yàn)轫撁媸?2008 年的風(fēng)格表格布局、彩色字體、沒有圓角按鈕點(diǎn)下去毫無反饋。這套資源里如果帶了 style.css通常會(huì)用 CSS3 的圓角、陰影、漸變、過渡動(dòng)畫來緩解這個(gè)問題。常見做法是給導(dǎo)航菜單加 hover 變色過渡——鼠標(biāo)移上去背景色在 0.3 秒內(nèi)平滑變化而項(xiàng)目答辯時(shí)老師路過看一眼會(huì)覺得這頁面「下過功夫」。CSS3 動(dòng)效的實(shí)現(xiàn)方式非常簡單復(fù)雜度控制在「看代碼能懂、改參數(shù)就能調(diào)」這個(gè)級(jí)別不需要引入第三方框架。響應(yīng)式是另一個(gè)能打動(dòng)人心的點(diǎn)。用媒體查詢?cè)谄聊粚挾刃∮?768px 時(shí)把導(dǎo)航菜單改為上下堆疊、把多列布局改單列就能當(dāng)「適配移動(dòng)端」的賣點(diǎn)寫進(jìn)報(bào)告。代碼如下media (max-width: 768px) { .main-nav ul { flex-direction: column; } .news-grid { grid-template-columns: 1fr; } .site-header { text-align: center; } }媒體查詢的原理是瀏覽器根據(jù)當(dāng)前視口寬度選擇匹配的樣式塊。max-width: 768px意味著視口小于等于 768px 時(shí)生效常見手機(jī)豎屏都在這個(gè)范圍內(nèi)。flex-direction: column把原來橫向排列的導(dǎo)航項(xiàng)改為縱向堆疊避免手機(jī)上字?jǐn)D成一團(tuán)。grid-template-columns: 1fr把資訊列表從三列改為一列保證每張卡片在窄屏上不被壓縮到看不清。這些改動(dòng)不影響原來 PC 端的樣式因?yàn)榇笥?768px 的屏幕走的是默認(rèn)規(guī)則。做這套東西的微信小程序版或手機(jī)版要留出這個(gè)發(fā)展規(guī)劃后端接口按 JSON 輸出前端另做適配即可。4. 后端 Java 核心代碼解讀登錄鑒權(quán)、環(huán)保資訊管理與留言交互4.1 LoginServlet從請(qǐng)求參數(shù)接收到 Session 會(huì)話保持后端部分首先要盯的是登錄邏輯。用戶在 login.jsp 輸入賬號(hào)密碼提交表單 action 指向 LoginServletTomcat 根據(jù) web.xml 里的映射找到對(duì)應(yīng)類并調(diào)用 doPost 方法。整個(gè)處理鏈路是固定的四步接收參數(shù)、校驗(yàn)參數(shù)、查詢數(shù)據(jù)庫、返回結(jié)果。拿這個(gè) Servlet 講清楚一個(gè) HTTP 請(qǐng)求在后端的生命周期是答辯時(shí)最出彩的橋段。看一段典型的登錄實(shí)現(xiàn)代碼protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding(UTF-8); String username request.getParameter(username); String password request.getParameter(password); if (username null || password null || username.isEmpty() || password.isEmpty()) { response.sendRedirect(login.jsp?errorempty); return; } UserDao dao new UserDao(); User user dao.findByUsernameAndPassword(username, password); if (user ! null) { HttpSession session request.getSession(); session.setAttribute(loginUser, user); response.sendRedirect(index.jsp); } else { response.sendRedirect(login.jsp?errorfailed); } }這段代碼干了四件事也是后續(xù)所有功能的模板。第一行 setCharacterEncoding 是解決中文亂碼的保底手段雖然前面 web.xml 里配了過濾器但 Servlet 里再寫一遍不虧。getParameter從請(qǐng)求體里取出 userName 文本框的值如果沒傳或傳了空串就跳回登錄頁并帶 errorempty 參數(shù)。查詢走 UserDaoSQL 是select * from user where username? and password?用的是 PreparedStatement 參數(shù)占位而不是字符串拼接這是防 SQL 注入的基礎(chǔ)寫法。查到了用戶就創(chuàng)建 Session 對(duì)象把 User 塞進(jìn)去后續(xù)頁面用session.getAttribute(loginUser)判斷是否已登錄。沒查到就帶著 errorfailed 回登錄頁頁面頂部用 JSP 判斷 error 參數(shù)并顯示不同提示。誰能說出「為什么密碼不能直接明文存數(shù)據(jù)庫應(yīng)該存 MD5 或 BCrypt 哈希值」誰就能在答辯時(shí)把老師帶進(jìn)自己的節(jié)奏。4.2 環(huán)保資訊列表的 DAO 查詢JDBC 手動(dòng)寫也不難資訊列表頁是前臺(tái)內(nèi)容最密集的地方新聞標(biāo)題、發(fā)布時(shí)間、摘要被渲染成卡片列表。這背后是 NewsDao 的一個(gè)查詢方法從 news 表查出狀態(tài)為已發(fā)布的記錄按發(fā)布時(shí)間倒序排列返回一個(gè) ArrayListJSP 頁面拿到這個(gè)集合用 JSTL 標(biāo)簽循環(huán)輸出。這套邏輯在 Spring Boot 里被 ORM 框架封裝了但在課設(shè)項(xiàng)目里每一步都是顯式代碼每一個(gè)結(jié)果集轉(zhuǎn)換都看得見。遇到網(wǎng)絡(luò)慢或數(shù)據(jù)庫沒數(shù)據(jù)時(shí)頁面顯示空列表而不是報(bào)錯(cuò)靠的就是對(duì)這個(gè) DAO 方法返回空集合的理解??匆幌碌湫筒樵兎椒╬ublic ListNews findAllPublishedNews() { ListNews newsList new ArrayList(); String sql SELECT id, title, summary, publish_time, cover_url FROM news WHERE status 1 ORDER BY publish_time DESC; try (Connection conn DBUtil.getConnection(); PreparedStatement ps conn.prepareStatement(sql); ResultSet rs ps.executeQuery()) { while (rs.next()) { News news new News(); news.setId(rs.getInt(id)); news.setTitle(rs.getString(title)); news.setSummary(rs.getString(summary)); news.setPublishTime(rs.getTimestamp(publish_time)); news.setCoverUrl(rs.getString(cover_url)); newsList.add(news); } } catch (SQLException e) { e.printStackTrace(); } return newsList; }注意 JDK 7 以來的 try-with-resources 寫法Connection、PreparedStatement、ResultSet 三個(gè)資源在后半個(gè)括號(hào)里依次聲明方法結(jié)束自動(dòng)關(guān)閉不用手動(dòng)寫 finally 去 close。這套簡寫能幫你少寫五六行樣板代碼也讓代碼更像生產(chǎn)級(jí)寫法。如果這個(gè)資源里的 DAO 還在手動(dòng) close你可以當(dāng)個(gè)改進(jìn)點(diǎn)提出來寫進(jìn)課設(shè)報(bào)告的「項(xiàng)目改進(jìn)說明」里。分頁是另一個(gè)值得深挖的腦洞把 LIMIT 換成LIMIT ?, ?方法簽名里加 pageNum 和 pageSize 參數(shù)就能實(shí)現(xiàn)不用改數(shù)據(jù)庫表結(jié)構(gòu)。答辯時(shí)老師說「你這個(gè)新聞越攢越多頁面會(huì)很慢」你答一句「加一個(gè)分頁查詢即可把 LIMIT 和當(dāng)前頁參數(shù)綁定」比夸頁面好看有用得多。4.3 留言板與用戶注冊(cè)POST 請(qǐng)求的寫入鏈路留言板是綠色環(huán)保網(wǎng)站這類項(xiàng)目里互動(dòng)功能的擔(dān)當(dāng)用戶在頁面底部輸入留言內(nèi)容和聯(lián)系方式提交后由 MessageServlet 接收、校驗(yàn)、寫入數(shù)據(jù)庫再重定向回留言頁面。這個(gè)過程和登錄、注冊(cè)的鏈路一樣但有一個(gè)關(guān)鍵差異登錄和查詢是讀操作留言是寫操作。寫操作必須做兩件事內(nèi)容非空校驗(yàn)和預(yù)防 XSS。非空校驗(yàn)和登錄時(shí)一樣用 isEmpty 判斷XSS 防護(hù)則是把script這類標(biāo)簽轉(zhuǎn)義成lt;scriptgt;否則用戶留言里塞一段 JS 就能在別人瀏覽器里執(zhí)行。寫操作后的跳轉(zhuǎn)用重定向而不用轉(zhuǎn)發(fā)也是細(xì)節(jié)——防止用戶刷新頁面時(shí)表單重復(fù)提交。注冊(cè)功能的寫入鏈路更長先查用戶名是否已存在不存在才插入新記錄存在就跳回注冊(cè)頁提示換一個(gè)用戶名。這個(gè)「先查再插」的邏輯有并發(fā)問題兩個(gè)請(qǐng)求同時(shí)查到用戶名不存在同時(shí)執(zhí)行 insert數(shù)據(jù)庫里就會(huì)出現(xiàn)兩條同名記錄。解決辦法有兩個(gè)方向一是給 user 表的 username 字段加唯一索引插入時(shí)拋 DuplicateKeyException 再提示用戶換名字二是把查詢和插入合并成一條INSERT INTO user (username, password) SELECT ?, ? FROM dual WHERE NOT EXISTS (SELECT id FROM user WHERE username ?)。第二個(gè)方案里的FROM dual是 MySQL 的一個(gè)特殊單行表主要用來構(gòu)造沒有實(shí)際表的查詢結(jié)構(gòu)。這個(gè)并發(fā)場景在課設(shè)里不會(huì)真的發(fā)生但把這個(gè)思考寫進(jìn)報(bào)告的「設(shè)計(jì)亮點(diǎn)」里能讓方案設(shè)計(jì)的深度往上提半檔。4.4 后臺(tái)管理的迷你權(quán)限系統(tǒng)為什么 admin 目錄要單獨(dú)放后臺(tái)管理是綠色環(huán)保網(wǎng)站的隱藏板塊普通用戶在前臺(tái)看不到入口只有登錄賬號(hào)是 admin 或用戶表里 role 字段等于 1 的人才允許訪問。這個(gè)權(quán)限控制在課設(shè)版本里不會(huì)做得太重最常見的是兩層判斷頁面頂部加代碼塊里判斷 Session 里的用戶對(duì)象是否為空且 role 是否為管理員后端的 AdminServlet 在 doGet 和 doPost 里重復(fù)一遍同樣的判斷不信頁面那層——因?yàn)橛脩艨梢岳@過前臺(tái)頁面直接用 URL 訪問 Servlet。如果資源里只有第一層判斷那你改起來也不難在每個(gè)后臺(tái) Servlet 的方法第一行加個(gè)判斷不滿足就response.sendError(403)等于給后臺(tái)加了第二道門。這個(gè)改進(jìn)的價(jià)值在于講管理后臺(tái)時(shí)可以用「雙重認(rèn)證」這個(gè)詞。5. 從下載到上線的坑部署避坑指南與四項(xiàng)典型翻車記錄5.1 坑一Tomcat 啟動(dòng)報(bào)了 Port 8080 被占用頁面永遠(yuǎn)打不開現(xiàn)象雙擊 startup.bat 后控制臺(tái)還沒刷出日志就停了或者瀏覽器訪問 localhost:8080 直接拒絕連接。翻日志看到Port 8080 required by Tomcat v9.0 Server at localhost is already in use。原因電腦上某個(gè)進(jìn)程已經(jīng)占用了 8080 端口通常是之前殘留的 Tomcat 實(shí)例、Oracle 的 HTTP 服務(wù)或者某個(gè)開發(fā)工具的調(diào)試端口。解決打開命令行執(zhí)行netstat -ano找端口 8080 對(duì)應(yīng)的 PID然后taskkill /PID pid /F。如果該端口上有其他想保留的程序就改 Tomcat 的端口配置在 server.xml 里找到Connector port8080那一行改成 8081 或 9090然后訪問時(shí)用新端口。改端口后注意如果項(xiàng)目里有代碼寫死了重定向地址那也得跟著改JSP 頁面里response.sendRedirect(http://localhost:8080/...)的絕對(duì)路徑是最容易漏網(wǎng)的地方建議所有重定向都用相對(duì)路徑或request.getContextPath()拼出來的動(dòng)態(tài)路徑。5.2 坑二MySQL 連接失敗報(bào)錯(cuò)指向ClassNotFoundException或Communications link failure現(xiàn)象項(xiàng)目跑起來訪問任何需要查數(shù)據(jù)庫的頁面都報(bào) 500Tomcat 控制臺(tái)打出一長串異常要么是ClassNotFoundException: com.mysql.jdbc.Driver要么是Communications link failure。原因前者是驅(qū)動(dòng) JAR 沒用對(duì)——MySQL 5.x 的驅(qū)動(dòng)類名是 com.mysql.jdbc.DriverMySQL 8.x 換成了 com.mysql.cj.jdbc.Driver如果項(xiàng)目的 Java 工程里引入的是老驅(qū)動(dòng)包連新數(shù)據(jù)庫必然掉鏈子后者是數(shù)據(jù)庫地址或端口寫錯(cuò)比如本機(jī) MySQL 改了端口到 3307而 DBUtil 里還寫著 3306。解決驅(qū)動(dòng)類名改掉后還需要把 mysql-connector-java 的 JAR 包放進(jìn)項(xiàng)目的 WEB-INF/lib 目錄或者如果用的 IDEA在 Project Structure 里把 JAR 添加到 Libraries。連接 URL 的規(guī)范形如jdbc:mysql://localhost:3306/green_db?useSSLfalseserverTimezoneAsia/ShanghaiuseSSLfalse是關(guān)掉加密連接避免 MySQL 8 默認(rèn)開啟 SSL 帶來的告警serverTimezone是指定時(shí)區(qū)少一個(gè)都不行。5.3 坑三注冊(cè)和登錄功能正常但留言內(nèi)容一提交就變問號(hào)現(xiàn)象前臺(tái)所有頁面都是正常中文注冊(cè)用戶名也能正常入庫唯獨(dú)在留言板輸入的中文提交后數(shù)據(jù)庫里存的是????刷新頁面顯示的內(nèi)容全是問號(hào)。原因數(shù)據(jù)庫連接 URL 里沒帶characterEncodingutf8JDBC 驅(qū)動(dòng)用了默認(rèn)的 latin1 字符集去編碼中文字符存進(jìn)數(shù)據(jù)庫就已經(jīng)損壞了不是顯示層的問題。解決分兩步——第一步在 DBUtil.java 的連接 URL 末尾加characterEncodingutf8第二步確認(rèn)數(shù)據(jù)庫表本身的字符集是 utf8mb4登錄 MySQL 執(zhí)行ALTER TABLE message CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;。這兩步分別管的是「傳輸時(shí)的編碼」和「存儲(chǔ)時(shí)的編碼」缺一個(gè)都不行。這里有一個(gè)人容易忽略的細(xì)節(jié)MySQL 的 utf8 最多支持 3 字節(jié)字符而 emoji 表情需要 4 字節(jié)得用 utf8mb4 才存得下如果表里只想存純中文utf8 也夠用但統(tǒng)一用 utf8mb4 可以減少很多后顧之憂。5.4 坑四本地好好的一部署到別的電腦上就 404 或圖片全裂現(xiàn)象在自己電腦上跑項(xiàng)目沒任何毛病拷到舍友電腦或答辯老師電腦上首頁能打開但 CSS、JS、圖片完全不加載F12 看網(wǎng)絡(luò)請(qǐng)求全是 404。原因JSP 頁面里引用了本機(jī)項(xiàng)目部署后的絕對(duì)路徑比如link relstylesheet href/GreenWebsite/css/style.css換電腦部署時(shí)項(xiàng)目名變了路徑自然就廢了。解決所有靜態(tài)資源引用都改成由 JSP 動(dòng)態(tài)生成項(xiàng)目上下文路徑標(biāo)準(zhǔn)寫法是%request.getContextPath()%/css/style.css或者用 JSTL 的c:url標(biāo)簽生成。普通做法是每次部署換機(jī)器都用 IDEA 重新配置一個(gè) Tomcat這個(gè)操作本身不復(fù)雜但你要留神別在 web.xml 里寫死了context-root否則路徑永遠(yuǎn)對(duì)不上。直接改 JSP 里的路徑引用是最省事的方式項(xiàng)目換名字也不怕因?yàn)?request.getContextPath() 拿到的就是當(dāng)前部署真實(shí)名稱。6. 把演示做到能直接答辯的程度打包部署與驗(yàn)收自查清單項(xiàng)目跑通只是第一步想讓它在答辯現(xiàn)場不出丑還得提前演練。建議把打包部署到 Tomcat 的路徑完整走一遍。用 IDEA 的情況在菜單里點(diǎn) Build → Build Artifacts → 選擇綠色環(huán)保網(wǎng)站的 war 包編譯后輸出到 target 目錄用 eclipse 則是右鍵項(xiàng)目 → Export → WAR file勾選導(dǎo)出源文件和部署描述符輸出到一個(gè)干凈目錄。然后把 war 包復(fù)制到 Tomcat 的 webapps 目錄啟動(dòng) Tomcat 后它會(huì)自動(dòng)解壓部署訪問路徑是http://localhost:8080/GreenWebsite/。這里有個(gè)技巧解壓出來的目錄名就是項(xiàng)目上下文路徑如果你想讓訪問路徑短一點(diǎn)直接把目錄改成 ROOT訪問http://localhost:8080/就能直接進(jìn)首頁。部署到云服務(wù)器是進(jìn)階而且必問的問題。最少操作路徑是一臺(tái)系統(tǒng)為 CentOS 或 Ubuntu 的云主機(jī)遠(yuǎn)程安裝 JDK 8課設(shè)項(xiàng)目一般用 1.8 版本兼容性最好下載 Tomcat 9 的 tar.gz 包并解壓到 /opt/tomcat把 war 包用 scp 傳上去放進(jìn) webapps然后改防火墻規(guī)則確認(rèn) 8080 端口開放。數(shù)據(jù)庫部分要把本地的 sql 文件導(dǎo)入云服務(wù)器上的 MySQL記得把 DBUtil.java 里的 localhost 改成云數(shù)據(jù)庫的內(nèi)網(wǎng)或公網(wǎng)地址。如果公網(wǎng) IP 被防火墻禁了 3306別為省事開全端口改成用 SSH 隧道連數(shù)據(jù)庫。答辯現(xiàn)場最實(shí)用的附件是「驗(yàn)收清單」。出發(fā)前在本地電腦把項(xiàng)目從頭到尾跑一遍照著這個(gè)清單打勾訪客能不能打開首頁并瀏覽環(huán)保資訊點(diǎn)擊資訊詳情能不能看到完整內(nèi)容訪客能不能注冊(cè)新賬號(hào)注冊(cè)后能不能正常登錄并看到自己的登錄狀態(tài)未登錄時(shí)訪問后臺(tái)地址會(huì)不會(huì)被攔回來管理員賬號(hào)能不能登錄后臺(tái)后臺(tái)能不能新增一條環(huán)保資訊并且前臺(tái)刷新后能看到這條新內(nèi)容留言板提交留言后管理員在后臺(tái)能看到退出登錄后再次訪問需要登錄的頁面會(huì)不會(huì)被重定向到登錄頁。這九條全部打勾項(xiàng)目才具備「演示」的基本資格否則答辯現(xiàn)場現(xiàn)場翻車就難看了。我自己的習(xí)慣是每次拿到一個(gè)新的課設(shè)項(xiàng)目落地之后不急著改功能先用「登錄 → 增刪改查 → 權(quán)限攔截 → 編碼轉(zhuǎn)換」的順序把全鏈路跑一遍每跑通一環(huán)記一個(gè)截圖。這些截圖后面排版成演示文稿時(shí)一張圖配一句講解比現(xiàn)場臨場演示穩(wěn)定得多。尤其是「未登錄用戶訪問后臺(tái)被攔截」這種截圖在答辯時(shí)能講三分鐘是一個(gè)白送的加分項(xiàng)。希望這套基于 javaHTML5 的綠色環(huán)保網(wǎng)站能幫到你少走幾個(gè)彎路特別是部署環(huán)節(jié)把上面的巡查落實(shí)了再談改代碼能省下大把時(shí)間。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
六月综合婷婷开心伊人| www.9797国产| 婷婷五月电影| 欧洲MV日韩MV国产| 伊人婷婷五月天av| 亚洲第一第二网站| 色婷婷丁香九月| 超碰人人摸人人操| 婷婷五月天Av| 深爱婷婷网| 高清无码.com| 久9久9久9久9久9久9| 国产日韩欧美| 色色色色色色网| 日本颜色视频人人爱| 97久操| 99久久婷婷| 人妻 性久久久久久| 人人操人人干AV| 国产亚洲精品AAAAAAA片| xx久久| 五月色亭丁香| 五月天综合激情网| 操人精品| 国产又色又爽又黄又免费| 久99热| 久久ri精品视频| 五月天婷婷丁香| 人人做天天爱| 亚洲人妻一区二区 | 欧亚洲在线高清视频| 岛囯综合激情网| 女人天堂 AV| 婷婷美女精品视频| 操人妻90p| 中文字幕性爱视频| 九九RE视频在线精品| 日日艹思思热| 亚洲bt丁香五月天婷婷激情小说| 99热在线里有精品| 天天草天天爱| 极品 少妇 内射| 91操在线观看| 五月丁香成年黄色| 亚洲综合视频网| 激情的五月婷婷蜜桃| 婷婷六月色开| 婷婷五月婷婷| 亚美欧色影院| 99色精品| 五月丁香啪啪激情| 夜夜爱网站| 亚洲俩性性爱图片久久第六页| 91seav| 99.N在线视频| 任你擦免费视频| 人人操AV| 在线观看的av| 亚洲人人艹| 六月丁香av| 九九99热久久精品66中文字幕| 激情五月天伊人影院| 亚洲AV电影av| 久久99精品久久久久子伦| 丁香花五月天社区| 香蕉人在线香蕉人在线 | 日日夜夜综合| 这里只有精品69| 五月丁香伊人网| 日韩AV色色色| 色播五月丁香综合| 91成人性爱视频| 日韩99色99| 五月丁香激情婷婷| 色五月色五天色情网| 色情五月丁香| 午夜精品人妻无码一区二区三区| 亚洲九九99精品视频在线播放| 丁香伍月婷电影全集| 亚洲人人操| 99操| 五月婷婷黄| 五月伊人91| 亚洲av综合在线| 丁香五月婷婷高清| 六月丁香啪啪| 性色99| 久久亚洲激情五码| 思思久久精品| 丁香五月婷婷老师网站| 五月丁香激情四射综合| 99成人无码| 久久a热| 色五月婷婷激情| 国产精品久久久久久喷浆| 五月天婷婷在线播放| 欧洲不卡视频| 香蕉久日夜| 久久aaaaa| 99视频综合网| www.91.com处女在线直播| 五月丁香在线精品| 婷婷激情五月综合| 成人.在线日韩| 亚洲中文字幕网| 天天干天天av天天射| ...婷婷五月综合不卡,国产在线手机| 婷婷激情丁香五月天综合| 五月天婷婷青青草| 开心激情站| 久cao香蕉影院| 婷婷久久免费| 激情人妻蜜夜系列区| 日本WwW色偷偷丁香花久久久京东热| 日韩成人综合| 天天日夜夜夜操操操操| 99re热在线视频| 伊人在线视频| 日本一级一级一级一级| 五月丁香成人视频| 成人免费黄色短视频| 色婷婷香蕉在线| 任你操精品免费| 五月婷婷丁香啪啪| 六月丁香综合| 日韩成人精品中文字幕电影| 狠狠干五月天婷婷网| 性色99| 婷婷色五月激情| 丁香婷婷五月色成人网站| 97碰免费视频在线| 玖玖热视频| 开心丁五月| 停婷丁五月在线| AV电影在线播放| 久久久久久久11111111111| 婷婷五月综合啪| 日本3级片偷拍网站| 99热青青草| 亚洲mm色| 五月天色色色| 超碰五月婷婷五月天| 超碰在线人妻| 国产日韩欧美性爱| 中文字幕人妻熟女在线| 97久久草草超级碰碰碰| 婷婷五月天天爽| 欧美日综合| 91九九热| 这里只有精品免费观看网占| 色婷婷五月综合激情中文字幕| 丁香五月婷婷亚洲色图| 涩涩涩五月天| 日韩精品电影| 开心婷婷丁香五月| 玖玖九九9999在线观看视频精品| www..com色爱| 无码少妇高潮喷水A片免费| 丁香五月婷婷啪| www激情| 色九九一二| 淫荡综合网| 亚洲亚洲人成综合网络| 日本不卡五月婷婷丁香| 亚洲激情| 99国产精品白浆在线观看免费| 久久国产AV| 丁香婷婷六月激情| 不卡在线中文字幕无| 欧亚洲在线高清视频| 色婷婷AV在线| 亚洲超碰在线| 久草五月婷婷| 九九99在线免费在线观看视频| 一级韩国产精品毛| 狠狠操狠狠插| 大香蕉久久草| 婷婷六月丁| 色五月琪琪| 五月天综合久久| 婷婷久久性爱| 久久综合人妻| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 超碰操网| 热九九九九| 五月丁香婷婷三级| 偷偷操99| 激情婷婷六月天| 日韩 中文 欧美| 青青艹b| 亚洲天堂色色| 婷婷色吧| 九月av| 五月天婷综合| 精品人妻伦一二三区久| 综合激情伊人影视在线| av国产精品| 五月丁香在线婷婷蜜桃| 亞洲自怕| 久99久精品视频| 天天色综网| 六月色激情| 久久婷婷色| 激情小说 五月天| 精品久热69| 色三级色三级| 九九热国产| 色婷婷a| 亚洲九九夜夜| 99热日| 99色精品视频| 九 九九九AV| 色99视频| 久re热视频| 久久免费干| 天天摸天天肏| 日本精品99网站| 五月天操逼网| 中国无码av| 精品综合五月| 精品AV无码超碰| 人人操AV| 日日骑夜夜撸| 亚洲乱啪| 这里只有精品视频在线| 婷婷五月天免费| 欧洲区自拍| 五月久久婷婷丁香| 丁香婷婷十月| 99热精品在线观看| 婷婷伊人久久无码色五月| 五月天综合视频| 色欲婷婷五月天| 免费视频WWW在线观看网站| 深爱激情五月婷婷| 丁香五月瑟瑟| 五月 成人 婷婷| 另类天堂| 综合婷婷五月天| 激情五月天啪啪视频| 精品国婬伦V无码久久久| 五月综合激情| 五月丁香六月婷婷的女人| 九月激情婷婷丁香| 五月婷婷综合影院| 亚洲熟妇AV乱码在线观看| 欧美顶级少妇做爰HD| 在线观看av网站| 成人无码髙潮喷水A片| 精品无吗va视频免费观看| 亚洲九区| 欧洲S级在线观看| 可以看的AV| 婷婷色正月| 亚洲五月六丁香激情| Caop在线| 丁香婷婷老熟女综合网| 九九色热| 婷婷亚洲影院| 91九色精品| 天天色色婷婷| 这里只有精品99视频| 日韩AV一区二区三区| 国产做爰视频免费播放| 色五月激情五月| 欧美成人色婷婷| 5月丁香婷婷| 夜夜爱伊人| 99re久热| 婷婷9月天| 91中文狠狠综合| www.色五月| 婷婷香蕉香| 亚洲视频二区| 97干免费视频| 91丨九色丨熟女|新版| 天天摸天天日天天舔| 日本99视频精品免费播放| 做爰丰满少妇1313| 伊人五月人妻精品| 99re这里有精品手机在线| 人妻五月天激情开心网| 丁香五月婷久久| 久久精彩视频| 丁香五月婷婷五月| 高清免费在线视频| 大香蕉婷婷色| 久久伊人日日夜夜| 99视频这里有精品| 五月丁香色色网| 国产亚洲精品AAAAAAA片| 99精品热视频只有精品10| 超碰A V在线| 91九色超碰| 97超碰免费超级在线观看| 色五月天综合网| 五月天婷久精视频| 欧美成人日韩| 大香蕉久久久| 9月色婷婷| 天天精品视频免费观看| 人人操9| 26uuu偷拍亚洲欧洲综合| 97色色婷婷五月天| 日韩操人| 99热无码| 激情五月综合网| 大香蕉220| 五月丁六月婷| 久久九九蜜| 婷婷伊人久久综合| 国产激情综合五月久久| 久久婷婷五月丁香网| 久9无码视频| 噜噜操操| 婷婷五月噜噜| 991精品在线视频| 六月丁香网| 亚洲啪| 久久99免费视屏| 天天做综合网色综合| 色五月婷婷影院| 午夜精品人妻无码一区二区三区| 天天久久婷婷| 日日想日日夜日日操| 野战毛片三一3| 婷婷丁香五月天激情| 国产性爱色| 五月综合视频在线| 五月婷中文字幕| A短视频免费在线观看| 色五月婷婷五月| 国产肥白大熟妇BBBB视频| 狠狠爱婷婷丁香| 国产综合激情五月久久| 婷婷成人视频| 色婷婷久久| 日婷婷久久开心| 99视频内射三四| 婷婷性爱视频在线| 色吧五月婷婷| 婷婷五月丁香图片人人操| 狠狠色婷婷7777久| 青青草婷婷综合五月| 99综合| 饮料下药迷倒漂亮女同事强干| 天天色天天| 久久综合丁香激情五月| 成人在线观看精品| 中文字幕日韩成人| tingtingjiqingwuyue| 俺也去综合| 欧美综合五月丁香六月婷| 这里只有精品视频99| 亚洲啪啪视频| 67194线路二在线观看| 五月天丁香成人| 日本丁香五月婷婷| 99综合免费视频| 思思热久热| 五月丁香婷婷基地| 日韩婷久| 天天综合色| 99精品偷自拍| 久久五月婷综合网| 午夜不卡久久精品无码免费| 国产性色蜜乳| 影音先锋91| 另类激情五月天。| 色五月婷婷综合在线| 99在线精品视频| 久久综合26p| 性生活视频98791| 激情小说五月天中文字幕| 五月丁香婷婷视频| 岛囯综合激情网| 色999亚洲人成色| 丁香五月六月激情久久| 色婷婷五月综合| 秋霞av吧| 九九这里有精品视频| 综合婷婷五月天| 天天色天天操天天射| 色婷婷免费视频| 国产精品蜜臀99| 五月天婷婷基地| 一起肏在线视频| 丁香五月成人论坛| 人妻啪啪啪| www久久久久久| 丁香五月亚洲无码| 天天干夜晚夜操| AV片在线观看| 婷婷丁香五月天小说| 五月天婷婷在线观看| 伊人热婷婷| 五月天婷基地| 色色热| 激情久久四色| 五月婷婷久久爱| 色五月丁香伊人| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 色丁香五月婷婷| 婷婷综合色网| 激情六月婷婷| 99re8热精品免费视频| 婷婷五月天视| 另类在线| 亚色网站小视频| 天天日天天干天天操| 手机旧版看人妻1025| 五月综合无码| 大香蕉七区| 婷婷久久亚洲| 日本欧美成人片AAAA| 人人爽天天莫| 99精品在线观看| 婷婷五月天受日本法律保护| 亚洲色婷婷| 99超级碰碰| 亚洲婷婷五月天激情| 超碰自拍天堂| 俺去也综合| xxxx五月天色色| 激情五月视频在线婷婷| 人人操人人看97干| 九色91视频| 成人五月天丁香婷| 丁香久久| 激情网站综合五月天| 国外亚洲成AV人片在线观看| 丁香婷婷综合五月天| 丁香五月成人| 五月天成人在线| 久久xxxx| 五月天艹天天| 无码九九九九| 99思思| 视频这里只有精品| 欧美婷婷色| 人人做人人看人人摸| 久草婷妨| 五月婷婷人人人操| 99亚洲精品视频| 2017狠狠干| 在线播放成人网站| 丰满少妇猛烈A片免费看观看| 色五月婷婷五月丁香五月| 久久日韩婷婷五月| 中文字幕人妻AV| 亚洲成av人影院| 婷婷精品在线| 五月丁香色| 久久九九免费视频| www激情| 俺去也在线www色官网| 综合玖玖性爱免费视频| 亚洲旡码| 久久一操| 伊人久热91| 欧美97超碰| 99热人人| 久久黄色网扯| 青青草网武则天| 久久久久久激情| 五月婷综合| 丁香伊人综合| 91成人看| 丁香五月手机在线| 九九性视频| 开心五月综合激情网| 夜夜骑福利资源| 天天日,夜夜爽| 大香蕉九九操| 大香蕉久久伊人网| www.cao.com久久| 99视频在线观看地址| 婷婷久久五月天| 六月婷婷在线视频| 婷婷五月综合激情免费视频| 婷婷日日天天| 六月色丁香中文字幕| 99精品在线下载| 五月天丁香久久| 专区无日本视频高清8| 久久婷婷六月综合综合| 天天日天天做天天操| 丁香五月激情婷婷婷婷在线观看| 精品无码99| 99热6色| 永久精品| 五月婷婷综合网| 五月婷婷激情五月| av高清无码| 国产99久9在线+|+传媒| 婷婷成人AV| 欧美色色色色色色色| jiujiu热在线视频| 热99国产精品| 丁香五月婷婷乱| 99热九九这里只有精品10| 伍月激情天| 女人天堂 AV| 日本女人久久| 欧美色综合天天久久综合精品| 99热这里只有精品8| 高潮毛片又色又爽免费| 69色婷婷| tingting五月天亚洲| 激情综合五月色丁香婷婷| 色五月丁香婷婷在线观看| 久久伊人9| 色婷婷色99国产综合精品| 国产欧美日韩一区二区三区| 色色色色网| 久8色色| 久久9热| 日本久久精品| 婷婷中文字幕在线| 五月丁香WWW| 天天草天天爱| 婷婷五月天狠狠色| 激情五月婷婷| 99久久97久久欧美综合网| 九九热色视频| 99热只有| 91嫩草国产线观看亚洲一区二区| 亚洲区1| 色婷婷狠狠| 六月丁香色婷婷| www激情| 9一精品视频观看| 久久五月视频| 97se视频在线| 97超喷视频在线观看| 久久这里精彩免费在线观看| 丁香六月情| 婷婷丁香熟妇综合网| 热996精品在线观看| 五月丁香激| 99视频精品8 | 日日干天天射| 五月婷婷黄色毛片| 人妻操在线看| 疯狂做受XXXX高潮A片动画| 五月丁香婷婷激情影院欧美| 激情色视频| AV九九| 人妻精品在线| 婷婷色在线视频| 欧美色必爱| 丁香五月综合福利视频导航| 五月婷激情| 日本在线99| 可以观看的AV| 九九色黄色| 天天日,夜夜爽| 亚洲五月婷婷| 五月丁香六月成人| 国产精品久久7777777精品无码| 99热免费| 亭亭丁香aV| 欧美六月| 99色婷婷| 99色在线视频| 久久综合五月情| 五月婷婷色白丝| 1024婷婷综合久久五月天| 日本久久视频| 另类图片激情五月天| www.五月婷婷久久.com| 天天爽综合网| 久久丁香五月| 99这里有精品| 夫妇交换刺激做爰| 欧美性交一区二区三区| 色爱综合网| 日韩影院三级| 插少妇综合网| 伊人天天色| 亚洲综合婷婷五月| 三级av在线| 日本精品在线噜噜噜| 天天操天天操天天操天天操天天操 | 久久色五月天| 丁香婷婷性爱| 久久这里只有精品热在99| 五月婷婷久久综合| 依人大香蕉| 天天爽日日搞| 91久久久久| 婷婷在线午夜| 婷婷五月激情小说| 丁香六月久久| 婷婷五月色| www.久久| www色婷婷com| 日本三级日本三级三级人妇四虎| 九月丁香婷婷| 99精品久久久久久久婷婷久久| 色婷婷丁香五月天在线视频| www.婷婷| 狠狠色 综合色区| 亚洲人妻Av| 99色1| 狠狠色狠狠| 婷婷五月天国产传媒| 热99精品视频五月| 五月丁香花激情综合网| 日本婷婷| 国产性爱一级| 天天综合网亚洲综合网| 久热九九| 夜夜AVV| 99热视| 亚洲视频二区| 色综合久久88色综合天天| 人人干天天舔| 色欲影香| 狠狠干狠狠操狠狠爱| 九九热这里都是精品6| 五月天婷婷影院| 日韩艹比| 梁铮版《蜘蛛女侠》在线| 99这里只有精品| 久久无码成人| tingtingjiqingwuyue| 99成人在线观看| 日本无码专区| 99热6这里之有精品| 久久久大香蕉| 无码A片一区二区免费| 操日本人妻视频| 六月丁香啪啪啪| 99九九在线精品热动漫| 九热视频| 99热亚洲| 婷婷丁香六月五月天| 偷拍91九色| 五月深情久久| 日日撸日日操| 色婷婷六月| 99这里只有精品视频在线| 碰碰91| 五月丁香六月综合图| 成人精品人妻| 五月久久丁香| 中文字幕操比影片| 婷婷五月天a| 香蕉久久av一区二区三区 | 天天日天天摸天天| 九九综合| 97五月久久丁香婷婷| 综合色七七| 色婷婷成人做爰A片免费看网站| 激情四射网| 欧洲激情精品婷婷| 五月婷婷丁香综合| 九九热99精品| 丁香五月婷婷亚洲综合精品| 77777亚洲午夜久久| 丁香六月天婷婷色| 性按摩玩人妻HD中文字幕| 丁香五月天激情视频| 久久最新色| 婷婷五月天视频亚洲| 婷婷丁香五月欧美人| site:wpjngj.com| 五月激情视频| 爱久综合| 五月天激情图片网| 99久久高清视频| 伊人九热| 九九精品9| 成人精品视频99在线观看免费| 99视频在线| 这里只有精品免费视频| www.婷婷五月| 99热这里是精品| 日本婷婷| 一本道在线电影| 99精品成人无码A片观看金桔| 天天日夜夜| 91碰| 久久婷婷五月| 成人短视频在线| 久久六月天| 五月婷综合| 久久九九色| 五月天丁香| 少妇大叫太大太粗太爽了A片| 五月婷婷色色| 99婷婷精品推荐在线视频| 操操操97| 99在线综合视频| 97色图片中文字幕视频在线观看 | 操人久久| 五月丁香六月在线欧美| 狠狠人人| 女人天堂 AV| 激情小说在线视频| 淫视馆aV二区一区| 国产真人做爰视频免费| 无遮挡国产高潮视频免费观看| 婷婷99狠狠躁天天久久久九九九| 超碰成人影视| 丁香五月婷婷av| 激情丁香五月天综合| 五月婷婷色播网| 丁香六月婷婷一区二区三区| 久碰婷婷视频| 色五月婷婷在线| 97干在线视频精品店| 亚洲另类AV| 色五月婷婷中文字幕| 日本特黄aaaaa| 久久五月综合| 九月婷婷综合| 国产一区二区av免费| 色五月综合97| 久婷久婷激情肉| 五月天丁香啪啪综合| 。久久久久久久久久久久久久人妻| 亚洲色网址| 色色亚洲| 丁香五月天堂网AV| 国产色色网站网址| 激情婷婷丁香| 久久综合久色欧美综合狠狠| 久久久久激情网| 五月天成人在线视频丁香| 五月丁香人妻| 欧美在线视频99| 丁香花婷婷五月天| 五月丁香激情婷婷综合字幕| 99免费视频| 亚洲亚洲人成综合网络| 久久久久久久久久久97| www,婷婷五月天777me,com| 五月激情综合网| 成人片黄网站色大片免费毛片| 97人人干视频| 成人五月天在线观看| 婷婷五月天免费视频| 欧美日韩999| 玖玖精品婷婷| 天天干天天色天天干| 91蜜桃婷婷狠狠久久综合9色| 九月婷婷人人操人人舔人人爱| 九色婷婷| 婷婷五月激情图片| 婷婷最新地址| 99惹| 玖玖婷婷五月天| 五月色情婷婷| 五月婷婷伊人久久| 人妻少妇色综合| 男人天堂99| 色五月丁香六月欧美综合| 久久97| 超碰免费人人| 99久久婷婷五月综合| 红桃91人妻爽人妻爽| 无码毛片992367| 操骚货在线| 日本啪啪网| 免费精品99| 成人日韩欧美| 色吧婷婷五月亚洲| 亚洲综合色网站| 亚洲综合九九| 丁香婷婷六月天| 天天射影院| 99热久久日本| 婷婷综合成人五月天| 婷婷综合亚洲| 99日本黄站| 丁香六月狠狠干| 五月丿香啪啪| 九九久久高清| 婷婷九月丁香天堂丁香天堂| 9在线9在线婷婷在线国产| 婷婷五月丁香国产| #NAME?| 天天日色情| 激情五月婷婷视频| 91久女| 精品国产va久久久久| 中文AV在线播放| 欧美性做爰大片免费看办公室| 99人人操人人操人人精| 五月婷婷开心综合| 久热9热| 99热6色| 亚洲无码www| 五月丁香婷婷激情澎湃四射| 国产乱妇无乱码大黄AA片| 婷婷九月激情| 大香蕉 婷婷| av操一操| 婷婷网影院| 久久人人看| 男人天堂伊人五月丁香| 色色色综合| 这里只有免费的精品| 婷婷九九色| 天天天天操| 淫视馆aV二区一区| 伊人婷婷五月天| 性爱先锋AV| 丰满少妇猛烈A片免费看观看| 性色欲情 网站| 成人精品一区日本无码网| 婷婷五月天成人| 色五月激情五月| 欧美婷婷丁香五月社区| 操操啪| 亚洲综合网激情小说| 色婷婷综合久久| 五月六月伦理| 日本一级黄色电影| 欧洲MV日韩MV国产| 色综合色综合色综合色综合| 婷婷色九月| 能看的av| 思思久久精品| 开心久久五月天| 人妻激情久久| 成人在线精品| 天天综合永久| 九九亚洲视频| 欧美色小说婷婷| 五月天婷婷丁香导航| 五月色婷婷综合| 中国女人做爰A片| 五月婷婷色播| 99精品视频网| 丁香五月激情五月色综合| 精品网站:999WWW| 99热精品10| 俺去也五月| 我爱大香蕉| 69人人操人人爽| 久操婷婷| 五月色丁香婷婷综合| 欧美中文五月天| 这里只有精品热| 大香蕉Av在线| 天天综合精品| 日日干天天| 五月丁香六月婷婷亚洲激情综合| 日韩综合久| 不卡在线视频| 婷婷久久综合| 婷婷社区五月天| 色婷婷成人在线| 九九99九九99偷拍视频免费看| 久久精品国产AV一区二区三区 | AV在线大香蕉| 怡红院一二三| 我要色综合五月婷婷| 五月丁香久久网| 久久九九99.www| WWW.桔色成人.COM| 99日本黄站| 色九月国产| 开心久久五月天| 婷婷的99视频网站| 99在线观看精品| 色宗合久久五月婷婷| 婷婷性爱网| 99热在线播放精品| 熟女激情网| 91人操人人人操人| 亚洲狠狠终合停停终合| 色五月天影视| 影音先锋91| 五月天婷婷伊人| 99操无码视频观看| 67194成I人在线观看线路1| 五月色丁香| 99热在线观看精品| 另类视频在线| 亚洲激情综合色站| 五月激情天| 九日日夜夜69| 国内婷婷丁香社区在线播放| 丁香五月婷婷色播艳门照| 五月丁香六月激情综合| 婷婷五月色色| 五月丁香婷婷激情澎湃四射| 五月开心网| 91色九| 丁香五月综合AV在线| 高潮毛片又色又爽免费| 五月天色婷伊人| 99在线视频播放| 操逼五月天| www.综合久久.com| 亚洲正能量欧美| 欧美午夜乱妇午夜福利| 99热在线观看| 成人丁香五月| 日韩成人中文字幕| 丁香五月最新地址| 97超碰在线免费观看| 久久色五月| 亚洲国产成人裸舞| 思思99re这里只有| 97色婷婷成人综合在线观看| 色丁香久久| 激情五月婷婷综合网| 91av传媒高清在线视频网| 五月婷婷久久大香蕉| 激情五月丁香五月| 成人AV片播放| 97干婷婷| 99ER热精品视频| 性色九九| 人人操Av| 五月天综合视频| 色五月婷婷丁香五月| 婷婷五月丁香青青草在线| 久热这里精品免费| 少妇性BBB搡BBB爽爽爽视頻| 五月综合777| 97碰在线视频| 91超级碰碰碰| 丁香婷婷基地| 欧美五月丁香啪啪响视频| 另类小说五月天| 综合五月天亚洲婷婷| 91丨人妻丨国产丨丝袜| WWW.久久久久久久| 新久久五月天激情| 五月噜噜| 五月丁香六月天| 色色射| 思思久久99热只有频精品66| 五月丁香 狠狠爱| 婷婷激情六月综合| 99热精品网| 天天天天天天噜| 97碰久久| 青青草五月天| 99这里只有精品| 成人片在线播放| 亚洲欧洲另类| 久久久宗合视频88| 欧美久久网| www.婷婷网| 丁香色综合| 人人操日| 久9热视频在线| 超碰二区| 婷婷丁香视频在线观看免费| 99热精品6| 色一情一乱一乱一区91| 亚洲情综合五月天| 五月久久网| 深爱激情小说五月婷婷| 婷婷五月色激情欧美激情| 五月婷婷丁香| 欧美色色日韩| 一操久久| 97婷婷狠狠| 五月丁香婷草| 涩综合网| 五月婷婷婷婷婷| 人人摸人人澡人人| 日产精品一线二线三线芒果| 99久超碰| 秋霞三及片| 九九久久精品| 丁香五月婷婷亚洲色图| 深爱激情网噜噜色| 五月激情婷婷丁香天堂| 亚洲AV免费国产电影| 午夜激情婷婷| 婷婷色色播五月天| 色色九九五月天| 久久丁香| 久久久免费精彩视频| 亚洲综合字幕色色| 国模狼狼| 婷婷五月丁香五月| tingting五月天亚洲| 久久五月情| 天天做天天爱天天高潮| 草AV9999| se99热久久一本| 狠狠操狠狠插| 播五月,色五月,开心五月播放器| 99热乎| 九九色情网五月天| h在线看免费版在线看| www99热| 色波激情五月天| 激情AV中文| 最近中文字幕大全免费版在线 | 殴美综合激情五月天免费视频| 久er7久热| 丁香六月狠狠干| 婷婷六月丁香五月图区| 久久婷婷六月综合| www激情五月天| 丁香五月综合激情久久潮喷| 在线观看亚洲AV| 国内一级片| 国产99久久久| 99热99色| 这里只有在线精品| 97干视频| 99色色网| 五月丁香另类图片| 亚洲视99| 中文字幕在线不卡视频| 丁香五月天网友自拍啪啪啪视频| 青青草原中文字幕| 久久在线92| 91狠狠综合久久久久久| 91色噜噜狠狠狠狠色综合| 丁香五月在线观看完整版| 天天综合久久| AV五月丁香| 色综合久久8| 国产美女无遮挡裸体毛片A片| 激情性爱五月天| 超碰1999| 亚洲人人操BD| 色综合色综合色综合高潮| 激情婷婷色色| 中文字幕人妻一区二区| 婷婷五月天电影网| 日本熟妇精品99| 婷婷亚洲五月| VfJxEwPH| 男女久久婷婷五月天| 激情婷婷五月天伊人在线观看| 亚洲AV免费国产电影| 天天色凹凸| 日本无码专区| 成人午夜天| 丁香五月性| 五月婷综合| 99热99在线| 色五月超碰| 久久最新色| 五月丁香婷婷爱| 99这里只有| 五月婷婷丁香网| 久久在线人妻| 操啊操av| 色五月视频,小说| 五月丁香六月合| 九九久久99| 春色激情第四色| 99热久久这里只有精品| 婷婷久久婷婷色五月| 激情五月开心五月在线视频| 丁香五月天AV在线| 久久婷婷五月综合成人d啪| 97操资源婷婷| 九热av| 久久性爱激情| 五月天伊人久久| 99热久久日本| 五月天婷婷久草丁香| 三级99热| 九色 在线| 99热免费精品| 97人人操人人爽| 色五月婷婷91| 亚洲免费99| 九九黄色网| 综合五月天亚洲婷婷| 视频免费精品免费精品免费精品免费精品免费精品免费精品免费99 | 一区二区免费看| 久9热视频在线观看| 日本三级中国三级99| 欧美色图天堂网| 婷婷丁香六月五月天| 美女婷婷六月色| 日韩久久这里只有精品| 五月婷婷自拍| 五月丁香婷婷激情| 伊人天天色| 九九色视频| 天天干天天干天天干天天干天天干| 天天操夜夜操| 丰满人妻一区二区三区| 亚洲不卡| 99色色网| 99久久婷婷国产综合精品| 久久久噜噜噜www成人| 91人人超碰在线| 久久99热这里只有精品首| 桃色激情婷婷伊人网| 噜噜噜噜婷婷五月天| 五月婷成人网| 五月婷婷啪啪啪啪| 中文字幕AV网址| 色婷婷香蕉| 色婷婷成人色网| 欧美性爱中文字幕| 色播五月丁香| 操逼在线视频| 激情五月婷婷五月| 26uuu精品国产| 久久人妻伊人| 激情五月天激情五月天| 久久美女五月天| 中文字幕在线播放视频| 精品无码久久久久久久久| 九热av| 99ri在线播放| 99无码免费视频| 99精品福利视频| 久久伊人大香蕉| 麻豆观看夏晴子| 九九99热| 丁香五月激情五月| 色色色色色色网站| 性生活视频98791| 九九热在线视频观看| 五月情涩综合婷婷| 天天艹天天色| 亚洲色婷婷婷婷人人爽| 激情五月婷婷| 狠狠色成人影片| 天天噜| 五月婷婷性爱网| 婷五月丁香俺| 五月丁香亚洲综合| 26uuu欧美| 综合激情在线视频| 欧美噜一噜| 色色五月婷| 操婷婷基地| 99视频精品视频| 99精品一二三四视频| 99丁香五月| 五月婷婷丁香| 五月丁香婷婷免费视频| 五月婷婷爽爽爽| 精品婷婷| 成人在线99| 日本综合色图| 色婷婷激情| www.激情五月天| 精品色色| 久99久视频免费观看| 婷婷色色网| 九九视频在线观看| 中文字幕黄色电影网址| 婷婷激情蜜桃玖玖丁香| 91九色国产| 亚洲精品444久久久久久| 99 频99热国里只有精品| 丁香五月人妻| 91综合网| 激情五月丁香在线观看直播| 久久一热| 人妻aV在线| 婷婷综合色五月天| 婷婷色影院| 51XX嘿嘿午夜无码| 婷婷丁香五月天亚洲| 99九九精品| 99精品自拍视频| 婷婷色Av| 五月天伊人| 九艹在线| 色色亚洲五月天| 丁香五月天堂婷婷| 狠狠搞亚洲| 又大又粗九一在线| 大香蕉av在线| 天天干天天干天天干天天干天天干| 亚洲激情视频网| 亚洲午夜Av| 婷婷五月激情基地| 四川操逼站| Caoporn公开| 亚洲成人在线播放| 噜综合| 激情AV在线| 亚洲欧洲另类| 伊人综合网站| 免看黄大片AA | 亚洲精品亚洲人成人网| 热99只有里视频| 男人的天堂五月丁香| se99高清无码| 五月婷婷片| 99热欲| 99性视频| 99热99思午夜精品| 色深爱五月| 中文字幕乱码亚洲精品一区| 国产精品色婷婷久久久精品| 国内9l视频自拍老熟女九色| 久久影视婷婷五月| 26uuu四色| 五月天最新网| 亚洲AV无码成人电影| 欧美激情-区二区三区| 五月丁香色| 六月婷婷无码| 九九色色| 成年AAAA色情| 五月天社区| 婷婷成人小说综合| 99∨VTV| 五月在线婷色| 国产无遮挡又黄又爽免费网站| 五月婷婷香蕉| www.色五月| 五月丁香在线综合| h亚洲| 色五月色五天色情网| 99婷婷五月天| 国产成人精品一区二三区熟女在线 | 日本九九九九| 婷婷亚洲色| 成人做爰A片免费看视频 | 丁香密臀AV激情网| 日韩十国产极品久久| 开心激情五月天网| 欧美色色干| 五月花激情| 777精品成人a v久久| 97ai婷婷| 99碰碰视频| 五月天婷婷黄色视频| 九九婷婷激情综合网| 五月婷婷激情久久| 综合另类视频| 日本欧美成人片AAAA| 日本熟女一区二区| 国产亚洲网站在线| 久久婷婷亚洲| 婷婷五月天日日日干干干| 男人天堂AV在线一区二区| 大香蕉久操| 五月婷婷中文网| 91九色成人原创视频| 欧美日韩99| www.minyis.com【JT】国内CDN落地页保证转化QQ2101460746 | 操一操插一插| 超碰在线观看9| 丁香五月成人| 亚洲综合色丁香婷婷六月| www一起操在线观看| 日本三级韩三级99久久| 亚洲 五月 婷婷 成人| www.com亚洲网站在线免费| www.99在线| 婷婷开心激情| 99色综合| 色婷婷AV在线观看| 激情五月天电影| A久网| 欧美精品99久久久| 91制片厂久久久国产电影| 在线不卡视频|