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

ARTICLE DETAIL

資訊詳情

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

考勤管理系統(tǒng)源碼:JSP+Servlet+MySQL實戰(zhàn)解析

考勤管理系統(tǒng)源碼:JSP+Servlet+MySQL實戰(zhàn)解析 簡介面向中小型團隊與高校實訓(xùn)場景的 Java 考勤管理系統(tǒng)完整源碼包適合具備 Java Web 基礎(chǔ)、希望掌握 Spring 風(fēng)格業(yè)務(wù)開發(fā)或畢業(yè)設(shè)計復(fù)用的學(xué)習(xí)者。包內(nèi)按業(yè)務(wù)模塊劃分覆蓋員工管理、考勤打卡、請假/會議申請、固定資產(chǎn)與任務(wù)調(diào)度等常見功能壓縮包共 2000 個文件約 55MB以 1336 個 Markdown 文檔、500 個 JavaScript 文件、67 個 Java 文件及 JSON/XML 配置為主文檔與配置占比高便于對照閱讀、按需檢索和二次開發(fā)。已有 170 人學(xué)習(xí)下載。其中包含控制器、服務(wù)、實體與工具類等完整分層主線功能覆蓋考勤申請、會議與員工管理。借助該源碼可快速理解考勤業(yè)務(wù)表設(shè)計、接口分層、審批流轉(zhuǎn)與前后端交互方式尤其適合課程設(shè)計、項目實訓(xùn)或企業(yè)內(nèi)部門禁考勤需求的原型搭建Java、XML、SQL 等關(guān)鍵文件可直接導(dǎo)入 IDE 運行調(diào)試Markdown 文檔輔助梳理實現(xiàn)思路。1. 考勤管理系統(tǒng)源碼學(xué)生項目里最容易被低估的 Java 練手資源做 Java 課程設(shè)計或者畢業(yè)設(shè)計的人十有八九會撞上考勤系統(tǒng)這個題目。這份源碼就是一個典型的 Java Web 考勤管理系統(tǒng)基于 JSP Servlet MySQL 實現(xiàn)包含員工管理、部門管理、上下班打卡、考勤統(tǒng)計和月度報表導(dǎo)出幾個模塊。它不像商城項目那么繞但足夠把 Java Web 開發(fā)里最核心的東西串一遍數(shù)據(jù)庫設(shè)計、會話管理、請求轉(zhuǎn)發(fā)、SQL 聚合統(tǒng)計。適合兩類人一類是急著交課程設(shè)計的學(xué)生拿回去改改就能跑另一類是剛學(xué)完 Java 基礎(chǔ)、想找一個完整項目練手的人拆開源碼看一遍比看十篇教程都管用。2. 技術(shù)棧與模塊拆解JSP Servlet MySQL 這條老鏈路為什么還在用2.1 項目形態(tài)與選型理由先說項目形態(tài)。這份源碼是典型的 Java Web 三層結(jié)構(gòu)JSP 負責(zé)頁面展示Servlet 處理請求轉(zhuǎn)發(fā)JDBC 訪問 MySQL 數(shù)據(jù)庫。沒有引入 Spring Boot也沒有用 MyBatis整條鏈路全是原生 API依賴只有 Tomcat 和 MySQL 驅(qū)動兩個 jar 包。很多讀者拿到手第一反應(yīng)是這太老了。我一般會勸一句老鏈路恰恰是學(xué)習(xí)成本最低的鏈路。Spring Boot 幫你自動配置了太多東西出了問題反而不容易定位而 JSP Servlet 的每一行代碼都是顯式的請求怎么進來、怎么查庫、怎么把結(jié)果塞進 request 再轉(zhuǎn)發(fā)到頁面全程沒有黑匣子。選型理由就一條這份資源的定位是能跑、能改、能看懂不是生產(chǎn)級高并發(fā)。用原生 Servlet 的好處是依賴少只要 Tomcat 起來了就能跑不用跟 Maven 倉庫里的版本沖突較勁。常見做法是登錄校驗寫在 Filter 里業(yè)務(wù)邏輯寫在 Servlet 的 doGet/doPost 里數(shù)據(jù)庫訪問單獨抽出 DBUtil 工具類。后面章節(jié)的代碼走讀會按這個結(jié)構(gòu)展開。2.2 數(shù)據(jù)庫設(shè)計三張核心表的字段與關(guān)聯(lián)考勤系統(tǒng)的數(shù)據(jù)庫設(shè)計一般圍繞三張表展開員工表、部門表、考勤記錄表。員工表掛在部門表下面考勤記錄表引用員工表的主鍵。這個資源里常見的建表 SQL 大概是這樣的CREATE DATABASE attendance DEFAULT CHARACTER SET utf8mb4; USE attendance; CREATE TABLE dept ( id INT PRIMARY KEY AUTO_INCREMENT, dept_name VARCHAR(50) NOT NULL ); CREATE TABLE employee ( id INT PRIMARY KEY AUTO_INCREMENT, dept_id INT NOT NULL, emp_no VARCHAR(20) NOT NULL UNIQUE, emp_name VARCHAR(30) NOT NULL, password VARCHAR(32) NOT NULL, role TINYINT DEFAULT 1 COMMENT 1-普通員工 0-管理員, FOREIGN KEY (dept_id) REFERENCES dept(id) ); CREATE TABLE attendance_record ( id INT PRIMARY KEY AUTO_INCREMENT, emp_id INT NOT NULL, work_date DATE NOT NULL, check_in TIME, check_out TIME, status VARCHAR(10) DEFAULT 正常, UNIQUE KEY uk_emp_date (emp_id, work_date), FOREIGN KEY (emp_id) REFERENCES employee(id) );這三張表就是整個系統(tǒng)的地基。注意兩個設(shè)計細節(jié)一是 attendance_record 里加了唯一索引 (emp_id, work_date)目的是防止同一個人同一天插入兩條打卡記錄二是 status 字段做了冗余存儲后續(xù)統(tǒng)計直接按狀態(tài)分組不用每次用上班和下班時間現(xiàn)算。如果把這三張表畫成關(guān)系圖就是典型的部門 1 對多 員工、員工 1 對多 考勤記錄。部門表是獨立的員工表通過 dept_id 關(guān)聯(lián)部門考勤記錄表通過 emp_id 關(guān)聯(lián)員工。查詢員工考勤的時候只需要一次 JOIN 就能把員工姓名和部門名稱帶上這也是后面統(tǒng)計 SQL 能寫短的前提。初始化數(shù)據(jù)也是常見的一個坑。很多版本自帶的初始化腳本只建表不插數(shù)據(jù)登錄頁沒有默認賬號。建議手動插入一條管理員數(shù)據(jù)工號 admin、密碼 admin、role 設(shè)為 0否則第一次登錄會卡在賬號不存在。2.3 角色權(quán)限管理員與普通員工的兩套菜單邏輯權(quán)限這塊原項目沒有引入權(quán)限框架就是用最簡單的方式employee 表里 role 字段區(qū)分管理員和普通員工登錄成功之后把角色值存進 Session。管理員能訪問員工管理、部門管理、考勤統(tǒng)計這些路徑普通員工只能看到自己的打卡入口和個人考勤記錄。實現(xiàn)上常見做法是寫一個權(quán)限攔截的 Filter在請求到達 Servlet 之前先檢查 Session 里的角色// AuthFilter.java 權(quán)限攔截核心邏輯 public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws IOException, ServletException { HttpServletRequest request (HttpServletRequest) req; HttpSession session request.getSession(false); // 未登錄一律踢回登錄頁 if (session null || session.getAttribute(user) null) { resp.sendRedirect(request.getContextPath() /login.jsp); return; } // 已登錄但角色不匹配提示無權(quán)訪問 String role (String) session.getAttribute(role); String uri request.getRequestURI(); if (uri.contains(/admin/) !0.equals(role)) { request.setAttribute(msg, 沒有管理員權(quán)限); request.getRequestDispatcher(/error.jsp).forward(req, resp); return; } chain.doFilter(req, resp); }這段 Filter 的邏輯說明第一層判斷只解決有沒有登錄第二層判斷解決登錄了但能不能進管理頁面。如果把這兩層合并成一個 if就會出現(xiàn)普通員工直接輸入管理頁面地址也能進去的漏洞。參數(shù)說明Session 里存的是 user 對象和 role 字符串role 用 String 而不是 int是為了和頁面 JSTL 標(biāo)簽里的比較寫法對齊。改成 int 也行但所有比較的地方都要同步改很容易漏。另一個容易踩的點是 request.getSession(false) 里面的 false它表示拿不到 Session 時返回 null 而不是新建一個配合后面的 null 判斷正好覆蓋未登錄場景如果誤寫成 getSession(true)匿名用戶也會被強制創(chuàng)建 Session攔截邏輯就廢了。3. 本地跑起來JDK、MySQL、Tomcat 三件套的配置順序3.1 環(huán)境版本怎么選先把環(huán)境定下來再談導(dǎo)入。這類老項目對版本敏感版本不匹配的翻車現(xiàn)場我見過太多給你一個不會踩雷的組合JDK 8不要拿 JDK 11 或更高跑老項目JSP 編譯和某些 JDBC 驅(qū)動在 JDK 9 之后行為有變化MySQL 5.7 或 8.08.0 需要改驅(qū)動類名和時區(qū)參數(shù)細節(jié)見 3.3Tomcat 8.5兼容性最好Tomcat 9 對 JSP 的 EL 表達式支持有輕微差異IDE 用 Eclipse 或 IntelliJ IDEA 都行關(guān)鍵是確認項目是什么工程結(jié)構(gòu)順序上先裝 JDK再裝 MySQL最后解壓 Tomcat。裝完 Tomcat 先別急著往里面塞項目先啟動一次確認 8080 端口能正常訪問。這里有一個新手常犯的錯誤以為 Tomcat 一定要單獨裝。其實用 IDE 內(nèi)置的 Tomcat 插件跑更方便控制臺日志和斷點調(diào)試都更順手。版本選型的原則就一句話和項目里 lib 目錄下 jar 包的編譯版本對齊。你可以在項目里找到 mysql-connector-java 的 jar看它支持的最低 JDK 版本再決定裝哪個 JDK。JDK 和 Tomcat 都是用前先查版本很多詭異報錯都是版本不匹配引發(fā)。3.2 導(dǎo)入工程與初始化數(shù)據(jù)庫拿到 zip 解壓之后常見做法是把整個文件夾拷到 Tomcat 的 webapps 目錄下直接運行但我不推薦這么干。更好的方式是導(dǎo)入 IDE用 IDE 內(nèi)置的 Tomcat 插件跑能看到控制臺日志和斷點。初始化數(shù)據(jù)庫的步驟固定三步# 第一步登錄 MySQL mysql -uroot -p # 第二步執(zhí)行建庫建表腳本腳本文件一般在 db 或 sql 目錄下 source /your/path/attendance.sql; # 第三步驗證表是否創(chuàng)建成功 USE attendance; SHOW TABLES;執(zhí)行完這三步數(shù)據(jù)庫側(cè)就緒。注意 source 命令后面要寫文件的絕對路徑別用相對路徑否則會報 file not found。導(dǎo)入 IDE 的時候有一個常見的坑項目如果是 Eclipse 的 Dynamic Web Project 結(jié)構(gòu)直接 File - Open 打開目錄即可如果拿到手是一個普通文件夾沒有 .project 文件要先轉(zhuǎn)成 Maven 工程或者手動勾選 Web Facet否則 IDE 不認它是 Web 項目運行按鈕是灰的。我一般會先看一眼工程根目錄下有沒有 pom.xml。有 pom.xml 就用 Maven 方式導(dǎo)入沒有就用純 Web 工程方式導(dǎo)入。兩種方式對應(yīng)的啟動按鈕不一樣混淆了會在后面部署階段報各種奇怪錯誤。3.3 數(shù)據(jù)源配置jdbc.properties 逐項說明老項目的數(shù)據(jù)源配置通常寫在 src 目錄下的 jdbc.properties 或 db.properties 里。打開之后你會看到四五行配置每一行都別亂改jdbc.drivercom.mysql.jdbc.Driver jdbc.urljdbc:mysql://localhost:3306/attendance?useUnicodetruecharacterEncodingutf8 jdbc.usernameroot jdbc.password123456逐項說明jdbc.driverMySQL 5.7 用 com.mysql.jdbc.DriverMySQL 8.0 必須改成 com.mysql.cj.jdbc.Driverjdbc.urllocalhost 換成遠程數(shù)據(jù)庫 IP 就是連遠程庫characterEncodingutf8 是保中文不亂碼的關(guān)鍵參數(shù)jdbc.username / jdbc.password按本地 MySQL 的實際賬號改8.0 如果因為密碼加密方式導(dǎo)致連接失敗要在 url 后面追加 serverTimezoneAsia/Shanghai改完配置之后重啟 Tomcat 讓配置重新加載。驗證配置是否生效的方式很簡單隨便打開一個需要查庫的頁面如果頁面能正常顯示數(shù)據(jù)列表說明數(shù)據(jù)源通了如果報 SQLException 或 Connection refused看 5.1 的排查思路。還有一個細節(jié)jdbc.password 明文寫在 properties 文件里是課程設(shè)計項目的常態(tài)別因為這個覺得項目有問題。生產(chǎn)環(huán)境用加密或環(huán)境變量那是另一個話題。但要注意 properties 文件保存時編碼必須是 ASCII 或 UTF-8 without BOM否則中文注釋會變成亂碼甚至導(dǎo)致解析失敗。3.4 第一個冒煙測試從登錄頁到主界面數(shù)據(jù)庫初始化完、Tomcat 啟動成功之后先做一個冒煙測試打開瀏覽器訪問 http://localhost:8080/項目名/login.jsp用默認賬號登錄看能不能正常跳轉(zhuǎn)到主界面。如果項目名帶了中文或者空格URL 里的路徑會出問題建議把 webapps 下的項目文件夾重命名成純英文比如 attendance。冒煙測試通過之后再逐個點一遍菜單員工管理、部門管理、打卡、統(tǒng)計。這一步主要是確認每個 Servlet 的路由映射有沒有配全。很多老項目的 web.xml 里配置了一堆 servlet-mapping少配一條就會在點某個菜單時 404。我用一個笨辦法快速確認路由把 web.xml 打開把每個 url-pattern 和對應(yīng) Servlet 類名抄在一張紙上然后逐個訪問。抄一遍下來整個項目的請求流轉(zhuǎn)關(guān)系就清楚了比反復(fù)點頁面快得多。提示如果冒煙測試階段就報 404先別懷疑代碼優(yōu)先檢查訪問路徑的大小寫。JSP 文件名和 Servlet 映射都是區(qū)分大小寫的login.jsp 寫成 Login.jsp 直接 404。4. 核心代碼走讀登錄、打卡與統(tǒng)計 SQL 的三個落點4.1 登錄邏輯Session 與密碼校驗登錄是第一個值得逐行看的模塊。常見寫法是 LoginServlet 接收頁面提交的 emp_no 和 password拿著這兩個參數(shù)去查 employee 表查到就把用戶對象放進 Session。// LoginServlet.java 核心校驗邏輯 String empNo request.getParameter(empNo); String pwd request.getParameter(password); // 查詢用戶注意這里要用 PreparedStatement 而不是拼接 SQL String sql SELECT * FROM employee WHERE emp_no? AND password?; PreparedStatement ps conn.prepareStatement(sql); ps.setString(1, empNo); ps.setString(2, pwd); ResultSet rs ps.executeQuery(); if (rs.next()) { // 登錄成功user 對象和 role 同時入 Session request.getSession().setAttribute(user, empNo); request.getSession().setAttribute(role, rs.getString(role)); resp.sendRedirect(request.getContextPath() /index.jsp); } else { // 登錄失敗回到登錄頁并攜帶錯誤提示 request.setAttribute(msg, 工號或密碼錯誤); request.getRequestDispatcher(/login.jsp).forward(req, resp); }邏輯說明整個登錄成敗就取決于 rs.next() 是否為 true。這里有兩個容易忽略的細節(jié)。第一個細節(jié)是請求轉(zhuǎn)發(fā)和重定向的區(qū)別。登錄失敗用 forward 回到 login.jsprequest 里的 msg 屬性還能帶上登錄頁可以顯示工號或密碼錯誤登錄成功用 sendRedirect 跳到 index.jsp讓瀏覽器地址欄變成 index.jsp這樣刷新頁面不會重復(fù)提交表單。如果把兩者搞反會出現(xiàn)刷新一次就重復(fù)登錄一次的怪現(xiàn)象。第二個細節(jié)是密碼校驗。PreparedStatement 的 ? 占位符天然防 SQL 注入老項目里如果看到字符串拼接的查詢語句建議順手改掉。employee 表里 password 字段存的是明文課程設(shè)計階段不用糾結(jié)生產(chǎn)環(huán)境必須做加鹽哈希處理。參數(shù)說明empNo 和 password 的取值來自 request.getParameter這兩個參數(shù)名要和 login.jsp 表單里的 name 屬性完全一致差一個字母就取到 null。老項目里最常見的登錄失敗原因不是密碼錯而是參數(shù)名拼寫不一致。4.2 上下班打卡時間判定與去重打卡模塊是考勤系統(tǒng)的靈魂。常見做法是同一個 PunchServlet 處理上班和下班兩個動作通過頁面按鈕區(qū)分。時間判定邏輯是這樣的// PunchServlet.java 打卡時間判定 Timestamp now new Timestamp(System.currentTimeMillis()); java.sql.Date today new java.sql.Date(now.getTime()); // 先查今天有沒有打卡記錄 String querySql SELECT check_in, check_out FROM attendance_record WHERE emp_id? AND work_date?; PreparedStatement ps conn.prepareStatement(querySql); ps.setInt(1, empId); ps.setDate(2, today); ResultSet rs ps.executeQuery(); if (!rs.next()) { // 今天第一次打卡記為上班時間 insertSql INSERT INTO attendance_record(emp_id, work_date, check_in) VALUES(?,?,?); } else if (rs.getTime(check_in) ! null rs.getTime(check_out) null) { // 已有上班時間但沒有下班時間補下班時間 updateSql UPDATE attendance_record SET check_out? WHERE emp_id? AND work_date?; } else { // 上下班都打過了提示重復(fù)打卡 }邏輯說明這個分支結(jié)構(gòu)把一天內(nèi)的打卡行為拆成三種狀態(tài)——沒打過、打了上班沒打下班、都打過了。注意 check_out 為 NULL 的判斷用 rs.getTime(check_out) null而不是 rs.getString(...).equals()因為數(shù)據(jù)庫 TIME 字段為空時是 NULL 而不是空字符串。這是新人最容易寫錯的地方寫錯了會導(dǎo)致已打過的下班卡被重復(fù)覆蓋。打卡去重靠的是 2.2 里那張表的唯一索引 uk_emp_date。即使代碼邏輯漏了判斷數(shù)據(jù)庫層也會攔住重復(fù)插入并拋 DuplicateKeyException。這個設(shè)計就是典型的前后端雙保險代碼判斷先攔一次數(shù)據(jù)庫唯一索引兜底。如果資源里的代碼沒有這個唯一索引建議自己加上。參數(shù)說明System.currentTimeMillis() 取的是服務(wù)器時間。如果你的應(yīng)用部署在云服務(wù)器上而用戶在北京時區(qū)不一致會導(dǎo)致打卡時間差 8 小時解決辦法見 5.3。另外 empId 這個變量來自登錄 Session 里的用戶信息不要從前端傳過來否則任何用戶都能偽造別人的打卡記錄。4.3 月度統(tǒng)計一條 SQL 出報表考勤統(tǒng)計頁面是管理員最常用的模塊。常見做法是選一個月度然后按員工分組統(tǒng)計遲到、早退、正常天數(shù)SELECT e.emp_no AS 工號, e.emp_name AS 姓名, COUNT(*) AS 出勤天數(shù), SUM(CASE WHEN r.check_in 09:00:00 THEN 1 ELSE 0 END) AS 遲到天數(shù), SUM(CASE WHEN r.check_out 18:00:00 THEN 1 ELSE 0 END) AS 早退天數(shù) FROM attendance_record r JOIN employee e ON r.emp_id e.id WHERE DATE_FORMAT(r.work_date, %Y-%m) ? GROUP BY e.id, e.emp_no, e.emp_name;這個 SQL 的兩個要點一是 DATE_FORMAT 把日期字段格式化成 YYYY-MM 和傳入?yún)?shù)做匹配注意如果 work_date 列有索引DATE_FORMAT 會導(dǎo)致索引失效數(shù)據(jù)量大了之后建議改成范圍查詢 BETWEEN 2024-01-01 AND 2024-01-31二是 SUM(CASE WHEN ...) 這種寫法把遲到和早退天數(shù)一次算完避免多次掃表。參數(shù)說明遲到閾值 09:00:00 和早退閾值 18:00:00 是寫死的不同公司上下班時間不同改這兩個字符串即可但格式必須是 HH:mm:ss少一位冒號都會導(dǎo)致比較失效。分組這里有個細節(jié)GROUP BY 后面寫的是 e.id, e.emp_no, e.emp_name 三個字段。理論上按 e.id 分組就夠了但因為 SELECT 里查了 emp_no 和 emp_nameMySQL 在 ONLY_FULL_GROUP_BY 模式下要求這些字段都出現(xiàn)在 GROUP BY 里否則直接報錯。很多新手把 GROUP BY 縮寫成只按 e.id 分組然后在別人的機器上能跑、自己機器上報錯就是 MySQL 的 sql_mode 配置不同導(dǎo)致的。統(tǒng)計結(jié)果在頁面上的展示常見做法是循環(huán) ResultSet 拼 HTML 表格或者用 JSTL 標(biāo)簽遍歷 List。如果資源里用的是后者你會發(fā)現(xiàn)代碼量明顯更少這也是 JSP 頁面里比 scriptlet 更推薦的寫法。5. 避坑排查數(shù)據(jù)庫連不上、亂碼、時間錯位的五個現(xiàn)場老項目跑不起來九成問題出在環(huán)境配置而不是代碼本身。我把這類考勤系統(tǒng)最常見的五個報錯現(xiàn)場整理出來每個都按現(xiàn)象、原因、解決給出處理步驟照著排查比瞎試快得多。5.1 現(xiàn)象一啟動 Tomcat 報 ClassNotFoundException現(xiàn)象第一次啟動 Tomcat 或訪問任意頁面時控制臺報 java.lang.ClassNotFoundException: com.mysql.jdbc.Driver緊接著是一大串 Caused by最后頁面顯示 500。報錯位置通常定位在 DBUtil 工具類的靜態(tài)代碼塊里 Class.forName(driver) 那一行。原因MySQL 驅(qū)動 jar 沒有放進 WebContent/WEB-INF/lib 目錄。IDE 的 build path 里加了 jar編譯能通過但 Tomcat 運行時加載的是 WEB-INF/lib 下的 jar兩邊不一致就會出現(xiàn)編譯過、運行炸的迷惑現(xiàn)象。解決分三步走。第一步確認 lib 目錄下有沒有 mysql-connector-java 的 jar沒有就下載對應(yīng)版本放進去第二步右鍵項目 Clean讓 IDE 重新打包部署第三步檢查 Project Structure 里的 Artifacts 配置確認 lib 目錄被標(biāo)記為 jar 目錄。多數(shù)情況做完第一步就好后兩步是防止 IDE 緩存搗亂。5.2 現(xiàn)象二頁面中文全部變成問號現(xiàn)象登錄頁面正常但員工姓名、部門名稱等中文數(shù)據(jù)顯示成 ????或者向數(shù)據(jù)庫插入中文后查出來是亂碼。有些是頁面顯示亂碼但庫里正常有些是頁面正常但庫里是亂碼兩種情況原因不同。原因三個環(huán)節(jié)至少有一個字符集沒對齊——數(shù)據(jù)庫表字符集、JDBC 連接串、JSP 頁面編碼。頁面亂碼而庫正常問題出在 JSP 編碼或 response 編碼庫亂碼則基本是 JDBC 連接串缺了 characterEncoding。解決按順序檢查先把 jdbc.url 加上 characterEncodingutf8再確認建表時用了 utf8mb4最后在 JSP 頁面頂部寫 % page contentTypetext/html; charsetUTF-8 %。三個地方統(tǒng)一成 UTF-8 之后重啟亂碼問題基本消失。還有一個冷門原因properties 文件保存時被 IDE 轉(zhuǎn)成了 GBK 編碼讀出來的連接串本身就帶亂碼這種情況把文件重新保存為 UTF-8 即可。5.3 現(xiàn)象三打卡時間比本地時間慢 8 小時現(xiàn)象用戶上午 9 點打卡數(shù)據(jù)庫里 check_in 顯示 01:00:00整個系統(tǒng)的打卡時間全部偏移 8 小時。原因服務(wù)器或 MySQL 的時區(qū)設(shè)置是 UTC而用戶在東八區(qū)。MySQL 8.0 的驅(qū)動默認讀取 serverTimezone 參數(shù)不指定就按 JVM 默認時區(qū)算兩邊不一致就出現(xiàn) 8 小時偏移。解決在 jdbc.url 后面追加 serverTimezoneAsia/Shanghai同時檢查操作系統(tǒng)時區(qū)。如果項目里取時間用的是 new Date()取到的是 JVM 時區(qū)的時間還要看 Tomcat 啟動的 JVM 參數(shù)有沒有 -Duser.timezoneAsia/Shanghai。改完配置必須重啟 Tomcat光改配置文件不重啟等于白改。5.4 現(xiàn)象四導(dǎo)出報表 Excel 打開是亂碼現(xiàn)象管理員導(dǎo)出月度考勤報表用 Excel 打開之后姓名列全是亂碼或者干脆打不開提示格式錯誤。原因很多老項目導(dǎo)出 Excel 用的是往 response 里直接寫 HTML 表格的偽 Excel 方案文件后綴是 .xls 但內(nèi)容其實是 HTML。如果 response 沒設(shè)置正確編碼瀏覽器按默認編碼解析中文就亂碼。解決在導(dǎo)出 Servlet 里顯式設(shè)置 response.setCharacterEncoding(UTF-8)并且給 Content-Type 加 charset。更穩(wěn)妥的方案是把偽 Excel 換成真正的 Excel 導(dǎo)出組件但課程設(shè)計階段先調(diào)編碼就夠了。注意導(dǎo)出的文件名如果是中文要對文件名做 URL 編碼處理否則瀏覽器端顯示文件名亂碼。5.5 現(xiàn)象五8080 端口被占用導(dǎo)致啟動失敗現(xiàn)象啟動 Tomcat 時控制臺報 Port 8080 required by Tomcat at localhost is already in useIDE 彈窗提示端口沖突項目根本起不來。原因要么之前啟動的 Tomcat 實例沒關(guān)閉干凈要么其他程序占用了 8080 端口。常見的是前一次異常退出IDE 里的 Tomcat 進程還掛在后臺。解決先關(guān)掉 IDE 里所有 Tomcat 實例再在命令行執(zhí)行 netstat -ano | findstr 8080 查占用進程的 PID然后 taskkill /PID 對應(yīng)PID /F。如果端口是被別的服務(wù)固定占用也可以直接改 Tomcat 的 server.xml 里的 Connector port把 8080 改成 8081但要記得訪問 URL 里的端口號同步改掉。提示排查順序建議固定為端口、驅(qū)動、字符集、時區(qū)。這個順序覆蓋了考勤系統(tǒng)九成以上的啟動和運行報錯每次照著走一遍比東查一下西查一下省時間。6. 二次開發(fā)方向把考勤系統(tǒng)改造成 Spring Boot 的遷移路線6.1 從 Servlet 到 Controller先跑通再改造如果你不想停留在能跑的階段最值得做的二次開發(fā)是把它遷移到 Spring Boot。遷移的思路不是重寫而是逐層替換。先建一個 Spring Boot 工程引入 web 和 mybatis 兩個 starter然后把 LoginServlet 里的邏輯原樣搬進 ControllerPostMapping(/login) public String login(String empNo, String password, HttpSession session) { Employee emp employeeMapper.findByEmpNoAndPassword(empNo, password); if (emp ! null) { session.setAttribute(user, emp.getEmpNo()); session.setAttribute(role, emp.getRole()); return redirect:/index; } return redirect:/login?msgerror; }這里的 employeeMapper 是 MyBatis 的 Mapper 接口SQL 用注解直接寫在方法上。遷移時注意兩點一是 HttpSession 的用法不變Spring MVC 可以直接注入 HttpSession二是原來 Filter 里的權(quán)限判斷改造成 Spring 的 HandlerInterceptor邏輯幾乎一模一樣。6.2 用接口清單驗證遷移結(jié)果遷移完別急著收工。我的習(xí)慣是列一份接口清單登錄、打卡、統(tǒng)計、導(dǎo)出逐個對比遷移前后的輸出。從那次以后我每次拿到這類老項目都先花十分鐘把數(shù)據(jù)庫腳本和配置參數(shù)過一遍再啟動項目。先跑通、再讀碼、后改造這個順序幫我省了大量查錯時間。希望幫到你。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
99九九视频| 99无码视频| 五月丁香婷婷啪啪| 玖色色综合| 中文字幕婷婷| 婷婷丁香五月婷婷| 99热99这里有免费的精品| 九九热99在线视频| 97高清国语自产拍| 深夜男女福利刺激影院一区| 亚洲热久久| 婷婷中文无码| 密视AV综合在线| 99啪啪| 六月婷婷色宗合| 99色日本| 久久99免费视屏| 激情五月丁香亭亭| 五月WWW| 日韩欧美颜射| 天天插天天射天天干| 激情内射人妻1区2区3区| 香蕉操亚洲| 激情五月天无码| 九九色院| 色婷婷色| www.婷婷.com| 26uuu精品一区二区| 99精品这里只有免费视频| 久久久jd| 亚洲成人九九九| 午夜丁香婷婷| 亚洲成人免费在线| 丁香婷婷六月天| 国产婷婷五月天| 丁香六月色香蕉视频| 久久九九经典| 美国不卡视频| 国产在线自| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 国产肥白大熟妇BBBB视频| 精品丁香五月天在线播放| 激情婷婷五月天。| 五月激情丁香五月| 99爱视频精品在线观看| 五月丁香久久网| 久久狼人天堂| 日韩成人网址| 人人玩人人橾| 美女丁香五月天| 日本啪啪网| 极品少妇婷婷五月| 日韩美一级毛卡片| 伊人9在线| 婷婷激情综合色五月久久91| 亚洲色婷婷久久99精品91| 五月丁香综合精品欧美| 色婷婷五月天av在线| 丁香激情五月| 99re欧美精品| 色婷婷女优有码五月亭| 丁香九月激情久久| 日本久热| 开心六月丁香五月婷婷| 小视频aaa久久久| 久久99这里只有精品| 黄色三级日本| 初夜av| 丁香五月视频在线观看| 色婷婷在线视频综合| 中文不卡一二三区| 五月天影院| 天天视频亚洲| 少妇人妻人伦A片| 久久一热| 五月丁香激情综合网| 97婷婷狠狠| 久久性刺激| 亚洲色色色| 天天噜| 五月天伊人综合| 激情av在线| 婷婷97碰碰| 亚洲成人免费电影| 免费视频WWW在线观看网站| 九九热在线视频| 99爱这里只有精品免费视频| 激情五月黄色| 人人九色| 五月婷婷和六月| 开心五月婷婷六月丁香| 婷婷五月情天| 日本三级中国三级99人妇网站| 国产欧洲欧洲精品久久| www.99操| 欧美日韩成人| 99热99热不卡| 国产欧洲欧洲精品久久| 丁香五月婷婷五月基地| 国产成人在线精品| 99国产性感视频| 五月天天视频| 五月丁香婷婷色| 成人αV视频免费观看| www.99色在线| 亚洲久热| 天天日综合| 91人人网| 激情综合九| 在线不卡中文字幕| 九九热这里都是精品6| 26UUU亚洲欧美| 亚洲va在线∨a天堂va欧美va| 婷婷大乡焦噜噜| 夜夜撸日日操| 人人干人人操外国| 亚洲五月丁| 中文字幕 久久9999| 六九色综合婷婷五月天| 五月综合色| 午夜AV网| 精品人妻伦| 精品成人a v无码内射| av在线激情| 在线观看免费人成视频无码| 中文字幕av在线| 五月天婷婷影院影院| 色五月五月婷婷| 狠狠色噜噜狠狠狠狠综合| 色婷婷成人色网| 伊人网大香| 五月天六月天| 色五月婷婷综合在线| 免费无码毛片一区二区A片| 婷婷综合在线视频| 黄页大全十八禁| 色欲五月婷婷| 欧美日韩日韩成人| 色综合综合网| 国产毛片精品一区二区色欲黄A片| 欧美日本97| 五月丁香六月婷婷综合免| 色婷婷电影网| 99精品手机在线视频| 超碰激情网| 99热99干| www久久久久久久久久久| 狠狠操狠狠爱| 五月天丁香网站| 涩五月丁香| 超碰在线人妻| A片一曲| 色五月综合激情| 五月天激情综合网| 99小视频| 99久久久久| 手机在线视频观看9| 国语对白性爱视频播放| 这里只有精品2| 99九九免费精品| 五月丁香综合伦理片| 九九热啪啪| 中文字幕人妻AV| 26UUU欧美激情一区二区| 久热一本| 国产操碰| 99re8在这里只有精品| 婷婷九月丁香天堂丁香天堂| 五月天婷婷影院影院观看| 少妇2做爰HD韩国电影| 四色永久成人网站| 日本一级一级一级一级| 1024日韩| 五月婷婷中文字幕| 色黑鬼导航| 久久婷婷热| www.97干视频| 亚洲中文字幕av| 97热九九| 97在线精品| 久久99久久99精品免观看粉嫩| 五月丁香六月情| 狠狠爱五月婷婷综合六月| 日韩欧美四五区| 婷婷综合在线| 色色色欧美色色| 国产毛片精品一区二区色欲黄A片 国产人妻777人伦精品HD | 五月天激情图片| 97久久五月丁香婷婷| 午夜激情五月天| 婷婷五月激情综合| 伊人超碰| 97超碰色| 久久免费操| 色婷婷777狠狠| 97操碰在线视频| 91婷婷在线观看| 色噜噜狠噜噜视频| 99热日韩| 九月婷婷久久| WWW.色婷婷.COM| www.91热久久| 亚洲婷婷基地| 婷婷激情丁香五月天综合| 五月天婷婷综合| 激情四射五月天偷偷看婷婷| av免费在线看不卡无毒| 久久婷婷综合五月天| 在线成人视频免费| 婷婷五月成人| 婷婷色五月综合| 91精品啪| 丁香六月啪| 开心久久xxx色| 丰满少妇乱A片无码| 丁香九月婷婷色| 国产三级在线播放| 久久久久婷 | 九九久久99| 超碰cap| 五月丁香六月玩女人| 亚洲婷婷久久综合| 99热精品在线| 无套内射极品大美女| www999日韩精品| 大香蕉综合在线| 天天爽天天透天天爱| 伊人影院久久网| 日韩久热| 99er视频在线| 99久视频| 色狠狠婷婷| 九九热在线观看视频| 综合啪啪| 久久九九囯产| 国色天香成人网| 久久五月综合| 日韩AV片| 九九色黄色| 亚洲AV人人操| 天天摸人人摸| 99久久a线观| 国产高清视频91九九九久久久| 日韩另类在线观看| 色播丁香婷婷五月激情| 99在线观看视频| caop视频| 婷婷操逼| 色停停香蕉视频| 国产淫熟妇| 丁香六月婷婷社区| 97色射| 91精品久久久久久久| 欧美性爱特黄一级aaaassss| 天天肏夜夜肏| 97色图片中文字幕视频在线观看| 天天色综网| 9有码中文| 26uuu91| 国产成人+综合亚洲+天堂| 亚洲一二三网| 色狠狠色噜噜AV天堂五区| 最新va在线播放| 亚洲激情高潮| 性色欲情 网站| 激情骚五月| 202丰满熟女妇大| 99在线资源| 少妇人妻凹凸视频| 天天日夜夜高潮| 九月综合| 99热第一页| 中文字幕丰满孑伦无码专区| 色婷视频| 亭亭五月丁香五月天激情| 九九干视频| 国产精品国产成人国产三级| 可以看的av| 丁香婷婷色情| 99精品色| 丁香五月婷婷日本| 丁香色五月婷婷| 五月天 综合 在线| www色婷婷久久综合久色 | 人妻人人操| 五月久视频| 九九热这里只有精品一| 99日热在线视频| 99热综合| www.狠狠操| 久热99| 激情网婷婷五月天| 成人va视频| 天天综合社区| 草综合14| 婷婷五月色综合| 婷婷五月另类网站| 成人va在线播放| 婷婷五月深爱五月| 99爱在线视频观看| 老司机日日夜夜青草| 丁香五月婷在线| 五月丁香狠狠地噜噜噜噜| 五月婷人妻| 天天狠天天狠| 99丁香五月婷| 五月丁香网站在线播放| 99色1| 99视频免费播放| BBWCUCKOLD精品熟妇| 婷婷在线视频| 综合AV网| 六月丁香开心婷婷欧美| 九热电影av| 人五月天婷婷喷水| 91色碰| 99热欧美精品| 97色婷婷成人综合在线观看| 久久五月天综合视频网站| 五月综合激情久久| 婷婷丁香基地在线| 五月婷婷激情综合网| 亚洲精品国产精品乱码视99| 亚洲综合1024| 99热这里只有精品8| 激情五月天网站| 亚洲精品V天堂中文字幕| 婷婷五月花| 国产精品天天狠天天看| 98永久精品| 亚洲婷婷视频| 婷婷激情5月| 色五月激情五月| 久草性爱| 91久久久久久| 熟女国产在线一区二区三区四区| 欧美精品啪啪| 人人干天天操五月丁香| 激情五月色播五月| 久久婷婷综合五月天| 精品久热| www.91AV.COM| 99精品视频免费在线播放| 美臀自射自家人妻| 五月丁香成人视频| 激情五月丁香婷婷| 日韩无码系列| 伊人干练久| 99热66| 五月天激情网图片| 激情爱爱网站超大免费| 欧洲亚洲欧洲99久久| 亚洲丁香婷婷丁香五月天激情| 五月天成人小说| 99在线视频。| 天天肏屄夜夜爽| 婷婷瑟瑟五月天| 99视频精品| 五月婷婷久久大片| 九九热这里只有精品556| 无码任你操| 丁香五月综合| 97干在线播放| 日日操夜夜骑| 国产精品久久久爽爽爽麻豆色哟哟| 久久综合色五月| 操逼福利视频| 可以看的AV| 婷婷自拍| 日本成人噜噜| 亚洲精品久久久久久久久久飞鱼 | 久色国产| 99国产精品久久久久久久久久久| 99热最新| 激情五月色婷婷| 伊人大综合| 国产伦理精品高清在线观看网站一区二区 | 天天综合网~91| 五月丁香日本一抹本| 五月丁香性| 秋霞少妇AV网站| 六月丁香激情综合网| 开心激情综合| 日本操B片| 丁香六月中文| 国产免费一区二区在线A片视频| 色色色五月婷| 色五月五月天色婷婷色五月| 亚洲国产色婷婷| 婷婷五月天色网久| 99国产精品久久久久久久久久久 | 九九色热视频| 色五月婷婷777| 丁香六月 婷婷六月| A1片久久久| 中文字幕高清av| 亚洲另类婷婷五月综合| 五月网站| 婷婷丁香亚洲五月天| 丁香五月偷拍| 国产日批视频| 噼里啪啦在线观看免费完整版视频 | 久久久久9999| www.久久久久| 久热婷婷| 九九成人精品免费视频| 色色色成人网| 无码地址| 色五月激情五月| 3pAV| 性无码专区无码| 天天色·欧美| 国产肥白大熟妇BBBB视频| 五月婷高清视频| 五月丁香影院| 婷婷五月永远18免费久久久| 香蕉久久国产AV一区二区| 婷婷久久视频| 五月婷婷操操| 五月天俺去也| 婷婷综合影院| 婷婷激情综合| 亚洲热手机在线观看| 欧洲亚洲精品| 玖玖九九99| 91无码一区人妻A片蜜| 一二三区视频韩国| 中文字幕高清av| 婷婷开心五月| 成人亚洲精品| 白人荫道BBWBBB大荫道| 99爱视频免费看| 极品嫩草| 久久狠狠干| 国产激情视频在线观看| 国产日韩欧美| 激情五月狠狠| 伊人五月婷婷| 秋霞免费视频| 婷婷综合网| 丁香五月最新地址| 丁香五月天天日| 香蕉AV777XXX色综合一区| 久久网思思| 99re资源在线视频导航| 99热资源在线| 久一这里有精品国产| 97热91| 丁香五月电影| 99综合视频在线| 国产黄大片在线观看画质优化| 色婷婷五月综合网| 五月婷啪啪| 午夜一区| 五月激情天天干| 激情五月天啪啪| 日本片日本片祼观看网站在线看中文版网页在线看| 五月婷婷六月丁香综合视频在线| 亚洲日比视频| 亚洲1区| 热热久久久久久久久| 97久久超视频| 深爱激情五月天| 婷婷色情小说| 丁香激情久久| 2020日日干| 五月丁香激情综合网| 国产精品人成A片一区二区| 婷婷六月花| 亚洲成人av在线| 亚洲V国产V欧美V久久久久久| 色婷婷五月视频| 激情四射五月天| 大香焦啪啪啪| 天天干天天干天天操| 色六月视频| 九九99九九99偷拍视频免费看| 精品无码久久久久久久久| 丁香五月成人社区| 五月色婷婷综合丁香精品无遮挡| 天天综合 99久久婷婷| 六月丁香五月婷婷| 天堂久久精品| 丁香成人视频| 激情婷婷丁香五月| 99热在线播放| 99色五月| 九97免费视频| 欧美顶级少妇做爰HD| 天天操综合网| 丁香色情五月综合网站| 久久久思思热| 欧美在线看| 激情婷婷五月丁香啪啪啪| 五月色婷| 丁香婷婷性久久| 五月婷婷co.m| 五月天合网| 久99久视频免费观看| 久久精品A片777777| aa久久| 人妻久久久久久久久久久| 五月天天天综合| 婷婷五月天网址| 成人AV播放| 高清无码网址| 精品色色| 亚洲久热| 五月丁香六月婷| 亚洲精品永久久久久久| 婷婷丁香激情五月天色色| 婷婷激情丁香五月婷婷激情丁香五月婷婷 | 99日韩| AV五月丁香| 婷婷色色婷婷| 99爱这里只有精品免费视频| 亚州精品久久久久AV无码| 丁香五月网络网络| aaaaa黄色| 在线观看亚洲视频影院| 大香蕉久久婷婷精品综合| 激情综合丁香| 成人久碰| 久久综合55| 色色色五月天婷婷| 91丁香色| 1024人妻无码中文字幕| 人五月天婷婷喷水| 黄色片avv| 五月婷婷久草| 99网址在线观看| 日本啪啪视频HD| 成人做爰高潮A片免费视频| 色噜噜狠狠色综合日日| 婷婷综合五月| .精品久久久麻豆国产精品| 亚洲无码99| 激情综合五月婷婷| 欧美叉叉叉BBB网站| 国产小精品| 五月丁香六月激情| 人妻熟人中文字幕一区二区 | 丰满人妻妇伦又伦精品国产| 五月天色小说| 五月婷婷激情在线| 五月丁香最新| 五月婷婷久久大香蕉| 成人版视频在线观看| 六月丁香中文字幕| 婷婷五月激情四月综合| 99er国产| 天天射夜夜骑| 婷婷色色婷婷| 欧洲亚洲免费视频9| 伊人久久艹| 婷婷五月综合网| 人妻少妇色综合| 五月色情| 久久婷婷色综合老司机| 五月天婷婷免费| 在线播放成人网站| 丁香五月婷婷成人色区| 婷婷王月天影院| 色播五月婷婷| 在线另类| 一本大道伊人AV久久综合| 亚洲人操亚洲人| 久久久久久久久久久44| 色婷婷狠狠| 婷婷五月天777| 丁香五月欧美色综合| 九九婷婷网五月天| 啪啪一区| 91九色超碰| 婷婷五月天中文字幕| 开心婷婷中文字慕| 日本性激情色播| 性热视频99精品| 久久九九色| 碰99在线| 日本久久高清| 婷婷五月天电影在线| 99在线免费视频| 婷婷五月天成人网| 狠狠色噜噜狠狠亚洲A∨| 五月丁香婷婷综合久久| 九九热视频免费的| 丁香九月婷婷综合| 亚洲丁香五冃97色| 久久婷综合| 婷婷成人小说综合| www.久久久久| 丁香婷婷五月综合欧美另类| 成人AV在线网站| 丁香五月久久综合| 亚洲精品99| 亚洲春色奇米影视| 99精品在线播放| 国产精品视频久久99| 99ri在线观看视频| 色色图五月天| 色久在| 亚洲无码色| 五月天综合| 91丁香婷婷综合资源| 欧美成人无码一区二区三区| 色五月婷婷网| 久久se 综合网| 91色久| 99福利导航| 六月天六月婷| 亚洲AV成人在线| 正宗黄色毛片| 亚洲激情综合五月婷婷啪啪| 激情开心五月天| 久久影视婷婷五月| 欧美天天干天天草| 五月丁香在线| 人妻AV在线观看| 五月婷婷九月婷婷九月婷婷| 久久九九99| 久久久ww| 亚洲成人网站在线| sS丁香五月婷婷| 婷婷五月天福利| A短视频免费在线观看| 99热这里只有精品50| 91九色PORNY肉丝在线| 久婷久婷| 五月丁香激情六月| 五月天激情小说| 色婷婷亚洲综合网站| 五月天婷婷色色| 五月激情网站| 亚洲激情图文小说| 久久九九玖玖| 色色色色色日韩午夜激情 | 综合五月丁香97| 国产毛片精品一区二区色欲黄A片| 狠狠狠狠狠干| 91热手机在线| www久视频com| 天天干一干| 99这里有精品| 天天撸天天干天天插| 久久66er久久| 狠狠香蕉| 91九色超碰正在播放| 亚洲深喉AV| 99热亚洲| 色婷婷99| 色综合九九| 五月丁香免费看| 日日夜夜噜噜爽爽| 五月天欧美 另类小说| 婷婷丁香五月麻豆| 婷婷九月亚洲| 懂色av蜜臀av粉嫩av永陈冠希| 中文字幕成人网站| 97精品人人A片免费看| 在线五月婷婷小电影| 91日韩美女被插视频| 99色嘟嘟精品网站| 婷婷伊人五月天| 五月婷婷六月激情| 久久女婷| 精品一二三区久久AAA片| 天天综合在线网| 午夜成人AV在线| 九月婷婷色色| 五月丁香久| 久大香蕉| PORNY九色9l自拍视频成人| 久草热在线视频| 激情5月婷婷| 天天色宗合| 久久五月综合| 中文av网| aa久久| 99啪啪视频| 色五月婷婷中文字幕| 六月色色| 99操| 操大屄五月天视频| 99热99日天天干| 99视频在线看| 国产婷婷五月天| 婷婷六月丁香五月| 被强行糟蹋的女人A片| 欧美性猛交XXXX乱大交极品| 久久五月婷综合| 亚洲区1| 免费看成人747474九号视频在线观看| AV成人在线播放| 超碰在线人妻| 亚洲性图一区二区三区| 亚洲综合色五月| 老司机日日夜夜青草| 丁香五月婷婷亚洲色图| 91丨九色丨东北熟女| 99精品热| 综合久久五月| 伊人激情综合网| 99噜噜噜在线播放| 激情五月天.色网| 五月开心久久| se色99| 26uuu亚洲精品国产| 日本色爽| 99视频精品| 九色视频九色九色91jiuseshipin| 99热日本精品| 婷婷五月天在线看| 涩涩涩.com| 成人综合AV| 色婷婷丁香五月| 91人无码久久久久久| 99视频35精品视频在线观看| 桃色激情婷婷伊人网| 综合激情站| 色色色免费视频| 性爱激情综合网| 97人妻碰碰碰久久香蕉| 四虎婷婷五月天| 日日噜噜夜夜狠狠久久丁香六月| 丁香婷婷激情| 久久婷婷五月激情综合| 色黑鬼导航| 色播五月| 色狠狠色噜噜AV天堂五区| 婷婷五月中文字幕| 中文aV网| 色99在线| 久久 中文 日本| 精品夜夜澡人妻无码AV| 五月婷婷七月丁香| 另类国产综合| 另类在线| 五月色亚洲| 成人网站免费sxj| 99精品热视频| 黄色AAAAAAA| 成年AAAA色情| 五月天堂婷婷| 99色在线免费观看视频| 综合激情网| 久久停停超碰| 吾爱AV导航| 国产热精品| 丁香五月天婷婷激情| 99热精品在线| 综合色色综合| 99小视频网站| 国产亚洲精品AAAA片APP| 成人 视频免费观看网站| 开心婷婷五月天激情网| 国产99久久久国产精品免费看| 亚州色婷婷| www.狠狠| 六月色婷婷综合影视| 婷婷九月丁香久久| 国产肥白大熟妇BBBB视频| 丁香五月婷婷黑人妻黄色电影院| 久色五月丁香视频| 久久久九九九 99| wwwC0maV五月花| 久久精品一区二区三区四区| 性色播| 色五月丁香婷婷| 另类综合激情| 色婷婷狠| 在线综合网| 丁香六月色婷婷| 色老久久| 91色噜噜狠狠狠狠色综合| 日日操夜夜撸| 中文字幕av亚洲| 思思久久99| 久久九九re热| 无码色| 黑人熟妇一区二区三区| 亚洲乱码w在线观看| 九九色院| 色婷婷88| 狠狠香蕉| 丁香五月综合| 成人婷婷色五月天| 免费看成人AA片无码视频吃奶| 日韩人妻无码一区二区| 欧美大肥婆大肥BBBBB| 天天摸天天舔天天爽| 极品少妇高潮啪啪AV无码| 五月婷免费视频久久久| 极品人妻VIDEOSSS人妻| 伍月婷丁香花全集| 国产性爱色| 丁香婷婷性久久| 碰碰女| 六月综合婷婷开心伊人| www.婷婷网| 中文字幕丰满孑伦无码专区| 丁香五月色五月婷婷宗合| 日本97在线观看| 免费精品99| 婷婷五月天久久久| 成人综合网站| 五月丁香六月激情综合欧美| 九色激情网| 亚洲成人综合在线| 激情综合网婷婷久久| 中文字幕婷婷9月天| 婷婷五月天堂| 91丨九色丨国产打屁股| 欧美顶级少妇做爰HD| 亚洲国产网站| 五月天激情影院| 这里只有精品日韩精品| 91色综合网站在线| www.99精品在线| 五月综合激情久久| 六月婷欧美丁香综合| 99啪啪网| 另类综合激情| 婷婷综合另类| 91超碰人人操| 激情五月天在线视频| 97热视频| 五月婷婷伊| 久久激情五月婷婷| www.五月婷婷久久.com| 99色| 国产精品第一国产精品| 五月婷婷深深爱| xx综合网| 久草视频一,二三四| 国产在线aaa片一区二区99| 亚洲精品国产精品乱码视99| 成人深爱丁香五月| 婷婷丁香www视频日本韩国| 久久这里只有精品8| 九九亚洲视频| 五月丁香六月婷婷精品| 婷婷94s| 九九久久综合| 欧美 日韩 成人| 色视五月天婷婷| 97视频久久| 日本三级99人妇网站| 午夜五月天| 色欧洲| 男人综合网| 超碰99热| 色五月自偷自拍婷婷婷婷| 99re在线播放| 日韩人妻无码专区| 欧洲激情精品婷婷| 日本97人人| 99re这里只有| 色综合大香蕉| 五月丁香六月激情欧美综合| 日韩一区二区三区无码| 激情五月婷婷| 久久jiuwww| 中文字幕不卡网站| 中文字幕日产A片在线看| 久久人操| 国产综合婷婷| 夜夜骑夜夜撸| 人人人va亚洲视频在线| www,欧美干干干干干干| 激情综合五月婷| 曰曰久久| 五月天停停日日| 五月色丁香婷婷综合| 国产黄大片在线观看画质优化| 激情五月天在线视频| 99ri精品在线| 开心五月深爱五月| 五月开心色| 思思久热6| 玖操97| 日日爽日日操| 这里只有精品视频国产| 就要爱综合| 人妻操逼视频。| 91九色精品熟女内射| 97色天堂| 97色色婷婷五月天| 丁香婷婷五月综合影院| 狠狠色丁香久久| 99精品国产在热久久婷婷| 日本在线观看91| 九九综合五月欧美| 欧洲区自拍| www.99免费视频| 99久久亚洲国产| 五月丁香婷婷啪啪网| 婷婷丁香五月天大香蕉| 99操逼视频| 久久精品系列| 99热最新精品| 亚洲成人免费电影| 天天做夜夜爽| 欧美精品XXXXBBBB| 中文字幕有多少字| 日本91在线播放| 色综合网页| 五月天激情日色在线| 人人干人人操外国| 五月婷婷|欧美| PORNY九色9l自拍视频成人| 亚洲操逼片| 婷婷五月天在线看| 五月丁香六月婷婷在线小说视频| 九九在线免费观看| A久网| 色色亚洲视频| 色欲丁香| 五月综合激情婷婷六月色窝| 91狠狠色丁香婷婷综合久久狠丁香综合久久精品 | 婷婷六月丁香色| 婷婷五月天777| 色五月成人在线| 五月天天爽| 国产免费一区二区三区三州老师F1F1.CC| 亚洲午夜电影| 婷婷在线精品| 91精品91久久久久77777| 九九热在线视频观看免费10| 综合久久9| 99激| 五月婷亚洲精品| 99操逼| 丰满少妇猛烈A片免费看观看| 极品五月天| 激情综合五月天| 婷婷五月天亚洲天堂| www.狠狠艹| 四虎成人精品永久免费AV九九| 狠狠综合| 99啪| 风流少妇A片一区二区蜜桃| 97人人操人人拍| 另类视频一区| 婷婷五月天成人综合网| 久超超碰| 成人.在线日韩| 婷婷五月色影视先锋| 婷婷色五月综合丁香| 婷婷.com| 99爱精品| se色综合网| 激情五月图| 婷婷五月天堂| 99爱精品| 五月丁香综合成人社区| 五月丁香五月激情综合色综合| 亭亭玉月丁香| 强壮公让我夜夜高潮A片视频| 丁香婷婷五月人体| sisi热国产| 九九热99熟女| 激情五月综合网丁| 影音先锋按摩| 人妻久久人妻久久第一区| 天天爽天天| 久久精品五月天| 天天情色五月天| 五月丁香六月情| 婷婷影院欧美| 久久草婷婷丁香网站| 色区久久| www.99热在线| 亚洲 五月 婷婷 成人| 日本婷婷| 婷婷月综合| 五月丁香六月综合基地| 五月婷在线| 91婷婷在线| 九九激情| 人人肏逼视频在线一区二区| www色婷婷久久综合久色| 婷婷久久丁香五月| 丁香五月成人自拍| 久99久热只有精品国产99| 久热这里只有精品6| 综合一区二区三区| 色播激情五月天| av婷婷六月丁香社区在线观看| aaaaa黄色| 日本久久婷| 影音先锋一区二区三区| 久久99精品久久久久久三级| 99热中文字幕久久| 丰满少妇乱A片无码| 激情丁香婷婷五月天| 色婷婷综合网| 五月色婷婷影院| 99热色精品| 玖色色综合| 99精品小视频| 狠狠爱丁香婷| 色五月亚洲开心网| 久久久久久久久久久-久五月天婷婷| 五月色婷婷亚洲 | 国产操逼视频网站| 色天天综合| 碰碰人人人| 丁香五月冃欧美| 国产精品久久久久久久久久免费 | 六月丁香婷婷大香蕉| 五月婷婷说| 九 九九九AV| 婷婷丁香色情| 热久久这里只有三级视频| 五区毛片七区毛片| 色婷婷av综合网| 这里只有精品在线看| 秋霞九九无码| 色五月丁香五月天| 久久人操-久草婷婷-成人AV| 综合噜噜| 国产亚洲网站在线| 操碰99| 激情五月天色色| 天天婷婷操| 99热免费| 五月激情丁香五月宗合| 天天揷综合网| 99视频一区| 婷婷五月六月| www.91在线观看| 色欲天天综合网| 色播播五月天| 日韩五月天婷婷| 久草九一| 九九热视频在线观看| AV在线大香蕉| 婷婷在线视频| 开心五月综合激情综合五月| 丁香婷婷浪潮AV久久综合| 五月天啪啪啪| 91爱啪啪| 亚洲精品V天堂中文字幕 | 99精品久久久久| 久久狠狠干| 99热99免费| 五月丁香婷婷激情四射迷人| 婷婷99狠狠躁天天躁中| 六月丁香五月激情亚洲AV| 在线观看免费观看在线9久| 婷婷色五月丁香六月欧美啪| 五月色丁香| 国产精产国品一二三在观看| 五月丁香在线看| 久久久激情视频| 中字幕视频在线永久在线观看免费 | 欧美这里只有精品| 日韩欧美一级大黄网站| 99免费在线视频| 这里只有久久精99| 97福利视频| 亚洲成人在线观看av| 思思热在线| 这里只有精品,日韩视频| 色亭亭九月| 97色婷婷| 五月丁香狠狠| 婷婷天堂综合| 超碰cap| 91se在线视频| 色综合久久久久久久久五月| 丁香六月狠狠干| 国产精品激情AV久久久青桔| 五月丁香婷婷免费视频| 色婷婷五月天激情久久| 都市激情亚洲| 亚洲乱码日产精品BD| 99九九在线视频| 五月丁香花伦理电影| 成人av在线网址| 97超碰,人人舔,人人操,人人摸| 99热热这里只精品996小说| 天天干在线播放| 五月婷婷色影院| 婷婷五月天综合中文| 天天爽在线视频| www.久久色.com| 99成人| 亚洲在线资源| 婷婷丁香成人五月天| 精品视频99看在线视频| 婷婷五月电影| 五六月婷婷久久| 久热超碰| 色五月成人| 99色精品| 开心五月综合激情综合五月| 99综合视频一体| www.久久爱.c n| AV片在线观看| 99精品视频在线观看| 91婷婷在线| 人人摸人人| 久久久久久综合五月婷婷| 丁香婷婷综合精品六月初| 91人人澡人人爽人人看| 五月天色色色网| 草草夜夜操| 久久免费精彩视频| 99综合免费视频| 天天肏天天肏天天肏| 日日爽日日爽| 五月天激情图| 狠狠干2007| 激情宗合哪里能看| 九九热av| 香蕉国产2013| 4399在线观看免费高清黄色视频| 91丁香婷婷综合久久欧美| 国产精品色情AAAAA片软件| 婷婷丁香久久| 久久99精品视频| 色五月天婷婷| 九九九九这里只有精品| 色婷婷狠狠爱| 亚洲av网站| 大香蕉婷婷五月天| 日韩综合久久| 强伦轩人妻一区二区电影| 噜噜国产| 色婷婷久久综合中文久久一本| 97婷婷五月| www.深爱激情| 亚洲天堂aaa| 色色色9| 99热网站| 99精品在这里| 五月天六月色| 极品另类| 日韩在线9| 激情综合婷婷| 99精色| 日本99视频| 午夜69成人做爰视频| 青草视频在线播放| 丁香五月婷婷啪啪视频| 综合五月激情| 任你干嘛免费视频播放| 日韩999| 色综合99| A久久| 丁香五月婷婷色综合| 91五月花丁香| 婷婷久久18| a九九热www| 丁香五月婷婷久久综合激情网| 都市激情久久| 欧美毛片www| 精品51XX| 色99在线观看| 巴基斯坦粉嫩无码视频| 色墦五月丁香| 久久久er热| 1010日日无码| 五月天六月色| 日韩欧美颜射| 大学生高潮无套内谢视频| 蜜桃婷婷丁香综合久久开心亚洲| 99干在线视频| 婷婷免费无马| 国产噜一噜天天噜| 五月天激情婷婷小说| 另类视频五月天| 婷婷开心激情| 丁香色婷婷色手机免费在线| 六月综合婷婷开心伊人| 日韩欧美一级大黄网站| 婷婷色天香| 五月天激情小说欧美激情| 久久久99久久| 成人美女网| av成人在线播放| 九九热这里有精品视频| 99国产性感视频| 九九99九九99| 野战J办公桌椅H| 777久久久| 久久视屏这里只有久久| 亚洲综合狠狠艹| 婷婷激情九月| 伊人高清无码| 91婷色| 九九免费在线视频| 成人精品人妻| 大色鬼综合| 99福利导航| 99热骚货| 九九色人| 西西4r午夜剧场| 五月丁香激情综合网| 久久精品视频9| 开心激情五月天网| 丁香青青五月天| 多精窝99在线视频| 激情久久丁香| 日韩AV中文在线观看| 网色99| 日韩AV中文字幕在线| 久久五月天激情美女| 亚洲婷婷免费| 亚洲乱码日产精品BD在线观看| 丁香六月婷婷综合啪啪| 伊人丁香婷婷东京| 亚洲天堂99| 久久久精品99| 这里只有精品视频看看| 五月婷婷六月丁香| 激情丁香五月天图片| 91啪级电影| 色五月丁香婷婷| 日本黄色在线观看| 丁香九月婷婷色| 欧美色色色| 五月丁香啪啪啪啪| 五月天亚洲综合网| 人妻无码视频网| 久婷婷五月丁香在线观看| 婷婷丁香亚洲色综合91| 日本道久久91| 玖玖九九99| 成人精品在线观看| 丁香婷婷黄网站| 青青草成人网| 天天视频精品9| 激情婷婷狠狠干| 深爱婷婷网| 成人五月丁香社区| 色噜噜狠噜噜视频| 草榴视频黄色网| 天天爽曰日爽| 99热久久这里只有精品| 九九日本视频| 97色婷| 婷婷无码视频| 精品99视频| 狠狠色丁香婷婷| 九九亚洲视频| 五月婷婷碰碰| 五月天久久www| 国产精品VIDEOSSEX久久发布| 丁香五月天欧洲在线| 99操碰| 日韩婷婷| 精品久久99| 亚洲欧美成人在线| 色丁香五月婷婷| 夜夜 操无码| 综合色99| 玖玖色综合| www,天天干| 婷婷丁香视频在线观看免费| 五月丁香色综合| 玖玖在线资源视频| av国产精品| 五月婷婷啪啪网|