久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

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

Java學(xué)生信息管理系統(tǒng)課設(shè)實(shí)戰(zhàn):JDBC+控制臺+MySQL完整教程

Java學(xué)生信息管理系統(tǒng)課設(shè)實(shí)戰(zhàn):JDBC+控制臺+MySQL完整教程 簡介一套基于Java控制臺與MySQL實(shí)現(xiàn)的學(xué)生信息管理系統(tǒng)項(xiàng)目包面向Java初學(xué)者、課程設(shè)計(jì)學(xué)生以及需要快速搭建控制臺應(yīng)用的開發(fā)者。系統(tǒng)為單管理員模式登錄后即可對學(xué)生信息進(jìn)行增刪改查操作整體結(jié)構(gòu)簡潔清晰適合理解JDBC編程與控制臺菜單交互。壓縮包共33個(gè)文件大小約37.67MB內(nèi)含6個(gè)Java源碼、6個(gè)class編譯文件、3份SQL數(shù)據(jù)庫腳本、3個(gè)JDBC連接jar包、9張運(yùn)行截圖、1份技術(shù)說明書、1個(gè)演示視頻以及運(yùn)行必讀txt覆蓋從環(huán)境配置、數(shù)據(jù)庫導(dǎo)入到代碼運(yùn)行、效果演示的完整鏈路。目前已有66人次瀏覽學(xué)習(xí)。通過該資源讀者可得到可直接導(dǎo)入Eclipse運(yùn)行的完整工程借助演示視頻和截圖快速跑通增刪改查流程并參考技術(shù)說明書掌握表結(jié)構(gòu)與項(xiàng)目設(shè)計(jì)思路附帶的運(yùn)行必讀還能幫助解決常見環(huán)境問題為課程設(shè)計(jì)或畢業(yè)設(shè)計(jì)提供實(shí)際參考。1. 學(xué)生信息管理系統(tǒng)是什么從課設(shè)答辯到控制臺交互的完整閉環(huán)學(xué)生信息管理系統(tǒng)大概是 Java 課程設(shè)計(jì)里出現(xiàn)頻率最高的題目但大部分網(wǎng)上下到的版本要么是 Swing 界面過于老舊要么干脆跑不起來。這份資源走的是“java 控制臺 mysql”路線用純控制臺交互完成學(xué)生、課程、成績的增刪改查核心代碼量控制在一千行左右搭配演示視頻把整個(gè)錄入、查詢、修改流程走了一遍。適合正在做 Java 課設(shè)、準(zhǔn)備畢業(yè)設(shè)計(jì)、或者剛學(xué)完 JDBC 想找個(gè)完整案例練手的人。視頻的價(jià)值在于把“能跑”和“能講明白”對齊了——答辯時(shí)老師問你每一塊代碼是干什么的你能照著視頻里的思路講清楚這才是這份資源真正值得下載的地方。2. 環(huán)境與工程結(jié)構(gòu)JDK 8 Eclipse MySQL 8 的版本匹配與初始化2.1 環(huán)境清單JDK、Eclipse、MySQL、驅(qū)動 jar 的選型基準(zhǔn)拿到資源包后先別急著雙擊運(yùn)行先檢查環(huán)境。這項(xiàng)目用的是 java 控制臺 mysql 三件套其中最容易翻車的就是 MySQL 版本和 JDBC 驅(qū)動不匹配。我建議的基準(zhǔn)組合是這樣的組件推薦版本說明JDK1.8課程設(shè)計(jì)和答辯環(huán)境兼容性最好Eclipse 2020 以后版本自帶適配Eclipse2020-06 以上內(nèi)置 JDBC 支持導(dǎo)入工程后可以直接跑MySQL5.7 或 8.0驅(qū)動用mysql-connector-java-8.0.x.jarJDBC 驅(qū)動8.0.x連接串里必須帶serverTimezoneAsia/Shanghai操作系統(tǒng)Windows 10/11控制臺程序無跨平臺依賴Linux 也能跑選 JDK 8 不是因?yàn)樗钚露且驗(yàn)?Eclipse 搭配 JDK 8 的時(shí)候編譯不報(bào)那些奇怪的“invalid target release”錯(cuò)誤。MySQL 8.0 用mysql-connector-java-8.0.30這個(gè)版本的驅(qū)動兼容性比 5.1.x 好但要注意 8.0 驅(qū)動的連接串寫法跟 5.1 有一條關(guān)鍵區(qū)別多了serverTimezone參數(shù)不寫直接報(bào)The server time zone value ?D1ú±ê×?ê±?? is unrecognized中文亂碼加英文報(bào)錯(cuò)疊在一起新手直接蒙圈。資源包里如果自帶了驅(qū)動 jar優(yōu)先用包里的如果沒帶去 MySQL 官網(wǎng)下對應(yīng)版本就行。2.2 從 Eclipse 導(dǎo)入工程到第一次編譯通過的完整步驟先說導(dǎo)入步驟工程是標(biāo)準(zhǔn)的 Eclipse Java Project 結(jié)構(gòu)不是 Maven也不是 Gradle所以不要用 “Import Maven Project” 去導(dǎo)會撲空。正確做法是# 解壓資源包后確認(rèn)目錄結(jié)構(gòu) student-info-system/ src/ # Java 源碼 lib/ # JDBC 驅(qū)動 jar sql/ # 建庫建表腳本 doc/ # 演示視頻、說明文檔打開 Eclipse菜單欄選 File Import General Existing Projects into Workspace然后 Select root directory 指向解壓出來的student-info-system文件夾。Eclipse 識別到.project文件后會顯示項(xiàng)目名勾選后點(diǎn) Finish。如果導(dǎo)入后源碼報(bào)紅叉最普遍的原因就是lib目錄里的 jar 沒被加載到 Build Path。右鍵項(xiàng)目 Build Path Configure Build Path Libraries Add JARs把lib下的mysql-connector-java-8.0.30.jar加進(jìn)去。這里有個(gè)細(xì)節(jié)很多人在這一步用的是 Add External JARs指向自己下載的驅(qū)動結(jié)果是項(xiàng)目拷到別的電腦后路徑失效運(yùn)行直接ClassNotFoundException。用lib目錄內(nèi)引用的方式j(luò)ar 跟工程走換機(jī)器也不怕。// 改完 Build Path 后順手確認(rèn)一下 JDK 編譯級別 // 右鍵項(xiàng)目 Properties Java Compiler // 把 Compiler compliance level 設(shè)置為 1.8 // 如果報(bào)錯(cuò) Java compiler level does not match就是這里沒對齊配置完成后再編譯一次能通過的話就說明環(huán)境和工程本身沒問題接下來才是跑起來。2.3 工程的目錄結(jié)構(gòu)src、lib、sql、doc 各放什么看清楚目錄結(jié)構(gòu)對排查問題非常重要。這個(gè)項(xiàng)目的代碼組織方式是典型的課設(shè)風(fēng)格四個(gè)頂層目錄各有職責(zé)src存放全部 Java 源碼核心類是學(xué)生管理主程序里面包含連接數(shù)據(jù)庫的工具方法、控制臺菜單的顯示邏輯、以及對學(xué)生表的增刪改查操作。lib存放 JDBC 驅(qū)動 jar這個(gè)目錄就是給 Eclipse 的 Build Path 用的項(xiàng)目里要引用的外部依賴都放這里別分散到系統(tǒng)盤的其他位置。sql存放建庫腳本包括建數(shù)據(jù)庫、建三張表、插入初始化數(shù)據(jù)的 SQL 語句用 Navicat 或 MySQL 命令行執(zhí)行一遍就能把庫準(zhǔn)備好。doc存放演示視頻和課程設(shè)計(jì)報(bào)告模板視頻是 MP4 格式演示了從登錄到完成所有操作的完整流程寫文檔的時(shí)候可以直接參考里面的操作截圖。我一般會建議拿到資源后先打開sql里的腳本在建庫之前把表名、字段名和 Java 代碼里的 SQL 語句對照一遍。很多項(xiàng)目跑不起來的根源就是字段名對不上比如 Java 代碼里寫的是student_id但建表腳本里是sid第一遍執(zhí)行必報(bào)Unknown column。先花五分鐘做這個(gè)對照后面能省兩小時(shí)。3. 數(shù)據(jù)庫設(shè)計(jì)三張表撐起學(xué)生、課程、成績的關(guān)聯(lián)查詢3.1 選擇 MySQL Workbench 還是 Navicat 初始化數(shù)據(jù)庫資源包里給了sql腳本理論上在 MySQL 命令行執(zhí)行就行但實(shí)際操作用 Navicat 的人更多。MySQL 的安裝教程網(wǎng)上已經(jīng)很多了這里只說兩個(gè)常見的坑裝 MySQL 8.0 時(shí)如果選了 “Use Strong Password Encryption”Navicat 老版本連上去會報(bào)mysql_native_password相關(guān)的錯(cuò)需要把認(rèn)證插件改回mysql_native_password另一個(gè)是端口別改默認(rèn) 3306改了的話 Java 代碼里的連接串也要同步改。執(zhí)行腳本前先建好數(shù)據(jù)庫控制臺程序本身不會自動建庫JDBC 連接串里的數(shù)據(jù)庫名必須預(yù)先存在否則報(bào)Unknown database student_db。建庫和建表分開兩步做別指望一條命令全解決失敗時(shí)定位也方便。3.2 表結(jié)構(gòu)設(shè)計(jì)主鍵策略與外鍵約束學(xué)生信息管理系統(tǒng)最核心的是三張表學(xué)生表、課程表、成績表。學(xué)生表存學(xué)號和姓名等基礎(chǔ)信息課程表存課程編號和課程名成績表是關(guān)聯(lián)表同時(shí)存學(xué)生和課程的編號加上分?jǐn)?shù)和學(xué)期字段。-- 學(xué)生表 CREATE TABLE student ( id INT NOT NULL AUTO_INCREMENT, student_no VARCHAR(20) NOT NULL UNIQUE, name VARCHAR(50) NOT NULL, gender VARCHAR(10) DEFAULT 男, major VARCHAR(50) DEFAULT NULL, PRIMARY KEY (id) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4; -- 課程表 CREATE TABLE course ( id INT NOT NULL AUTO_INCREMENT, course_no VARCHAR(20) NOT NULL UNIQUE, course_name VARCHAR(100) NOT NULL, credit DECIMAL(3,1) DEFAULT 2.0, PRIMARY KEY (id) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4; -- 成績表 CREATE TABLE score ( id INT NOT NULL AUTO_INCREMENT, student_id INT NOT NULL, course_id INT NOT NULL, score DECIMAL(5,2) DEFAULT 0.00, semester VARCHAR(20) DEFAULT NULL, PRIMARY KEY (id), KEY idx_student (student_id), KEY idx_course (course_id), CONSTRAINT fk_score_student FOREIGN KEY (student_id) REFERENCES student (id) ON DELETE CASCADE, CONSTRAINT fk_score_course FOREIGN KEY (course_id) REFERENCES course (id) ON DELETE CASCADE ) ENGINEInnoDB DEFAULT CHARSETutf8mb4;這段 SQL 里最關(guān)鍵的是外鍵的級聯(lián)刪除策略。成績表依賴學(xué)生表和課程表刪學(xué)生的時(shí)候如果沒有ON DELETE CASCADEMySQL 會直接報(bào)Cannot delete or update a parent row: a foreign key constraint fails。加了級聯(lián)之后刪學(xué)生連帶刪除成績符合課設(shè)場景下的業(yè)務(wù)預(yù)期。建表時(shí)我習(xí)慣把字符集單獨(dú)寫成utf8mb4而不是依賴 MySQL 默認(rèn)配置。很多系統(tǒng)在 Windows 上裝完 MySQL 默認(rèn)字符集還是latin1這時(shí)候控制臺輸入中文進(jìn)數(shù)據(jù)庫存進(jìn)去是亂碼查出來也是亂碼表現(xiàn)和代碼亂碼一模一樣其實(shí)根源在表的字符集。寫成utf8mb4能同時(shí)兼容中文和特殊符號一步到位。3.3 關(guān)聯(lián)查詢成績列表的正確寫法與常見誤用控制臺程序最常展示的界面就是“按學(xué)號查成績”這個(gè)功能必須用三表關(guān)聯(lián)查詢直接查成績表拿不到學(xué)生姓名。我在改學(xué)生信息管理系統(tǒng)的類似項(xiàng)目時(shí)見過有人為了省事先查學(xué)生表再查成績表用兩次查詢拼數(shù)據(jù)效果能實(shí)現(xiàn)但代碼冗余面試或答辯時(shí)老師追問一句“為什么不用 JOIN”就不好回答了。-- 按學(xué)號查詢學(xué)生成績列表 SELECT s.student_no AS 學(xué)號, s.name AS 姓名, c.course_name AS 課程, sc.score AS 成績, sc.semester AS 學(xué)期 FROM student s INNER JOIN score sc ON s.id sc.student_id INNER JOIN course c ON c.id sc.course_id WHERE s.student_no ? ORDER BY sc.semester, c.course_no;這個(gè)查詢語句是主程序里會被頻繁調(diào)用的。用?占位符配合預(yù)處理語句Java 代碼里用setString(1, studentNo)傳參能防 SQL 注入。成績表的id作為主鍵可以不加但索引idx_student和idx_course一定得有否則數(shù)據(jù)量上了幾千條后按學(xué)號查成績的響應(yīng)速度會明顯變慢。4. 代碼主干JDBC 驅(qū)動加載、連接管理與控制臺菜單的串聯(lián)4.1 驅(qū)動加載和連接工具類為什么不用 DriverManager 裸連這個(gè)項(xiàng)目的代碼主干是標(biāo)準(zhǔn)的 JDBC 流程也是課設(shè)答辯時(shí)的重點(diǎn)??丛创a時(shí)會發(fā)現(xiàn)連接數(shù)據(jù)庫的代碼集中在工具類里而不是散落在各個(gè)業(yè)務(wù)方法中。這樣設(shè)計(jì)的理由很樸素連接串里的 URL、用戶名、密碼只需要寫一次修改時(shí)只需要改一個(gè)地方。package com.student.util; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class DBUtil { private static final String URL jdbc:mysql://localhost:3306/student_db?useUnicodetruecharacterEncodingutf8serverTimezoneAsia/Shanghai; private static final String USER root; private static final String PASSWORD 123456; private static Connection conn null; public static Connection getConnection() throws SQLException { try { Class.forName(com.mysql.cj.jdbc.Driver); conn DriverManager.getConnection(URL, USER, PASSWORD); return conn; } catch (ClassNotFoundException e) { throw new SQLException(MySQL驅(qū)動未找到檢查lib目錄下jar包, e); } } }注意驅(qū)動類名寫的是com.mysql.cj.jdbc.Driver這是 MySQL 8.0 驅(qū)動的新類名。如果用 5.1 的老驅(qū)動類名是com.mysql.jdbc.Driver寫錯(cuò)就報(bào)ClassNotFoundException。連接串里的characterEncodingutf8和serverTimezoneAsia/Shanghai這兩個(gè)參數(shù)缺一不可前者解決中文亂碼后者解決時(shí)區(qū)報(bào)錯(cuò)。這個(gè)工具類用的是最簡單的單例模式整個(gè)程序運(yùn)行期間只維持一個(gè)連接??刂婆_課設(shè)項(xiàng)目并發(fā)量極低一個(gè)連接夠用但要注意getConnection()返回的Connection對象用完必須調(diào)用close()否則 MySQL 默認(rèn)的wait_timeout到了之后連接會被服務(wù)端斷開程序里再拿這個(gè)連接執(zhí)行 SQL 就報(bào)Connection is not available或No operations allowed after connection closed。4.2 學(xué)生信息 CRUD預(yù)處理語句與 ResultSet 遍歷核心功能是學(xué)生信息的增加、刪除、修改和查詢??刂婆_程序里面給出操作提示后通過Scanner讀取用戶輸入然后調(diào)用 DAO 方法執(zhí)行 SQL。這里用預(yù)處理語句而不是直接拼接字符串除了防注入還有一層好處處理包含中文的輸入時(shí)不用考慮單引號轉(zhuǎn)義問題。package com.student.dao; import com.student.util.DBUtil; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.Scanner; public class StudentDAO { // 增加學(xué)生 public void addStudent(Scanner sc) { System.out.print(請輸入學(xué)號: ); String studentNo sc.nextLine(); System.out.print(請輸入姓名: ); String name sc.nextLine(); System.out.print(請輸入性別: ); String gender sc.nextLine(); System.out.print(請輸入專業(yè): ); String major sc.nextLine(); String sql INSERT INTO student(student_no, name, gender, major) VALUES(?, ?, ?, ?); try (Connection conn DBUtil.getConnection(); PreparedStatement ps conn.prepareStatement(sql)) { ps.setString(1, studentNo); ps.setString(2, name); ps.setString(3, gender); ps.setString(4, major); int rows ps.executeUpdate(); System.out.println(rows 0 ? 添加成功 : 添加失敗); } catch (SQLException e) { System.out.println(添加失敗: e.getMessage()); } } // 按學(xué)號查詢學(xué)生 public void findStudentByNo(String studentNo) { String sql SELECT student_no, name, gender, major FROM student WHERE student_no ?; try (Connection conn DBUtil.getConnection(); PreparedStatement ps conn.prepareStatement(sql)) { ps.setString(1, studentNo); try (ResultSet rs ps.executeQuery()) { while (rs.next()) { System.out.println(學(xué)號: rs.getString(student_no) , 姓名: rs.getString(name) , 性別: rs.getString(gender) , 專業(yè): rs.getString(major)); } } } catch (SQLException e) { System.out.println(查詢失敗: e.getMessage()); } } }這套代碼用的是 try-with-resources 寫法Connection、PreparedStatement、ResultSet都自動關(guān)閉不用手動寫一堆finally。executeUpdate()返回受影響的行數(shù)大于 0 說明寫入成功executeQuery()返回結(jié)果集用rs.next()游標(biāo)遍歷。注意getString(student_no)用的是列名不受 SELECT 列表順序影響比getString(1)更穩(wěn)妥。4.3 控制臺菜單與事務(wù)操作成績錄入為什么必須開事務(wù)主程序的控制臺菜單是一個(gè)while循環(huán)不斷打印選項(xiàng)接收用戶數(shù)字輸入調(diào)用對應(yīng)方法選 0 退出。這個(gè)結(jié)構(gòu)是所有控制臺項(xiàng)目的骨架看明白了就能改造成圖書管理、員工管理等同類系統(tǒng)。package com.student.main; import com.student.dao.StudentDAO; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc new Scanner(System.in); StudentDAO studentDAO new StudentDAO(); while (true) { System.out.println( 學(xué)生信息管理系統(tǒng) ); System.out.println(1. 添加學(xué)生); System.out.println(2. 查詢學(xué)生); System.out.println(3. 錄入成績); System.out.println(4. 查詢成績); System.out.println(0. 退出); System.out.print(請選擇: ); String input sc.nextLine(); int choice; try { choice Integer.parseInt(input); } catch (NumberFormatException e) { System.out.println(輸入無效請輸入數(shù)字); continue; } switch (choice) { case 1: studentDAO.addStudent(sc); break; case 2: System.out.print(請輸入學(xué)號: ); studentDAO.findStudentByNo(sc.nextLine()); break; case 3: // 錄入成績時(shí)先根據(jù)學(xué)號找到學(xué)生再根據(jù)課程號找到課程最后寫成績表 // 這個(gè)過程分為兩步查詢和一步插入必須開啟事務(wù)保證數(shù)據(jù)一致性 break; case 0: System.out.println(感謝使用再見); sc.close(); return; default: System.out.println(無效選項(xiàng)請重新輸入); } } } }錄入成績在資源里是演示視頻的重點(diǎn)片段??刂婆_引導(dǎo)用戶輸入學(xué)號和課程號然后錄入分?jǐn)?shù)寫入成績表。這個(gè)操作需要先驗(yàn)證學(xué)生號和課程號是否存在再插入記錄兩步查詢一步寫入如果不開啟事務(wù)中途出錯(cuò)時(shí)數(shù)據(jù)會出現(xiàn)半完成狀態(tài)。JDBC 里操作事務(wù)的方法是conn.setAutoCommit(false)執(zhí)行完所有操作后conn.commit()出錯(cuò)時(shí)conn.rollback()代碼主干里應(yīng)該能看到這三個(gè)調(diào)用的成對出現(xiàn)。如果源碼里沒有這是值得自己補(bǔ)上的第一個(gè)改造點(diǎn)——答辯時(shí)主動講“我在錄入成績時(shí)加了事務(wù)保證數(shù)據(jù)一致性”立刻比同組同學(xué)高出一個(gè)段位。5. 避坑指南驅(qū)動版本、中文亂碼與連接池關(guān)閉的五個(gè)血淚記錄5.1 mysql-connector-java 8.0 驅(qū)動類名和時(shí)區(qū)參數(shù)不匹配現(xiàn)象程序編譯一切正常但一運(yùn)行就報(bào)ClassNotFoundException: com.mysql.jdbc.Driver或者報(bào)The server time zone value ?D1ú±ê×?ê±?? is unrecognized。原因MySQL 8.0 的驅(qū)動把驅(qū)動類名從com.mysql.jdbc.Driver改成了com.mysql.cj.jdbc.Driver同時(shí)連接串要求顯式指定時(shí)區(qū)。5.1 驅(qū)動不要求serverTimezone8.0 驅(qū)動沒有這個(gè)參數(shù)直接拒絕連接。解決驅(qū)動 jar 是 8.0 就用Class.forName(com.mysql.cj.jdbc.Driver)連接串加?serverTimezoneAsia/Shanghai。驅(qū)動是 5.1 就保持原來的類名兩個(gè)不要混。判斷驅(qū)動版本的方法是解壓 jar 包看META-INF/MANIFEST.MF或者直接在 Eclipse 里看Referenced Libraries里文件名。5.2 控制臺輸出中文亂碼的兩層排查現(xiàn)象數(shù)據(jù)庫表里的中文是正常的但控制臺打印出來全是問號或者存入數(shù)據(jù)庫后變成亂碼。原因這個(gè)坑分兩層。第一層是 Windows 控制臺默認(rèn)編碼是 GBK而 Java 程序輸出 UTF-8導(dǎo)致 System.out.println 打印中文亂碼。第二層是 JDBC 連接串沒帶characterEncodingutf8寫入數(shù)據(jù)庫的中文被轉(zhuǎn)成了錯(cuò)誤編碼。解決先查 Eclipse 的運(yùn)行配置Run Configurations Common Console Encoding 改成 UTF-8或者直接給 JVM 加參數(shù)-Dfile.encodingUTF-8。再看連接串確保useUnicodetruecharacterEncodingutf8在 URL 里兩個(gè)條件同時(shí)滿足后中文顯示才正常。血淚經(jīng)驗(yàn)先改連接串再改控制臺編碼順序別反否則你根本判斷不了是哪一層出了問題。5.3 程序跑一會兒后報(bào) “Connection is not available”現(xiàn)象剛啟動時(shí)增刪改查都正常操作四五次后突然報(bào)Connections could not be acquired from the underlying database程序必須重啟才能恢復(fù)。原因DBUtil.getConnection()每次返回同一個(gè)靜態(tài)Connection對象但使用方在 DAO 層把它c(diǎn)lose()了。MySQL 服務(wù)端檢測到連接被關(guān)閉后下次再拿這個(gè)句柄執(zhí)行 SQL 就報(bào)錯(cuò)。這是典型的“連接假關(guān)閉”問題。解決工具類維護(hù)的靜態(tài)Connection不應(yīng)該被業(yè)務(wù)層關(guān)閉兩邊職責(zé)分開。要么 DAO 層每次都getConnection()獲取新連接用完徹底關(guān)掉要么工具類用單例模式統(tǒng)一管理DAO 層只調(diào)用close()但內(nèi)部判斷如果這個(gè)連接是復(fù)用的就直接忽略。我一般建議課設(shè)項(xiàng)目選第一種簡單直接不產(chǎn)生踩坑機(jī)會。5.4 刪除學(xué)生時(shí)外鍵約束報(bào)錯(cuò)現(xiàn)象控制臺執(zhí)行刪除學(xué)生操作報(bào)Cannot delete or update a parent row: a foreign key constraint fails學(xué)生表里的記錄刪不掉。原因成績表里的fk_score_student外鍵引用了學(xué)生表的主鍵刪除學(xué)生時(shí) MySQL 默認(rèn)行為RESTRICT會阻止刪除防止產(chǎn)生孤兒數(shù)據(jù)。解決建表時(shí)把外鍵的刪除策略改成ON DELETE CASCADE這樣刪除學(xué)生成績自動刪除。如果資源包里的建表腳本沒寫級聯(lián)就手動執(zhí)行一條ALTER TABLE score DROP FOREIGN KEY fk_score_student再加新的級聯(lián)外鍵改完再測試刪除操作。這個(gè)坑在課設(shè)答辯時(shí)被問到的概率很高一定要提前處理。5.5 Navicat 連接 MySQL 8.0 報(bào)認(rèn)證插件錯(cuò)誤現(xiàn)象Navicat 連本地 MySQL 8.0 時(shí)彈窗報(bào)Client does not support authentication protocol requested by server; consider upgrading MySQL client連不上。原因MySQL 8.0 默認(rèn)認(rèn)證插件是caching_sha2_password舊版 Navicat 不支持這個(gè)插件。解決執(zhí)行一條 SQL 把 root 用戶的認(rèn)證插件改回mysql_native_password# 在 MySQL 命令行或 Navicat 查詢窗口執(zhí)行 ALTER USER rootlocalhost IDENTIFIED WITH mysql_native_password BY 你的密碼; FLUSH PRIVILEGES;改完后再刷新連接。這個(gè)坑跟 Java 代碼本身無關(guān)但環(huán)境搭不好程序壓根跑不起來屬于隱藏的地雷。老版本 Navicat 破解安裝包在網(wǎng)上流傳很廣但注意破解版有安全風(fēng)險(xiǎn)最好去官網(wǎng)下新版解決認(rèn)證問題一勞永逸。6. 進(jìn)階驗(yàn)證把工具類改造成自己的 DBUtils 并加強(qiáng)數(shù)據(jù)校驗(yàn)資源里的代碼能跑只是及格線我建議拿到后花一個(gè)晚上做一個(gè)改造把根上的連接管理換成“打開-使用-關(guān)閉”三段式工具類順帶把數(shù)據(jù)校驗(yàn)補(bǔ)上。改造后的工具類大致長這樣package com.student.util; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class DBUtils { private static final String URL jdbc:mysql://localhost:3306/student_db?useUnicodetruecharacterEncodingutf8serverTimezoneAsia/Shanghai; private static final String USER root; private static final String PASSWORD 123456; // 獲取連接 public static Connection getConnection() throws SQLException { try { Class.forName(com.mysql.cj.jdbc.Driver); } catch (ClassNotFoundException e) { e.printStackTrace(); } return DriverManager.getConnection(URL, USER, PASSWORD); } // 釋放資源先 ResultSet再 Statement最后 Connection public static void close(Connection conn, Statement stmt, ResultSet rs) { if (rs ! null) { try { rs.close(); } catch (SQLException e) { /* 關(guān)閉失敗不影響主流程 */ } } if (stmt ! null) { try { stmt.close(); } catch (SQLException e) { } } if (conn ! null) { try { conn.close(); } catch (SQLException e) { } } } }這個(gè)版本的關(guān)鍵是把連接改成每次調(diào)用getConnection()都新建用完徹底關(guān)閉徹底杜絕上一章說的“假關(guān)閉”問題。釋放順序必須是 ResultSet 先關(guān)、Statement 其次、Connection 最后順序顛倒或者漏關(guān)都會在數(shù)據(jù)量大時(shí)把連接數(shù)打滿。順手再改一下業(yè)務(wù)方法比如添加學(xué)生時(shí)先查重再插入學(xué)號不能用空字符串成績數(shù)字必須在 0 到 100 之間。這些校驗(yàn)邏輯加在控制臺輸入之后、SQL 執(zhí)行之前用一串if...else就能完成。做完這兩個(gè)改造這個(gè)項(xiàng)目就從“能跑”變成了“禁得起問”答辯時(shí)你能講的細(xì)節(jié)比看十遍視頻都有用。驗(yàn)證改造是否成功的方式很簡單反復(fù)執(zhí)行增刪改查二十次看有沒有連接相關(guān)的報(bào)錯(cuò)插入一條中文名字的學(xué)生記錄重啟程序再查詢確認(rèn)中文讀出來不亂碼刪除一個(gè)有關(guān)聯(lián)成績的學(xué)生確認(rèn)成績表跟著清空。三個(gè)驗(yàn)證都通過說明這個(gè)系統(tǒng)在你手里真正落穩(wěn)了。從那以后我每次拿到課設(shè)代碼都強(qiáng)制走一遍這套流程——先看環(huán)境版本再查建表腳本和代碼字段一致性然后跑通核心 CRUD最后做一次小改造——這套習(xí)慣救了我無數(shù)次希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
久久精品三级影视| 日本好吊色视频| 精品欧美不卡在线播放| 亚洲色图欧美色图综合| 亚洲一区二区三区麻豆传媒| 免费a在线播放v| 一区AV| 97欧美色资源| 亚洲。日韩。欧美| 二色av| av绯色| 亚洲A曰本VA欧美VA视频| 久久禁| 日本不卡三级网在线播放| 日操粉逼逼| 亚洲麻豆av一区二区| 国产中文字幕在线观看| 久日91在线| 花野真衣| 亚洲人妻一区二区三区| 殴美牲| 99碰碰| 一级aaaaa欧美中文字幕录像片| 日韩天天综合| 99re视频在线播放青草| 久久精品一区二区三区蜜桃臀| 久久最新免费视频23| 免费综合亚洲中文| 成人在线视频网| 欧美性爱18观看| 一本久道久久综合狠狠爱一密臀精 | 97任你吞精| 男女啪啪啪18禁网站| 少妇熟女视频一二三区| 无码九九九九| 国产精品久久泡妞网站| 极品出轨视频网站| 欧美啪啪天堂| 91蜜桃传媒精品久久久一区二区| 色天欧美| 久久久涩| 亚洲色人| 亚洲 欧美 制服 另类 自拍| 91免费看一区二区三区| 乱伦熟妇一区二区| 五十路六十路素人熟女| 亚洲成熟国产精品美女| 最近2019中文字幕国语免费版| 亚欧性爱无码| 国产成人精品日本视频| 欧美久久九九| 色综合20p| 麻豆精品三区视频| 大粗鳼巴久久久久| 欧美资源| 精品亚洲一区在线观看| 韩日性爱av| 久久91精品国产9丨久久分亭| 日韩乱伦影音先锋| www.色操逼| 91人妻Pr| 成人在线视频二区| 美日韩在线不卡人妻| 天天夜夜久久| 骚女天天综合网| 日韩av无码网站| 日欧亚洲二三区大片不卡| 国产呦精品一区二区三区下载| 日韩国产中文字幕| 97 国产一区| 欧美综合777| 蜜臀久久99精品久久久久久酒店| 欧美视频一| 超碰成人最新最好看| 最新日韩黄片| 99青青草国产视频| 成人国产二区三区在线,男女精品。| 色香av| av一区二区三区不卡| 强奸国产在线| 日本熟妇熟色97一本在线观看| 欧美性,亚州色| 超碰久在线天天做| av绯色| 首页亚洲国产高跟丝袜诱惑视频| 久久精品老司| 亚洲精品九九九| 免费中文综合精品| 男人的天堂啪啪| 亚洲精品天天影视综合网| 噜噜噜亚洲精品| 精品人妻一区二区三区日产| 看黄片视频免费| 情色日播放AV| 人人操人人肉久久精品| 99热只有这里有精品| 天美国产精品| 91精品91久久久中77777| 色网站导航大全| 熟妇人妻精品一区二区视频色欲| 白嫩白嫩的午夜九久久久久久久久久久久成人剧场 | 久久久久久久97| 青青草天天亲夜夜操网| 国产嫩草精品A88AV| 色色毛片| 台湾佬激情综合| 久久精品女同亚洲女同13| 人人搞人人插人人操| 国产成人网址| 208天天久久九九九| 超碰精品国产无码| 午夜欧美J进J出白浆流出久久久 | 一级一性爱免费视频| 另类 日韩 熟女| 天天摸夜夜摸| 亚洲国产精品无码AV久久| 91麻豆va国产精品| 久久精品人妻一区二区三区| 亚洲无吗在线视频| 中文字幕诱惑制服人妻丝袜美丝袜美| 亚洲AV成人精品网站在AV| 熟妇在线视频一区二区| 久久久久女教师免费一区 | 97啪啪| 色97综合中文字幕| 岛国AB视频| 2017大香蕉国产精品久久| 免费人成毛片乱码| 9长久久精品| 中文字幕一区电影在线观看 | ji熟女.com| 久草资源欧美在线视频| 蜜桃av综合网发布| 99999亚洲| 蜜臀国产AV中文字幕| 亚洲成人在线乱码色午夜| 青青伊人这里只有精品| 精品天堂| 日日干夜夜操视频h| 久久产精品一区二区三区电影| 青娱乐亚洲热| 1769一区二区| 丰满人妻-区二区三区免费看| 柠檬AV导航| 怡红院成人视频| 色噜噜综合在线| J?P?NESEHD熟女熟妇伦| 97超碰热线| 天天谢天天干| 色欧美在线| 男人的天堂日韩| 一区在线国产播放| 极品销魂美女一区二区| 久久夜夜夜| 日本人人操人人操| 日韩熟女三十乱伦| 精品夜夜澡人妻无码AV| 亚洲不卡不卡中文字幕不卡 | 欧美性爱另类综合| 国产极品粉嫩馒头一线天av| 91日日夜夜| 天天干美少妇一区| 不卡一区二区日本视频| 91美女小视频| 亚洲日本天堂| 97爱免费插| 嫩草一区二区在线观看| 97综合久久| 99久在线精品99re8a| 99精品热| 中文字幕一区二区在线日韩精品| 偷窥自拍亚洲天堂网爆| 亚洲伊人久久综合97| 久久国产999| 人妻天天爽夜夜爽爽| 色官网色综合| 国产综合日韩伦理| 国产高清成人免费视频| 欧美亚洲中文字幕| 久干网| 久久久久久夜夜夜夜夜| 手机看片1025| AAAAAAAAA黄片| 日日操夜夜操天天操免费观看麻豆| 亚洲AV乱码专区国产噜噜亚洲| 美国aaaaa一级黄片| 91精品国产91久久福利| 精品人妻免费观看| 被窝影院午夜看片无码| 精品91日日夜夜超清资源| 丝袜视频网国产90| 久久亚洲日韩国产欧| 91久久久视| 人人操AV| 日本新免费二区三区| 日本一区99| 国产丸一视频| 人人人人插| aaa一级黄片| 嗯嗯啊中文字幕| 日本爽爽爽爽爽爽免费视频| 熟女少妇一区二区三区| 久九九九九九九九热| 久射吧| 国产视频一区二区免费| 色婷婷成人| 国产精品久久久久久久久久久久久久久久| 99久在线精品99re8蜜桃| 骚逼自拍99| 操学生天天| 欧美一区二区在线资源| 国产蜜臀精品一区免费尤物| 69人妻精品一区二区绯色| 亚洲乱码国产乱码精网站| 色在线综合| 国产在线观看91精品一区| 超碰97网站| 欧美熟妇精品黑人巨大91| 久久久天美| 人妻蜜桃臀| 超碰色美女| 日韩专区久久久| 欧美日韩中国x| 亚洲欧美内射| 久九色| 操国产高清| 国产精品午夜AV完会免费| 久久六六| 欧美区亚洲区偷拍区| 成人麻豆av电影网站| 日本免费专区| www.色综合| 亚州国产精品乱| 欧美制服网站美腿丝袜| 欧美男人亚洲天堂| 夜夜高潮夜夜爽夜夜爱爱一区| 国产区在线| 婷婷婷婷婷婷久久久久| 蜜乳Av成人片网站| 婷婷五月天在线观看| 啪啪自拍九九综合| 国产精品成久久久久午夜午夜| 久久久久久99AV无码免费网站| 中文字幕国产| 日本三级中国三级99人妇网站| 91爰爱欧美| 91天堂丝袜美腿| 亚洲国产综合图区中文字幕| 尹人免费观看视频在线| 日本网色| 东北女人的毛片| 亚洲精品97p| 九九热AV| 亚洲精品乱码久久久久久蜜桃麻豆| 欧美精品999| 久草精品热视| 日韩内| 日本人妻伦在线中文字幕| 中文字幕日韩人妻视频一区二区三区| 一级黄色影片| 国产精品久久久久999| 1024精品在线| 插日本熟女视频| 成人影 天天操 亚洲| 91欧美性| www久久国产精品| 国产一区二区视频在线播放| 淫色网综合| 成人开心网在线视频| 老司机福利青青草| 亚洲操操操| 欧美 亚洲 综合 制服 另类| 欧美亚洲天堂| 97 色综合| 在线观看AV片| AV99热18这里只有精品| 啪啪综合网| 日本3级一区二区免费| 亚州色图狠狠干| 超碰久超碰久| 九九色图| 亚洲91射| 九九干| 60秒试看最爽10分钟网站| 天天干人人乐| 啪啪啪综合网| 亚洲一区二区中文字幕| 日韩乱插| 久久久久久久久女黄| 操逼啊啊啊91| 亚洲伊人久久精品影院| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 亚洲综人| 亚欧高清v| 精品国产乱码久久久兰草影视| 亚洲天堂五月天国产| 熟女精品一区二区三区| 久久这里只有精品9| 婷婷五月成人| 久久精品—区二区三区内射| 欧美嗯啊……在线观看视频免费| 日韩一级欧美一级国产一级台湾| 操狠狠| 久久久久九九九| 啊…啊…操我用力操我| 色综91| 18精品一区| a级免费在线观看| 黄页18禁| 九九热在线精品视频| 日本日皮视频逼| 日韩情色AV| 欧美乱伦专区| 蜜乳Av成人片网站| 曰本91情色| 乱伦一区二区三区‘| 亚洲棕合电彰| 国产操偷| 校园春色亚洲色图| 淫骚熟女一区二区三区| 嗯啊抽插大香蕉网页| 日本久久综合| 婷婷色色网| 亚洲色图欧美| 极品久久久久久久久久久久久久| 国产高清精品福利| 男人的天堂VA| 国产传媒美日韩av| 国产精品免费视频人成| 亚洲精品97| 少妇被玩视频二三区| 欧美精品23| 九九九九九九九九九五码| 丰满人妻一区二区三区大胸懂色| 91精品人妻一区二区三区蜜桃| 2001天天操| 99视频这有这里有精品| 欧美96交| 热久日综合| 欧美劲爆视频一区二区| 亚洲成人贴图| 欧美激情色婷婷花野真衣一区二区| 国产三级多多影院2022国产AA一级毛片无码 | 99夜夜操| 国产精彩女在线观看视频| 熟女突然公开看18禁影片| 欧美黑人熟妇精品91| 99xav| 全免费a敌肛交毛片免费| 99热只有这里有精品| 啊啊啊啊啊啊啊啊在线观看| 99黄页网站| 天天日天天插| 日本国产欧美高清在线| 国产色产精品在线观看| 春色综合免费| 2019AV天堂| 色婷婷视频| 秋霞网—男女啪啪亚洲免费体验区| 欧美日韩妖精91com| 男人天堂久久日韩| 天天摸天天插天天日| 亚洲国产成人精品无码专区| 伊人影院日本| av黄图片在线观看| 台湾佬大香蕉| 国产97av| 91蜜桃传媒精品久久久一区二区| 超碰98综合网| 中文字幕人妻色偷偷久久皮| 日本一区三级韩国| 99婷婷| 日本肉体xxxx裸交| 综合自拍| 女人被添高潮免费视频| 无色无码| 操高情无码| 在线中文字幕| 天天做日日做| 久久九九视频九九视频| 国产免费操逼| www.91理论| 日本一级婬片试看三分钟| 亚洲国产成人精品久久久国产成人一区二区| 精品无av| 唯美清纯 妖精视频| 天堂精品| 人妻少妇无码| 69久久| 91精品国产长腿丝袜美女| 九九九九一级| 茄子社区国产精品| 97在线公开视频| 色97欧美| 国语少妇精| 97在线免费视频观看| 成人无码欧美一级A片狼牙直播| 午夜精品久久久99热蜜桃的功能特点| 五月天加勒比啪| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 亚洲97成人在线观看| 欧美人妻少妇| 999久久久免费精品国产牛牛| 69精品| 69国产对白刺激| 天天噜| AAAA欧美日韩| 91在线超高颜值国产| 伊人精品久久网站| 国产日韩欧美三级片| 国产精品亚洲免费| 日本特黄f c2| 女人的天堂大香蕉网| 999 久久久| 国产视频97| 亚洲综合伊人无码久久| 凹凸视频在线一区二区| 2019久久久久久久久福利| 人人潮人人摸| 99热婷婷| 久久久久久中文字幕中文字幕最新| 久久久工口| 国产无遮挡| 97精品久久久久中文字幕| 大香蕉92| 欧美激情1区| a'v在线资源| 久久久一区二区三区麻豆| 午夜在线播放| 国产精品ⅴ无码大片在线看.| 男女激情黄色网址| 淮穴色AV| 日韩欧美中文| 国产欧美精品日韩区二区麻豆天美| 97综合在线观看| 色哟哟1区2区| 97aiaiai| 丁香五月色情| 欧美激色| 欧美成人一级麻豆| 久久精彩视频| 亚洲色图第四色| 精品无吗m| 丝袜剧情| 欧美精品丝袜久久久中文字幕| 久久偷偷色综合蜜桃| 激情小说在线视频| JULIA一区二区三区在线播放| 男人的天堂.com| 国产自啪精品视频网站黑丝| 6080YYY午夜理论片在线观看| 蜜桃臀av在线观看| 任我爽在线视频免费观看| 久久综合九色综合欧洲98| 国产亚洲精品精AV.| 久久九色| 久久久免费视频18| 操逼操逼逼操操逼91| 精品一区二区三区四区女| 亚洲精品人体| av国产无码| 日韩有码回春沙龙第一页| 尹人免费观看视频在线| 69人妻人人揉人人躁人人精品| 一本大道青青| 五月丁香社区婷婷日韩欧美精品影院 | 国产又粗又又黄又猛| 精国久久一区二区三区98| 久久欧美1卡2卡3| 久久久一区二区三区麻豆| 岛园激情| 欧美人妖内射| 激情久久久| 欧美综合自拍亚洲综合图| 特级毛片特黄久久免费看| 伊人丝袜美腿高跟在线观看高清 | 国产原创自拍| 亚洲色婷婷综合久久一区二区三区| 国产成人bd在线观看| 亚洲色香| 婷婷丁香五月天综合东京热| 色噜噜人妻av中文字幕| 亚卅熟女乱色| 中文字幕丝袜| 看黄片视频免费| 青青草色插素人| 亚洲系列第一页| 91国产在线精品| 亚洲 国产 精品一区| 成人夜夜| 亚洲天堂,男人| 91色插| 日本熟妇一区二区三区| 人人模人人看| 成人天天爽| 新婚人妻扶着粗大强行坐下| 国色综合天| 爽爽淫人网| 亚洲天堂精品日韩电影| 久久夜嗨| 亚洲 国产 精品一区| 蜜桃臀av一区二区| 成人影 天天操 亚洲| av爱爱爱| 色偷偷2020免费视频播放| 丰满人妻一区二区三区| 精品黄色电影| 欧美亚州色的图| 日本女人操逼| 亚洲成人黄色在线观看| 国产极品美女高潮无套在线观看| 久久精品成人一区二区三区蜜臀| 啊啊啊好爽快点啊啊啊嗯嗯| 久久国产性爱| 精品传媒在线一区| 日日摸日日碰| 99欧美| h4610国产人妻| 91色婷婷综合久久中文字幕二区| 极品内射| 久久精品国产精品亚洲艾通辽熟妇 | 五月天色图影视| 国产精品露脸在线观看| 婷婷久久久精品| 国产黄a三级三级三级av在线看 | 欧美色五月| 欧美日韩亚洲一区二区在线观看| 亚欧美综合网| 九九热在线精品视频| 天天日天天插| 日韩中文字幕人妻视频| 亚欧色图在线激情| 久久久涩| 久久宗合亚洲| 日本不卡二三区| 久久久久久亚洲精品不卡人乳| 欧美性爱免费短视频| 人妻娇喘 激情视频| 伊人991| 久久精品人体AV| JULIA一区二区三区在线播放| 26UUU欧美日本| 好涩综合| 久久九九97| 久久动漫精品视频这里只有精品| 5252色欧美在线| 嗯啊不要在线| 任你爽视频| 欧亚性爱视频免费看| 精品无码不卡视频| 美国日韩黄片| 又粗又长又大国产不卡| 人妻夜夜爽天天爽三区麻豆AV网站| 欧美日韩中国x| 亚欧美综合网。| 熟妇人妻一区二区| 久婷婷一区| 亚洲永久永久永久永久一级一级一级精品| 啊啊啊不要好疼视频| · —级AA伦aa坐爱午夜极速ⅴA一区天天噪天天噪天天噪 | 国产400孕妇孕交群| 东京热,男人的天堂| 91狠狠狠| 熟妇一区,二区,三区。| 欧美手机在线综合| 久久精品视-一级做a爰片性色毛片16美国-中国女与老外在线精品 | 中文字幕精品人妻丝袜| 熟妇最新先锋一二三区| 六六久久日韩不卡| ,国产乱人伦精品一区二区三区| 99热这里只有精品9| 人人考人人摸人人干| 亚洲色诱惑| 一区二区娱乐网站| 久久一二三四五六七八九区区区 | 日韩熟妇二区| 特级大荫道BBwBBwBBW| 久久九七| 天堂射| 加勒比性爱成人在线| 麻豆精品天美| 老女人91| 一区二区三区高清| 欧美亚洲高清| 中文字幕一区二区在线日韩精品| 国产亚洲精品第一最新| 乱老女人一区二区视频| 亚洲老熟妇xxx| 亚洲黄日韩无码专区| 国产成人主播| 综合亚州欧美| 人妻一区二区三区四区视频| 91人妻最真实刺激绿帽| 肉嘟嘟www视频在线观看高清| 九九色婷婷| 天天影视网综合少妇| 欧美亚洲影视| 亚洲日韩资源| 97欧美视频| 综合五月婷婷亚洲一区| 亚洲欧美精品一区天堂久久| 在线 亚洲 网爆 自拍| 少妇内射视频| 视频不卡中文字幕| 奇米狠999| 天天综合网~69| 精品中文日韩字幕视频| 四方色播| blacked精品一区国产| 91neishe| 97操综合| 无码精品久久| www.色综合| 中文字幕精品乱码| 国产精品精品系列在线观看| 黄色免费网页无码| 久久熟妇五十路一区| 欧美色图欧美| 欧美日韩国产黄色片| 久草成人福利导航| 亚洲色图 91| 国产传媒午夜理伦精品| 婷婷五月天影院| 黄色一区三区| av爱爱爱| www.97在线| 亚洲黄色电影| 18禁中文字幕| 抽查国产福利主播| 青草精品视频-日本久久久久网站| 26uuu性| 欧美色图偷拍另类| 懂色aV一区二区天美传媒| 天天干天天狼在线视频| 国产av热热色| 日韩黄色片子| 人人乐大香蕉| 69一区二区| 激情综合五月| 欧美日韩系列| 超碰成人国产| 久久久久深夜无码| 国产Aα| 夜夜操一区二区| 1级午夜影院费免区| 色色色色色色色色色色色色色色综合| 91N综合网| 久久亚洲av成人无码国产| 97视频900| 国产欧美精选自拍一区| 亚州综合色图| 国产白丝精品在线观看| 欧美熟妇视频| A级国产欧美激情在线| 日本 欧美 亚中文字幕| 9I1性色影院| 色播五月丁香| 大香蕉综合网| 欧美|91色综合| 亚洲国产97| 好淫网一二三视区| 精品久久久av无码免费| 国产福利夜| 制度丝袜99| 男人的天堂2000| 国产精品一二三在线看| 青青草影视蜜久久| 免费黄色视频网址| 嗯嗯啊啊操我| 91色爽欧美| 人妻献身系列第54部| 亚洲色香| 国产激情视频在线观看| 高清视频一区| 亚洲丝袜色图| 在线看片国产精品每日更新| 欧美黑人91| 天天日天天色| 日韩精品一区二区高清| 久九干| 五十路六十路七十路熟婆| 蜜桃臀一区二区aV| 嗯嗯嗯好爽| 亚洲av性爱电影| 91超碰碰在线| 日韩啪啪啪啪啪| 日韩性爱小视频| 91丝袜熟女| 久久九九99| 人人操人人色网| 中文字幕文字幕无码一区二区三区电影99| 欧美久久伊人| 欧美天天| 加勒比久久av| 黑丝91视频| 91小视频| 韩日色费| 欧美日韩制服| 亚洲激情色片| 久久婷婷伊人| 亚洲自拍天堂| 大象AV在线| 少妇丝袜在线观看AV| 91久久精品国产| 日本高清有码网址视频| 黄骗免费网站| 91中出在线| 精品999日本| 日本色婷婷| 免费精品中文字幕| 97国产人人| 亚洲大色鬼| 亚洲情色1区| 国产精品免费视频人成| 呦呦影院| 在线小视频| 亚洲。日韩。欧美| 一区二区影院| 丁香婷婷五月| 日韩一级二级三级| 啊啊啊不要嗯嗯在线观看| 五月丁香啪啪网| 色色香蕉| 亚洲欧洲综合成人av一区| 91天天看| 情色大香蕉| 中文无线日韩一区| 色网综合网| 中文字幕在线观看第二页| 五月激情综合网| 欧美日韩第一页| 免费公开人人操| 飘花国产午夜精品不卡| 台湾一区国产高清在线| 亚洲无992tv| 精品免费囯产一区二区三区 | 亚洲制服aⅴ中文字幕| 日夜伊人网| 国产视频第二页| 超碰97男女| 欧美成人精品一区二区男人蜜臀| 久久国产999| 久久久久久久久久久久欧美日| 青青草男人天堂| 97色爱| 2019天天操天天爽天天拍| 国产精品制服丝袜中文字幕日韩一区二区三区| 色综合久久888| www.狠狠| AV色天香在线| 色一射色一射| 五月天伊人| 国产白领连续中出在线播放| 歐美性天天| 91欧美丨精品丨入口| 色哟哟av网址| 色香网| 四虎免费在线播放| 96麻豆精品一区二区三区| 亚洲久久久久| 精品久久久久久中文字幕视频免费 | 少妇xx精品| 免费综合亚洲中文| 中文字幕 国产区| 日本在线一二| 日韩超碰精品综合| 北条麻妃性愛视频| 国产国产亚洲一二三久久| 91综合站| 欧美日韩欧美| 日韩欧美亚洲自拍偷拍| 99国产精品视频尤物| 国产激情在线| 大香蕉啪啪啪| 青娱乐大香蕉| 新91视频.cmp| 外站AV在线| 亚洲精品性爱片| 99日韩| 亚洲影院小综合| 伊人 俄罗斯 a v| 久久黄黄黄| 久久 国产 无码| 一牛影视成人片免费| 九九亚洲视频| 色天堂综合| JuliaAnnXXX888| 亚洲国产丝袜熟女av| 亚洲精品xxx| 人妻少妇精品一区二区三区| AV一二区| 精品日韩产品在线,日韩在线不卡视频,欧美日韩免费专区/久, | 色婷婷九月天天综合| 亚洲激情AV| 色噜噜人妻丝袜AV资源| 91色欧美| 欧美色视频在线| 大香蕉九九| 亚洲成人妻日韩在线| 精品91日日夜夜超清资源| 亚洲小电影免费涩涩成人在线高清| 影音先锋国产精品| 动漫av中文| 日本在线观看网址| 国产精品一区二区亚洲人成毛片| 中文字幕一区二区韩| 激情婷婷五月天| 亚洲欧洲国产综合av| 欧美天堂日韩三级国产传媒| 中文字幕乱偷人妻久久艾草网| 亚春色色| 久久性生大片免费观看性| 亚欧性爱无码| 亚码激情| 啊啊啊啊好疼视频| 日韩av无码网站| 91大学精品激情戏| 激情另类激情| 尤物一级在线免费观看| 玖玖婷婷五月天| 亚洲国产亚洲天堂| 欧美成人A天堂片在线观看| yirendaxiangjiashipin| 久久久久网站-538在线视频-欧美永久乱码 | 国产av强奸美女| 99这里都是精品| 超碰久草| 在线人人人人人人精品超| 超碰在线974| 99在线精品视频| 婷婷色导航| 熟女少妇一区二区三区| 成人性爱av.com| 色婷婷五月天| 夜夜高潮夜夜爽夜夜爱爱一区 | 久久久一热在线播放| 欧美日韩国产色五月综合在线| 成人乱人伦一区二区| 日日狠狠久久偷偷色综合免费| 亚洲色婷婷综合久久一区二区三区| 又大又大又大又粗爽高潮观看 | 91色综合色| 园内精品自拍视频在线播放| 欧美日本天堂| 欧美性爱中文字幕无线码| 色天堂综合| 日韩免费三级黄片电影| 青青草视频久久久久| 九九精品无码专区免费| 国产AV人人 夜夜人人澡| 天堂性色| 九九热AV| 2019午夜福利视频| 人人操人人操人人操人人操人人操人人人11.CM | 99久久婷婷国产综合| 色爽——AV| 2020中文在线一区二区三区| 亚洲综合贴图91| 91精品无码人妻系列| 亚洲性感丝袜诱惑在线观看| 婷婷丁香九月| 亚洲男人天堂视频| 五月天精品| 国产日韩怡红院| 婷婷情色综合网| 国产精品白领在线观看| 精品97久久综合| 久草视频观看视频在线| 精久久久| 色五月婷婷中文字幕| 欧美宗合色| 日韩美女久久一区二区三区| 韩国手机不卡无码三级视频| 亚洲欧美国产中文字幕| 亚洲成A∨人影院在线欢看| 丁香7月婷婷| 激情自拍 校园春色| 在线观看不卡一区二区三区| 国产天美传媒精品| 在线观看黄色电话| 日韩视频中文字幕| 色综合20p| 日本熟女中文| 日日爱99| 亚洲九九爱| 久久超碰久| 噜噜噜在线视频| 51一区二区三区| 在现视频女上位好爽| 中文字幕一区电影在线观看| 欧美人妻制服| 韩国三级三级BD在线| 国产动漫操逼视频| 操婢日韩| 亚洲天堂另类| 草b在线 | 亚洲性少妇| 婷婷色一区| 日韩色欲久久一二三四区| 超碰吊日色| 日欧毛片久久| 国产女上位好爽在线| 日韩乱伦AⅤ| 亚洲午夜精品久久久中文影院| 欧美老妇女内射网址| 五月激情小说| 国产精品干干干| 欧美成人免费在线观看| 大香蕉92| 日韩99神马视频片| 五月色网| 自拍偷拍 高清无码| 中文字幕制服诱惑| 久草色在线观看| 99re95| 天天日B狠狠操| 五月色网| 国产精品美女久久久久AⅤ国产馆| a啊啊啊啊啊啊啊啊一区二区| 91美女色视频亚洲| 天天综合香 ld视频| 猛交交| 中文字幕日韩专区精品系列| 美女诱惑久久| 校园激情狠狠四射| 疯操AV| 久久日本熟妇熟色高清| 麻豆天美电影一区二区| 国产在线强奸视频| 97精品视频| 综合网少妇| 美女丝袜激情小说| 亚洲色入欧美| 一本久久精品中文字| 伊人97色天使| 日韩一级欧美一级在线观看| 天天搞在线综合网| 国产91精品福利在线| 欧美色女人| 97免费视频在线观看| 亚洲小说视频| 色九久| 激情欧美97| 麻豆色99999| 精品国产a∨一区天美传媒| 十八禁一区二区无码观看| 亚洲熟女偷拍在线观看| 性色国产东北露脸精品视频| 后入内射蜜桃臀| 东北女人的毛片| 一道本东京热加勒比一区二区三区| 超踫中文字幕| 中亚精品极乱| 顶级少妇BT天堂| 亚洲美女30b| 97干天天| 欧美伦乱爱| 九99久久| 欧美色图20P| 亚洲啪啪综合?v一区综合精品区| 人妻在线大香蕉| 综合色拍| KK色在线影院| 91亚洲欧洲| 国产91av在线播放| 国产野战露脸在线播放| 国产精品自在线发布| 欧美中出1| 青草青青久久久久久国产| 中文久久一区| 日本最新免费韩国1区2区视频播放| 91国产在线精品| 美女黄页网站| 激情天天视频| 黄色AAAAA欧美| 色噜噜精品一区二区三| 六月丁香婷| 久久偷拍人| 欧美性五月| 91性网| 日本东京热久久久电影| 日韩A优精品在线观看| 久久精彩免费视频| 日本一片一区| 无码九九| 色噜噜国产精品视频一区二区| ji熟女.com| 婷婷五月天网| 天天弄欧美| 超碰97综合网| 欧美性爽xyxOOOO| 欧美日韩中文亚洲v在线综合| 成人贴图日韩欧美| 自拍二页| 九九九精品美女| 强奸乱伦 亚洲一区| 熟女突然公开看18禁影片| 丰满少妇人妻久久久久久| 狠狠夜色午夜久久综合在线| 就去色综合| A片大香蕉在线| 激情五月天色色网| 亚洲精品久| 大屁股熟女一区二区三区| 人人操,人人液| 国产一区二区在线播放量| 婷婷视频网| 天天日日日射| 综合网少妇| 啊啊啊久久| 久久在线观看免费视频| 5278欧美一区二区三区| 99精品网站| 男人在线天堂| 欧美精品日韩久久久九| 欧美少妇大量自拍视频在线观看| 9999亚洲精品| 日日干天天干夜夜爽| 天天干天天干天天| 老女人老91妇女老热女| 一级性爱视频免费观看| 精品国产精品一区二区| 97超碰超欧美。| 免费福利视频中文字幕| 日韩草久视频| 精品免费囯产一区二区三区| 99在线无码精品秘 入口黑人| 久久大香蕉手机高清视频| 南澳成人一级片在线播放| 日本不卡高清视频| 国产不卡中文字幕免费avi| 97亚洲精品| 激情网五月天| 欧美丝袜中文字幕07在线| 亚州操逼图| 九九九九精品一区| 视频在线观看免费一区二区三区| 美女淫穴| 日韩肏逼视频| 玖玖综合.com| 2017亚洲天堂| 久久侵犯人妻爽爽爽| 欧美 亚洲精品首页| 免费一级特黄特色大片在线观看看| 97中文天堂| 国产偷拍网站| 麻豆天美制片厂网站视频| 一本色道无码DVD中文字幕| 青青青国产| 久草线上视频免费看| 天天躁日日躁xxxxx| 午夜福利在线合集| 白嫩国模丰满一二三区| 精品二区三四区五电影 | 麻豆国产成人精品| 嫩草一区二区在线观看| 啊啊啊在线看| 综合激情婷婷| 欧美综合另类| 欧美麻豆成人同性GⅤ在线| 久久久久久久久久久久九| 18禁免费视频| 天天拍天| 国产 三级自拍| 蜜桃传媒视频第一区入口在线看| a片偷拍视频| 久久精9| 久久夜黄色无码A级大片| 色拍偷亚洲| 国产极品一区二区三区三州| 国语精品av| 五月婷婷六月丁香| 日韩欧美大片免费高清啪啪| 91九九九逼| 精品国产乱码久久久久久口爆网站| 久久是精品| 中文字幕91综合| 欧美v亚洲v综合v国产v妖精| 欧洲精品网| 青青草日韩无码| 好色综合| 熟妇国产免费一区| 天天做天天爱天天高潮| 校园春色五月天| 日韩天天本| www.久久| 伊人久久综合影院精品久久久| 91高潮喷水美女| 狠狠操夜夜操蜜桃视频三区| 亚洲福利影院一区久久| 91影视亚洲| 色婷婷丁香五月| 一类av片在线看| 人妻精品一区二区| 330dv亚洲成年视频网| 爱媛媛久久国产福利| 精品国产Av无码久久久伦古装| 中文字幕人妻色偷偷久久皮| 中文字幕一区二区三区视频播放| 肏逼视频日本| 成人资源中文字幕在线观看| 江都AV在线| 91爆操视频| 国内偷拍精品一区二区| 性欧美| 玖玖爱一区在线| 东京热男人的天堂网| 婷婷午夜成人色中色| 麻豆 美女 丝袜 人妻 中文| 情色五月天网| 精品国产网站| 五月天激情四射| 久久av成人无码免费| 天天看精品动漫视频一区| 91人妻视频| 九九热在线精品视频| 亚洲国产精品99久久久| 白丝AV| 欧美亚洲手机在线| 2019亚洲男人天堂| 97爱欧美| 97资源超碰| 色婷婷久久| 国产成年精品高清在线观看91| 性综合网| 999久久久国产精品| 欧美亚洲国产日本在线,久久精品国产| 亚洲青青青视频在线| 人妻少妇色综合| 思思热免费视频观看| 黄片视频,下载| 大香蕉乱级| 久久人| 欧美 亚洲 在线| 一二三区视频在线观看| 蜜桃臀久久| 九九av| 曰本91情色| 欧美九九99久久精品| 最新AVzaixian| 日本三级久| 色性综合| 亚洲有薄码区日本系列中文字幕| 色婷网| aaaa黄片| 日韩欧美字幕亚洲一区二区| 成人a大片在线观看| 国产福利在线视频网站| 伊人久久大香线蕉无码| 欧美日韩在线国产在线| 欧美天天干| 欧美 日韩 亚洲 春色| 欧美一级特黄淫片在线观看| 人人艹亚洲| 丁香五月综合| 久久伦理视频久久大香蕉视频| 日韩精品一区二区三区色欲| 精品人妻美妇91job| 亚洲av国产av综合av卡| 91色人妻|