色五月色开心色婷婷色丁香,五月婷婷丁香花综合网,婷婷丁香五月激情综合在线,五月婷婷六月丁香动漫,婷婷丁香五月激情综合在线,丁香花中文字幕在线观看,播五月色五月开心五月网,开心激情综合网,狠狠色丁香婷婷综合最新地址,丁香视频在线观看,狠狠做六月爱婷婷综合av,久久激情五月丁香伊人

ARTICLE DETAIL

資訊詳情

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

Swing+JDBC+MySQL畢業(yè)設(shè)計系統(tǒng):輕量可控的Java桌面應(yīng)用實踐

Swing+JDBC+MySQL畢業(yè)設(shè)計系統(tǒng):輕量可控的Java桌面應(yīng)用實踐 簡介本資源是一套基于Java桌面開發(fā)的畢業(yè)設(shè)計選題管理系統(tǒng)實戰(zhàn)項目面向計算機專業(yè)本科生、Java初學(xué)者及課程設(shè)計實踐者解決高校畢業(yè)設(shè)計環(huán)節(jié)中師生選題、命題、審核與數(shù)據(jù)管理的信息化需求。項目采用Swing構(gòu)建圖形界面JDBC連接MySQL實現(xiàn)數(shù)據(jù)持久化完整覆蓋用戶權(quán)限控制、題目發(fā)布、學(xué)生選題、管理員審核及查詢統(tǒng)計等核心業(yè)務(wù)流程。壓縮包共18個文件含12個Java源碼涵蓋UI、DAO、Entity等分層邏輯、1份SQL建庫腳本、1份詳盡的數(shù)據(jù)庫表設(shè)計文檔.doc與.md雙格式、1個可運行jar包及配套依賴jar整體4.61MB結(jié)構(gòu)清晰便于逐模塊學(xué)習(xí)與調(diào)試。已有1532人下載學(xué)習(xí)提供開箱即用的完整工程結(jié)構(gòu)、規(guī)范的數(shù)據(jù)庫設(shè)計說明與典型SwingJDBC集成實踐是掌握Java GUI開發(fā)、數(shù)據(jù)庫交互及多角色權(quán)限系統(tǒng)設(shè)計的優(yōu)質(zhì)教學(xué)案例。1. 為什么用 Swing JDBC MySQL 做畢業(yè)設(shè)計選題管理系統(tǒng)反而比 Spring Boot 更穩(wěn)、更可控、更適合答辯這不是一個“過時技術(shù)堆砌”的懷舊項目而是一類明確面向教學(xué)閉環(huán)、輕量級部署、零運維依賴的典型 Java 畢業(yè)設(shè)計落地場景學(xué)生要獨立完成從數(shù)據(jù)庫建模、界面交互、業(yè)務(wù)邏輯到本地可演示的全鏈路且評審老師只關(guān)心“能不能跑通”“邏輯清不清”“數(shù)據(jù)存不存得住”不關(guān)心高并發(fā)、微服務(wù)或云原生。Swing 提供開箱即用的桌面 GUIJDBC 直連 MySQL 避開 ORM 抽象層帶來的黑匣子比如 MyBatis 的 XML 映射錯位、Spring Boot 自動配置沖突MySQL 本地安裝簡單、命令直觀、日志清晰——三者組合恰恰構(gòu)成了一條最短路徑驗證能力的技術(shù)棧。尤其當(dāng)學(xué)生面對“Java 環(huán)境配不起來”“Maven 依賴拉不下來”“Tomcat 啟動報 404”這類高頻翻車點時Swing 程序雙擊 jar 就能運行JDBC 連接字符串寫死在代碼里也一目了然MySQL 用mysqld --console就能看到實時 SQL 執(zhí)行日志。這不是倒退而是把注意力精準錨定在“業(yè)務(wù)邏輯是否自洽”這個核心上。適合大三下至大四上、Java 基礎(chǔ)扎實但工程經(jīng)驗尚淺、需在 46 周內(nèi)交付可演示、可講解、可調(diào)試的完整系統(tǒng)的學(xué)生。2. 從零搭建用 Swing 構(gòu)建可交互的選題管理主界面不是拖控件而是用代碼控布局Swing 不是“拖拽完就交差”的玩具它的價值在于完全掌控 UI 生命周期與事件流。畢業(yè)設(shè)計選題系統(tǒng)的核心界面必須支持教師發(fā)布課題、學(xué)生查看/選擇/撤回、管理員審核/統(tǒng)計——這些操作不能靠JFrame默認布局糊弄必須用BorderLayoutGridBagLayout混合嵌套保證不同角色登錄后動態(tài)切換功能區(qū)同時避免組件重疊、縮放錯亂等玄學(xué)問題。2.1 主窗口結(jié)構(gòu)用 BorderLayout 劃分功能區(qū)避免嵌套失控主窗口采用BorderLayout作為頂層容器這是 Swing 中最穩(wěn)定、最易理解的布局策略。頂部放角色標(biāo)識欄顯示“當(dāng)前用戶張三學(xué)生”中部用JTabbedPane承載不同角色視圖教師 tab / 學(xué)生 tab / 管理員 tab底部固定狀態(tài)欄顯示“已連接 MySQL 8.0.33”。這種結(jié)構(gòu)的好處是各區(qū)域職責(zé)單一add(Component, BorderLayout.CENTER)等調(diào)用語義清晰不會像GroupLayout那樣因 IDE 自動生成代碼導(dǎo)致維護困難。public class MainFrame extends JFrame { private JTabbedPane tabbedPane; private JLabel statusLabel; public MainFrame() { setTitle(畢業(yè)設(shè)計選題管理系統(tǒng)); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setLayout(new BorderLayout()); // 頂部角色信息欄 JPanel topPanel new JPanel(new FlowLayout(FlowLayout.LEFT)); topPanel.add(new JLabel(當(dāng)前用戶)); JLabel userLabel new JLabel(未登錄); topPanel.add(userLabel); add(topPanel, BorderLayout.NORTH); // 中部選項卡面板后續(xù)動態(tài)填充 tabbedPane new JTabbedPane(); add(tabbedPane, BorderLayout.CENTER); // 底部狀態(tài)欄 JPanel bottomPanel new JPanel(new FlowLayout(FlowLayout.RIGHT)); statusLabel new JLabel(未連接數(shù)據(jù)庫); bottomPanel.add(statusLabel); add(bottomPanel, BorderLayout.SOUTH); pack(); setLocationRelativeTo(null); setVisible(true); } public void updateStatus(String msg) { statusLabel.setText(msg); } }提示pack()必須在所有組件添加完畢后調(diào)用否則窗口尺寸異常setLocationRelativeTo(null)讓窗口居中顯示比setBounds()更適配不同分辨率屏幕。2.2 學(xué)生選題 Tab用 GridBagLayout 實現(xiàn)緊湊表單解決字段對齊難題學(xué)生 Tab 需要展示課題列表JTable、篩選條件JComboBoxJTextField、操作按鈕“選擇”“撤回”“刷新”。若用FlowLayout或GridLayout會導(dǎo)致“課題名稱”文本框過寬、“專業(yè)方向”下拉框過窄、“選擇”按鈕被擠到角落。GridBagLayout是唯一能精確控制每個組件權(quán)重、填充方式、內(nèi)外邊距的方案。關(guān)鍵參數(shù)說明gridwidth GridBagConstraints.REMAINDER讓“刷新”按鈕獨占一行weightx 1.0讓課題表格水平撐滿fill GridBagConstraints.BOTH讓表格填滿分配空間insets new Insets(5,5,5,5)統(tǒng)一內(nèi)外邊距避免視覺粘連。private JPanel createStudentTab() { JPanel panel new JPanel(new GridBagLayout()); GridBagConstraints gbc new GridBagConstraints(); gbc.insets new Insets(5, 5, 5, 5); gbc.fill GridBagConstraints.HORIZONTAL; // 篩選行 gbc.gridx 0; gbc.gridy 0; gbc.weightx 0.3; panel.add(new JLabel(專業(yè)方向), gbc); gbc.gridx 1; gbc.weightx 0.7; JComboBoxString majorCombo new JComboBox(new String[]{計算機科學(xué), 軟件工程, 人工智能}); panel.add(majorCombo, gbc); gbc.gridx 0; gbc.gridy 1; gbc.weightx 0.3; panel.add(new JLabel(關(guān)鍵詞), gbc); gbc.gridx 1; gbc.weightx 0.7; JTextField keywordField new JTextField(20); panel.add(keywordField, gbc); // 表格使用 DefaultTableModel 動態(tài)填充 gbc.gridx 0; gbc.gridy 2; gbc.gridwidth 2; gbc.weighty 1.0; gbc.fill GridBagConstraints.BOTH; JTable table new JTable(new DefaultTableModel( new Object[][]{}, new String[]{ID, 課題名稱, 指導(dǎo)教師, 專業(yè)方向, 狀態(tài)} )); JScrollPane scrollPane new JScrollPane(table); panel.add(scrollPane, gbc); // 按鈕行 gbc.gridy 3; gbc.gridwidth GridBagConstraints.REMAINDER; gbc.fill GridBagConstraints.NONE; gbc.anchor GridBagConstraints.EAST; JPanel buttonPanel new JPanel(new FlowLayout(FlowLayout.RIGHT)); buttonPanel.add(new JButton(選擇)); buttonPanel.add(new JButton(撤回)); buttonPanel.add(new JButton(刷新)); panel.add(buttonPanel, gbc); return panel; }注意JTable的DefaultTableModel必須在構(gòu)造時傳入空數(shù)據(jù)和列名后續(xù)用addRow(Object[])動態(tài)追加不能直接修改Vector內(nèi)部數(shù)據(jù)——否則表格不刷新。這是 Swing 事件模型的硬性約定不是 bug。3. 數(shù)據(jù)驅(qū)動用 JDBC 直連 MySQL繞過 ORM 黑箱把每一條 SQL 都攥在手里JDBC 不是“老古董”而是調(diào)試友好性與教學(xué)透明度的終極保障。當(dāng)學(xué)生在答辯現(xiàn)場被問“你查課題用了什么 SQL怎么防止 SQL 注入事務(wù)在哪提交”時手寫PreparedStatement的代碼就是最硬的底氣。MyBatis 的if標(biāo)簽、Spring 的Transactional注解在答辯環(huán)節(jié)反而容易暴露理解盲區(qū)——而conn.prepareStatement(SELECT * FROM topic WHERE major ? AND status ?)這一行誰都看得懂、改得動、斷點跟得進。3.1 連接池不是必需品HikariCP 對畢業(yè)設(shè)計是過度設(shè)計DriverManager 足夠穩(wěn)很多教程一上來就教 HikariCP但對單機演示系統(tǒng)它帶來的復(fù)雜度遠超收益要配application.properties、要處理DataSource注入、要理解連接泄漏檢測閾值。畢業(yè)設(shè)計階段用DriverManager.getConnection()直連配合try-with-resources自動關(guān)閉既安全又清爽。MySQL 8 驅(qū)動必須用com.mysql.cj.jdbc.DriverURL 格式強制要求serverTimezone參數(shù)否則ResultSet.getDate()返回 nullpublic class DatabaseConnection { private static final String URL jdbc:mysql://localhost:3306/thesis_db?useSSLfalseserverTimezoneAsia/ShanghaiallowPublicKeyRetrievaltrue; 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); // 顯式加載驅(qū)動避免 ClassNotFoundException } catch (ClassNotFoundException e) { throw new RuntimeException(MySQL JDBC Driver not found, e); } return DriverManager.getConnection(URL, USER, PASSWORD); } }血淚經(jīng)驗allowPublicKeyRetrievaltrue是 MySQL 8.0.28 的強制要求否則拋Public Key Retrieval is not allowed異常useSSLfalse在本地開發(fā)環(huán)境可關(guān)閉 SSL避免證書配置麻煩——這不等于生產(chǎn)環(huán)境可忽略安全而是教學(xué)場景下優(yōu)先保證連通性。3.2 CRUD 封裝用泛型 DAO 統(tǒng)一模板但絕不隱藏 SQLDAO 層不是為了炫技而是為了讓增刪改查邏輯集中、可審計、可替換。我們不封裝成topicService.save(topic)而是寫成TopicDao.insert(topic)方法體內(nèi)明明白白寫著INSERT INTO topic (...) VALUES (?, ?, ?)。這樣學(xué)生能一眼看出字段順序是否與數(shù)據(jù)庫一致、?占位符個數(shù)是否匹配、executeUpdate()返回值是否為 1表示成功插入一行。public class TopicDao { public static int insert(Topic topic) throws SQLException { String sql INSERT INTO topic (title, teacher, major, description, status) VALUES (?, ?, ?, ?, ?); try (Connection conn DatabaseConnection.getConnection(); PreparedStatement ps conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS)) { ps.setString(1, topic.getTitle()); ps.setString(2, topic.getTeacher()); ps.setString(3, topic.getMajor()); ps.setString(4, topic.getDescription()); ps.setString(5, topic.getStatus()); // 待選 / 已選 / 已審核 int rowsAffected ps.executeUpdate(); if (rowsAffected 1) { try (ResultSet rs ps.getGeneratedKeys()) { if (rs.next()) { topic.setId(rs.getInt(1)); // 獲取自增主鍵 } } } return rowsAffected; } } public static ListTopic findByMajorAndStatus(String major, String status) throws SQLException { String sql SELECT id, title, teacher, major, description, status FROM topic WHERE major ? AND status ?; try (Connection conn DatabaseConnection.getConnection(); PreparedStatement ps conn.prepareStatement(sql)) { ps.setString(1, major); ps.setString(2, status); ListTopic topics new ArrayList(); try (ResultSet rs ps.executeQuery()) { while (rs.next()) { Topic t new Topic(); t.setId(rs.getInt(id)); t.setTitle(rs.getString(title)); t.setTeacher(rs.getString(teacher)); t.setMajor(rs.getString(major)); t.setDescription(rs.getString(description)); t.setStatus(rs.getString(status)); topics.add(t); } } return topics; } } }關(guān)鍵細節(jié)ps.executeUpdate()返回受影響行數(shù)必須校驗是否為 1否則可能是字段類型不匹配如VARCHAR插入超長字符串被截斷或唯一鍵沖突Statement.RETURN_GENERATED_KEYS參數(shù)讓getGeneratedKeys()可用這是獲取自增 ID 的標(biāo)準方式比SELECT LAST_INSERT_ID()更安全。4. 避坑Swing JDBC MySQL 組合下90% 的翻車都發(fā)生在這 4 個地方Swing 界面卡頓、JDBC 連不上、MySQL 字段存亂碼、事務(wù)不生效……這些不是“運氣不好”而是有跡可循的共性陷阱。以下是我?guī)н^ 17 屆畢設(shè)學(xué)生總結(jié)出的最高頻、最隱蔽、最容易被答辯老師揪住的 4 類問題每一條都附帶現(xiàn)象、根因和可立即執(zhí)行的修復(fù)動作。4.1 現(xiàn)象Swing 界面點擊按鈕無反應(yīng)Console 無任何輸出原因事件監(jiān)聽器未正確綁定或ActionListener寫在了非 EDTEvent Dispatch Thread線程中導(dǎo)致 GUI 線程阻塞。常見于在SwingWorker外部直接調(diào)用耗時 JDBC 操作如TopicDao.findByMajorAndStatus()而沒做線程隔離。解決所有數(shù)據(jù)庫操作必須包裹在SwingWorker中done()方法里更新 UI。禁止在actionPerformed()里直接寫conn.prepareStatement(...)。// ? 正確耗時操作在后臺線程UI 更新在 EDT new SwingWorkerListTopic, Void() { Override protected ListTopic doInBackground() throws Exception { return TopicDao.findByMajorAndStatus(計算機科學(xué), 待選); } Override protected void done() { try { ListTopic topics get(); // get() 在 EDT 中執(zhí)行 updateTable(topics); // 安全更新 JTable } catch (Exception e) { JOptionPane.showMessageDialog(null, 查詢失敗 e.getMessage()); } } }.execute();4.2 現(xiàn)象MySQL 中中文顯示為??但 Navicat 查看正常原因JDBC URL 缺少characterEncodingutf8mb4或 MySQL 服務(wù)端my.cnf中collation-server未設(shè)為utf8mb4_unicode_ci。即使數(shù)據(jù)庫、表、字段都是 utf8mb4JDBC 連接層默認用 latin1 解碼。解決在 JDBC URL 末尾追加characterEncodingutf8mb4useUnicodetrue并確認 MySQL 服務(wù)重啟后生效# 檢查 MySQL 當(dāng)前編碼 mysql SHOW VARIABLES LIKE character_set%; mysql SHOW VARIABLES LIKE collation%; # 若 server 和 database 不是 utf8mb4修改 my.cnf 后重啟 [mysqld] character-set-server utf8mb4 collation-server utf8mb4_unicode_ci4.3 現(xiàn)象學(xué)生“選擇課題”后數(shù)據(jù)庫status字段仍為“待選”刷新界面不變原因JDBC 事務(wù)未提交。默認情況下Connection的autoCommit為true但若之前手動調(diào)用過conn.setAutoCommit(false)比如為實現(xiàn)“選題生成選題記錄”原子性后續(xù)忘記conn.commit()則所有 DML 操作在連接關(guān)閉時自動回滾。解決嚴格遵循“顯式開啟 → 執(zhí)行 → 顯式提交/回滾”流程用try-catch-finally保底Connection conn null; try { conn DatabaseConnection.getConnection(); conn.setAutoCommit(false); // 執(zhí)行 update status // 執(zhí)行 insert selection_record conn.commit(); // ? 必須顯式調(diào)用 } catch (SQLException e) { if (conn ! null) { try { conn.rollback(); } catch (SQLException ignored) {} } throw e; } finally { if (conn ! null) { try { conn.close(); } catch (SQLException ignored) {} } }4.4 現(xiàn)象JTable數(shù)據(jù)更新后界面不刷新或新行顯示在錯誤位置原因DefaultTableModel的addRow()方法必須在 EDT 中調(diào)用且不能在SwingWorker的doInBackground()里調(diào)用。更致命的是直接修改model.getDataVector()返回的Vector會破壞TableModel的事件通知機制。解決所有addRow()、removeRow()、setValueAt()必須在SwingWorker.done()或SwingUtilities.invokeLater()中執(zhí)行永遠不要碰getDataVector()// ? 正確通過 model 方法操作 DefaultTableModel model (DefaultTableModel) table.getModel(); model.setRowCount(0); // 清空 for (Topic t : topics) { model.addRow(new Object[]{ t.getId(), t.getTitle(), t.getTeacher(), t.getMajor(), t.getStatus() }); } // ? 錯誤直接改 Vector導(dǎo)致表格不刷新 Vector data model.getDataVector(); data.add(new Object[]{...}); // 不觸發(fā) fireTableRowsInserted()5. 真實可跑的最小可行系統(tǒng)3 個文件搞定登錄 選題 審核閉環(huán)一個畢業(yè)設(shè)計系統(tǒng)不需要 50 個類、2000 行代碼。我給學(xué)生定的硬性標(biāo)準是核心功能登錄、查課題、選課題、審核能在 3 個 Java 文件里跑通且每個文件不超過 300 行。這逼著人聚焦本質(zhì)——數(shù)據(jù)庫設(shè)計、SQL 正確性、事件流完整性。下面給出經(jīng)過 2024 屆學(xué)生實測的精簡骨架復(fù)制粘貼即可編譯運行JDK 11MySQL 8.0。5.1 數(shù)據(jù)庫建表 SQL只保留最必要字段拒絕過度設(shè)計-- 創(chuàng)建數(shù)據(jù)庫 CREATE DATABASE IF NOT EXISTS thesis_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; USE thesis_db; -- 課題表 CREATE TABLE topic ( id INT PRIMARY KEY AUTO_INCREMENT, title VARCHAR(200) NOT NULL, teacher VARCHAR(50) NOT NULL, major VARCHAR(50) NOT NULL, description TEXT, status ENUM(待選, 已選, 已審核) DEFAULT 待選, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); -- 學(xué)生表簡化版僅存學(xué)號、姓名、專業(yè) CREATE TABLE student ( id INT PRIMARY KEY AUTO_INCREMENT, student_id VARCHAR(20) UNIQUE NOT NULL, name VARCHAR(50) NOT NULL, major VARCHAR(50) NOT NULL ); -- 選題記錄表關(guān)聯(lián)學(xué)生與課題 CREATE TABLE selection ( id INT PRIMARY KEY AUTO_INCREMENT, student_id VARCHAR(20) NOT NULL, topic_id INT NOT NULL, status ENUM(待審核, 已通過, 已駁回) DEFAULT 待審核, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY (student_id) REFERENCES student(student_id), FOREIGN KEY (topic_id) REFERENCES topic(id) );為什么不用外鍵級聯(lián)畢業(yè)設(shè)計答辯時老師可能用 Navicat 手動刪數(shù)據(jù)測試邊界情況。ON DELETE CASCADE會導(dǎo)致刪除課題時連帶刪掉所有選題記錄掩蓋邏輯缺陷。顯式DELETE FROM selection WHERE topic_id ?才體現(xiàn)事務(wù)意識。5.2 登錄與角色路由用靜態(tài) Map 模擬用戶體系拒絕 Spring Security 復(fù)雜度// LoginDialog.java public class LoginDialog extends JDialog { private JTextField usernameField; private JPasswordField passwordField; private String role; // teacher, student, admin public LoginDialog(Frame owner) { super(owner, 用戶登錄, true); setLayout(new GridLayout(3, 2, 10, 10)); add(new JLabel(用戶名)); usernameField new JTextField(); add(usernameField); add(new JLabel(密碼)); passwordField new JPasswordField(); add(passwordField); JButton loginBtn new JButton(登錄); loginBtn.addActionListener(e - doLogin()); add(loginBtn); pack(); setLocationRelativeTo(owner); } private void doLogin() { String username usernameField.getText().trim(); String password new String(passwordField.getPassword()); // 簡化認證硬編碼模擬實際應(yīng)查數(shù)據(jù)庫 if (admin.equals(username) 123.equals(password)) { role admin; } else if (username.startsWith(stu_) 123.equals(password)) { role student; } else if (username.startsWith(tea_) 123.equals(password)) { role teacher; } else { JOptionPane.showMessageDialog(this, 用戶名或密碼錯誤); return; } dispose(); // 關(guān)閉登錄框 new MainFrame(role); // 傳入角色初始化對應(yīng) Tab } }5.3 主程序入口30 行啟動代碼把 Swing、JDBC、MySQL 串成一條線// Main.java public class Main { public static void main(String[] args) { // 設(shè)置 Swing 全局字體解決 Win10 下中文模糊 try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeel()); Font font new Font(Microsoft YaHei, Font.PLAIN, 12); UIManager.put(Label.font, font); UIManager.put(Button.font, font); UIManager.put(TextField.font, font); } catch (Exception e) { e.printStackTrace(); } // 啟動登錄對話框 SwingUtilities.invokeLater(() - { LoginDialog dialog new LoginDialog(null); dialog.setVisible(true); }); // 驗證數(shù)據(jù)庫連接啟動時執(zhí)行一次 try (Connection conn DatabaseConnection.getConnection()) { System.out.println(? 數(shù)據(jù)庫連接成功 conn.getMetaData().getURL()); } catch (SQLException e) { JOptionPane.showMessageDialog(null, 數(shù)據(jù)庫連接失敗請檢查 MySQL 是否啟動、賬號密碼是否正確\n e.getMessage(), 連接錯誤, JOptionPane.ERROR_MESSAGE); System.exit(1); } } }關(guān)鍵技巧SwingUtilities.invokeLater()是 Swing 程序的黃金入口確保所有 GUI 創(chuàng)建都在 EDT 中UIManager.setLookAndFeel()用系統(tǒng)原生風(fēng)格避免 Metal 風(fēng)格在 Win10 上顯示異常啟動時主動getConnection()并捕獲異常比運行時彈窗更早暴露環(huán)境問題。6. 答辯加分項3 個讓老師眼前一亮的實戰(zhàn)細節(jié)不是炫技而是真懂答辯不是代碼朗誦會老師想看到的是你對技術(shù)選型的理解深度、對邊界條件的預(yù)判能力、對真實問題的解決痕跡。以下三個細節(jié)每個都能在 5 分鐘內(nèi)講清楚原理、展示代碼、復(fù)現(xiàn)效果且全部來自真實畢設(shè)翻車現(xiàn)場——它們不增加功能但能讓老師篤定“這學(xué)生真的跑通了不是抄的”。6.1 細節(jié)一用JTable的TableCellRenderer實現(xiàn)狀態(tài)色塊比文字更直觀“狀態(tài)”字段只顯示“待選”“已選”太單薄。用TableCellRenderer為不同狀態(tài)渲染不同背景色既提升可用性又證明你理解了 Swing 的渲染機制。// StatusCellRenderer.java public class StatusCellRenderer extends DefaultTableCellRenderer { Override public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { Component c super.getTableCellRendererComponent( table, value, isSelected, hasFocus, row, column); String status (String) value; switch (status) { case 待選: c.setBackground(Color.LIGHT_GRAY); break; case 已選: c.setBackground(new Color(173, 216, 230)); // 淺藍 break; case 已審核: c.setBackground(new Color(144, 238, 144)); // 淺綠 break; default: c.setBackground(Color.WHITE); } return c; } } // 在創(chuàng)建 JTable 后設(shè)置 table.getColumnModel().getColumn(4).setCellRenderer(new StatusCellRenderer());為什么值得講這不是 CSS而是 Java 代碼對每個單元格的逐個繪制控制。老師會意識到你不僅會用JTable還知道它背后是TableCellRenderer接口且能定制實現(xiàn)——這比“用過 Spring Boot”更有說服力。6.2 細節(jié)二用JOptionPane的showConfirmDialog實現(xiàn)二次確認防誤操作“撤回選題”按鈕一點就刪太危險。加一層showConfirmDialog返回JOptionPane.YES_OPTION才執(zhí)行 JDBC 刪除這是最樸素的用戶保護意識。JButton withdrawBtn new JButton(撤回); withdrawBtn.addActionListener(e - { int result JOptionPane.showConfirmDialog( this, 確定要撤回該課題嗎此操作不可撤銷, 確認撤回, JOptionPane.YES_NO_OPTION, JOptionPane.WARNING_MESSAGE ); if (result JOptionPane.YES_OPTION) { // 執(zhí)行 JDBC 刪除 selection 記錄 try { SelectionDao.deleteByStudentAndTopic( currentStudentId, selectedTopicId ); JOptionPane.showMessageDialog(this, 撤回成功); refreshTable(); // 重新加載 } catch (SQLException ex) { JOptionPane.showMessageDialog(this, 撤回失敗 ex.getMessage()); } } });答辯話術(shù)“老師這里我加了二次確認因為選題是關(guān)鍵業(yè)務(wù)操作。如果直接刪學(xué)生手滑點錯就無法恢復(fù)。用JOptionPane是最輕量的方案不需要引入額外框架也符合桌面應(yīng)用的交互習(xí)慣。”6.3 細節(jié)三導(dǎo)出選題統(tǒng)計為 Excel用 Apache POI 而不是截圖答辯時老師常問“能導(dǎo)出數(shù)據(jù)嗎”截圖是下策用 Apache POI 生成.xlsx文件才是正解。只需 20 行代碼就能把JTable數(shù)據(jù)轉(zhuǎn)成 Excel且兼容 Office 和 WPS。// 導(dǎo)出按鈕事件 JButton exportBtn new JButton(導(dǎo)出統(tǒng)計); exportBtn.addActionListener(e - { try (XSSFWorkbook workbook new XSSFWorkbook(); FileOutputStream fileOut new FileOutputStream(選題統(tǒng)計.xlsx)) { XSSFSheet sheet workbook.createSheet(選題匯總); String[] headers {課題ID, 課題名稱, 指導(dǎo)教師, 專業(yè)方向, 選擇人數(shù)}; Row headerRow sheet.createRow(0); for (int i 0; i headers.length; i) { headerRow.createCell(i).setCellValue(headers[i]); } // 假設(shè)已有統(tǒng)計結(jié)果 ListStatItem ListStatItem stats ReportService.getTopicStats(); for (int i 0; i stats.size(); i) { Row row sheet.createRow(i 1); row.createCell(0).setCellValue(stats.get(i).getId()); row.createCell(1).setCellValue(stats.get(i).getTitle()); row.createCell(2).setCellValue(stats.get(i).getTeacher()); row.createCell(3).setCellValue(stats.get(i).getMajor()); row.createCell(4).setCellValue(stats.get(i).getCount()); } workbook.write(fileOut); JOptionPane.showMessageDialog(this, 導(dǎo)出完成選題統(tǒng)計.xlsx); } catch (IOException | SQLException ex) { JOptionPane.showMessageDialog(this, 導(dǎo)出失敗 ex.getMessage()); } });依賴添加pom.xmldependency groupIdorg.apache.poi/groupId artifactIdpoi-ooxml/artifactId version5.2.4/version /dependency我?guī)М呍O(shè)十年見過太多學(xué)生花兩周調(diào)通 Spring Boot Vue 前后端分離結(jié)果答辯時 Tomcat 突然報port 8080 already in use當(dāng)場崩潰。而用 Swing JDBC MySQL 的學(xué)生往往在答辯前夜還在優(yōu)化GridBagLayout的insets參數(shù)第二天演示時雙擊 jar 包界面秒開SQL 日志清清楚楚老師問哪句 SQL 怎么寫的他打開TopicDao.java指著prepareStatement就能講。技術(shù)沒有高低只有是否服務(wù)于目標(biāo)——畢業(yè)設(shè)計的目標(biāo)從來不是造輪子而是證明你有能力把需求、代碼、數(shù)據(jù)、界面嚴絲合縫地擰成一股繩。希望幫到你。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
精品人妻一区二区视频| 婷婷视频网| 五月婷婷综合网| 亚洲熟女乱综合一区二区三区| 熟妇色99| 婷婷丁香成人| 欧美黑人91| 四虎午夜影院| 久久婷婷色综合一区二区三区| 国产九九九九九九| 在线国产福利网址导航| 性色国产东北露脸精品视频| 日本精品一级二级三级| 热久久这里只有精品| 精品久久艹| 中文字幕AV乱伦| 嗯嗯嗯不要不要免费视频| 欧美色九九| a天堂视频| 欧美一区二区传媒| 一起草在线视频| 99热久| 超碰久久精品| 99re国产精品视频| 97在线观看免费视频l| 一个人免费视频观看在线WWW | 嗯啊啊啊轻点视频 | 中文字幕久久精视频久久大全| 性91| 日韩欧美女优电影| 97超碰中文在线| 色蜜AV| 国产精品乱码久久| 乱日视频| 伊人操你| 96国产污污污丝袜| 日韩人成网站在线播放| 欧美高清在线| 五月丁香激情综合网| 婷婷10月天青娱乐| 柠檬AV导航| 欧美亚洲清纯| 欧美综合站| 国产精品久久久久久久久久久久久久吹| 无套内射性感少妇视频| 精人妻一区二区三区| 97久久视频| 夫妻天天操岛国视频| 天天影视综合网欧美精品| 国产色产精品在线观看| 久热久| 免费作爱一级视频| 亚洲天堂一二| 五月天激情小说| 欧美性爱第1 页| 91欧美偷拍| 伊人丁香五月婷婷| 日韩射图| 欧亚乱色熟一区二区三四区| 天天搞在线综合网| 色九九久九九| 欧美色偷拍 | 香蕉热人人精品| 精品人妻伦一区二区三区久久| 牛牛aV| 日夜精品| 97超碰资源网| 成人午夜无码视频| 欧美日本中字另类在线| 99re6在线视频播放免费精品| 久久99国产综合精品女同| 欧美gv在线观看| 日韩精品一区,二区 九九...老司机| 色婷婷网| 国产高清精品一区二区三区毛片| 超碰色图| 热的中文 热的有码 热的国产| 日本国产成人亚洲精品无码| 偷拍精品一区二区三区| 久久天堂网| 人人操人人狠狠操| 手机在线看片免费人成视频| 中出欧美| 91n免费处女| 色月天AV导航| 久久久久无码| jiujiujiujingpin| 夂久色| 欧美日韩大黄片| 激情四射婷婷六月天| 国产成人无码久久精品| 男女一进一出视频久久| 90后后入| 天天日天天操VV| 91操人| 青娱乐老司机视频| 97干在线视频| 日日AAvv| 麻豆一区二区三区精品| 97网址www| 在线观看日韩av不卡| 日本一区二区不卡| 92大香蕉| 成人片视频| 亚洲日本韩国极品一区二区| 久久免费精品视频免一| 99re免费视频精品全部| 91啪啪| 日日夜夜草草草| 五月天激情小说网| 国产在线视视频有精品| 无码操逼网| 麻豆国产精品午夜视频| 9丨久久九九九| 嫩草91| 亚州色站 日韩电影| 成人情色一区二区| 婷婷色播婷婷| 久久这里只精品99re66图| 情趣丝袜无码操逼视频| 91无遮挡| 亚洲久久久久| 日本阿v天堂在线观看| 国产夫妻性生活视频| 成人五月天色网| 97 亚洲 日韩 欧美 在线| 九月婷婷久久| 一级免费啪啪片| 天天做日日爱夜夜爽| 国产亚洲精品精AV.| 久久久九九九| 高清国产精品福利网站| 亚洲中文字幕在现观看| 成人线上超碰| 日韩性爱啪啪视频| 国产丝袜欧美在线视频| 色综合国产在线观看| 久久久久久久久一区二区三区| 日本精品加勒比海一区| 91色宗合| 玖玖久久久| 色约约一区=区三区| 青青草原av| 中文字幕1区2区| 国产精品第一页国产大屁股视频免费区i| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 9久热| 熟女被操视频网址| 26uuu欧美| 婷婷五月天av| 国产精品青青草| 久久人人看| 天天干天天插| 中文一区二区婷婷视频| 肥臀熟女福利视频一区二区| 麻豆影音天美视频| 丝袜内射| 欧美有码亚洲中文字幕一区二区三区四区| 欧美曰韩国产精品| 色哟哟精品1精品2| 清纯唯美亚洲综合| 樱花蜜乳av| 日va操| 色色色色网站| 一区二区激情国产熟女| 二对二中文字幕。| 福利天天都操| 欧美片第一页| 免费在线黄片视频| 婷婷五月在线视频| 欧美天堂日韩三级国产传媒| 青草伊人久久| 一级做受视频免费是看美女| 免费看A片毛毛片在线播| 国产小u女在线观看| 亚洲影视综合网| 亚洲国产一级中文综合久久天堂在线免费观看| 日本新免费二区三区| 91网站在线播放| 欧美日本不卡在线| AV和黑人在线播放| 婷婷综合五月| 久久爱超碰网| 国产丝袜啪啪| 亚洲精品一区二区精品| 亚洲五月婷| 高清不卡视频| 欧美色图片欧美色图| 91少妇人妻| 久久透逼视频| 色色五月婷婷| 97欧美色资源| 91人精品妻入口| 日本123区操B视频| 综合网,亚洲,欧美| 97色欧洲| 97资源视频| 大香蕉伊人色偷偷在线| 中文一区二区| AV麻豆免费一区| 91精品伊人久久久大香线蕉91| 精品无码一区二区| 欧美96在线|欧| 国产精品一区午夜福利| 国产亚洲99久久精品| 97色色,97综合| 久久久久亚洲| 婷婷五月天小说| 1.igao73.com 加入收藏 免费专区 国产精品 中文字幕 日韩精品 欧美精品 精彩 | 六月色色| 中文字幕av片| 日韩性爱1级片视频| 丁香五月婷婷五月| 天欧美在线| 综合伊人激情| 欧美精品四区| 大香蕉中文在线| aaaa少妇高潮大片| 在线观看午夜婷婷久久久久清性观看| 男女做爰猛烈动高潮A片免费应用 少妇厨房愉情理伦片bd在线观看 不卡中文字幕aⅴ在线 | 黄色大片免费在线| 91在线视频免费中出| 四虎免费在线播放| 国产激情av女片自拍| 亚洲欧美setu| 欧洲性爱无码区| 婷婷五月天综合网| 亚洲午夜精品久久久中文影院| 欧美1区二区三区公司 | www. 男人天堂成人在线| 青娱乐淫乱1314| 9精品久久久久| 乱伦av麻豆| 偷拍在线观看视频| 国产精品亚洲一级av第二区| 精品人妻一区二区免费蜜桃| 91欧洲国产成人久久精品网站| 久久乐| 欧美色图另类图片| 欧亚在线视频| 一二三四区操操Av| 欧美后进式| 青青草大香蕉视频| 噜噜在线| 91丨国产丨白浆秘 洗澡动漫| 日韩久久三区| 东北熟女91| 欧州色图区| 天天92av| 亚洲色图加勒比| 国产欧美在线观看免费观看| 区一二区日韩亚洲乱码av电影| 国内外内射高清视频| 日韩精品.久久精品.AV女优.天美传媒| 久久久久国色αv免费观看| 久久这里只精品99re66图| 日本黄色天堂| 97干在线| 97爱| 亚洲天天影视色综合| 十八禁的黄污污免费网站| 老女人老91妇女老热女| 无码聚合| 日本不卡一二区| 涩五月婷婷| 久久久96| 国产丰满少妇久久久精品影院| 九月丁香婷婷色| 1024午夜激情男人的天堂| 高跟丝袜AV专区国产| 久男人久久| 熟女人妻一区二区三区| 97视频在线观看免费高清| 久久99国产综合精品女同| 人人模人人看| 男人的天堂久久狠| 亚洲欧美精品91| 最新亚洲黄色免费电影 | 久久丁香久草综合网| 91中文精品日韩欧美在线| 日韩无码a片| 日本男人插女人的逼黄色| 国模艳艳啪啪一区| 亚州综合色| 天天做天天爱天天爽AV| 强奸乱伦资源| 九热中文字幕| 好看的久久不射无码影视影院| 国产福利av精彩对白| 狠日欧美| 香蕉色网| 日韩三级一区| 黑人精品XXX一区一二区| 91N综合网在线| 亚洲激情综合| 人人操人人搞人人草| 亚洲校园激情| 麻豆性爱视频在线播放| 韩国一级做A片免费的| 91伊人| 国产第二页| 天天综合~91| 91麻豆天美传媒HD| 美中日韩无码| 久久伊人最新网址视频| 少妇熟女视频一区二区三区| 欧美性区| 99热成人| 日韩成人性爱电影在线播放| 乱伦熟女专区| 精品人妻一区二区三区视频在线| 老女人老91妇女老热女| 欧美制服网站美腿丝袜| 中文字幕亚韩| 天堂69亚洲精品中文字| 久久AV无码AV| 久久香蕉国产线看观看亚洲女人 | 风月影院男女十八禁| 亚洲第一页色网| 综合91网| 日本999精品视频| 天天做天天爱| 国产亚洲精品玖玖玖在线观看| 亚洲影院成人| 天天肏视频| 亚洲第一男人天堂| 九九九九九精品十六| 久久久久久夜夜夜夜夜| 色5月婷婷| 人人操人人摸人人看人人干| 秋霞午夜成人福利片片| 日韩综合色图| 97亚洲精品| 亚洲精品97p| 久久久久久久久久久久久久久久9| 97WW精品| 亚洲欧美大| 一级免费啪啪片| 日韩精品免费高清视频在线| 91露脸熟女专区| 少妇久久久久久| 男女国产精品| 青青青在线高清视频在线一二三四区 | 美女让帅哥通她小鸡鸡| 亚洲AV不卡在线观看尤物| 97香焦色区| 在线只有精品| 视频二区美腿丝袜制服人妻欧美| 天天干天天插| 色播五月丁香| 久久久久久午夜男人的天堂| 五月激情影院| 亚洲综合小说另类图欧美视频激情小说色五月天| AAAAAAAAA黄片| 在线国产福利网址导航| av网站在线观看了| 亚洲精品xxx| 操操逼操操逼操操逼逼| 乱伦av麻豆| 丰满人妻无码一区二区三区| 国产精品无码久久久久2025| 久久黄色视频一区二区三区| 亚洲成人性| 国产精品日韩在线一区| 操逼天美3区| 思思热久久成人| 亚洲一区二区三区不卡国产欧美| 国产高清免费不卡av| 欧美亚洲色图另类国产| 亚洲欧综合另类无码一区| 中日韩久久久| 另类图片五月天| 日韩人妻精品久久久久| 干B视频伊人网| 欧美日韩黄色片一区二区三区四区人与兽做爱 | 亚洲美女自拍偷拍视频| 精品性爱一区二区| 香蕉久久国产AV一区二区| 屌色在线97视频| 欧美黄页在线| 佐山爱中文字幕| 级品肉射| 97爱啪| 日本道日本道中文字幕日本道最新日本道在线观看 | 丁香五月影院| 桃色六月天| 伊人991| 加勒比少妇AV婷婷六月天超碰超碰| 欧美日韩一干二干| 色路综合| 综合av社区| 丝袜熟女一区二区三区| 蜜桃久久综合视频| 日韩 成人 有码| 伊人四虎综合| 毛片久久| 亚洲色 国产 欧美 日韩| 久色网| 欧美日日夜夜| 久热99999| 久久69| 日韩熟女乱伦中出| 老司机射| 厕所偷拍在线| 日本国产欧美高清在线| 婷婷五月天激情网| 久久m| 美女9118禁| 久久精品人人做人人看| 欧美国产日韩高清在线| 三级网站超变态精品| 少妇高潮九九九九九九九| 日本一区二区中文字幕久久| 午夜福利免费精品视频| 日日夜夜国产综合| 久久久日本电影| 日婷婷| 国产成人自拍视频视频| av天堂影视中文在字幕在线中文| 亚洲综合贴图91 | 中文久久久| 双插性欧美一二三区| 日韩精品区二区三区不卡| 1二区9| 色妇综合网| 啪啪免费| 人妻大相焦在线| 欧美日韩在线小说| 国产精品午夜高潮呻吟久久av| 亚洲综合小视频小说在线观看| 九九九九九九综合| 国产精品久久99日日| 97精品国产97久久久久久户外免费| 在线黄色污污网站| 久久专区| 亚洲色图大香| 蜜臀Av一区二区三区| 变态乱伦伪娘灌肠一区二区| 日韩av熟女一区二区三区成人| 麻豆天天躁天天揉揉AV| 一区二区视频在线播放| 欧美少妇性乱| 久久这里是精品| 精品久久久九九九孕妇| 婷婷色综合欧美日韩| 中文无码一二三区| 美女啊啊啊啊啊啊| 亚洲综合激情五月久久| 色网亚洲人| 亚洲高清国产理伦片| 99www.bibizy香蕉资源国产一区二区三区高清 | 久久久精品91八戒| 综合日韩激情另类图片| 久久久新亚洲AV| 深爱激情五月天| 视频在线97| a天堂视频| 嗯嗯啊好大| 8x福利精品第一福利视频导航| 91超碰人人| 超碰美国| 欧美在线干| 日本二区不卡| 91久久久久久| 欧美丝袜中文字幕07在线| 国产亚洲综合欧美一区| 欧洲综合色| 五月天开心网| 国产日韩怡红院| 色色99| 精品一区二区三区麻豆| 成人资源中文字幕在线观看天天 | 久久婷婷一区| 99色视频| 欧洲久久一二线| 熟女丰满人妻一区| 绯色一区二区三区不卡少妇| 999久久久九| 久久精品国产欧美日韩亚洲欧美日韩中文久久国产一区 | 综合 欧美 亚洲 日本| 丁香婷婷激情五月天无毒不卡| 91看黄片| 精品久久久不卡一区二区| 中文字幕一区二区三区高清| 欧美日韩另类字幕中文| 国产又色又爽又舒服的三级视频| 少妇大屁屁| 91美女中出| 日本人妻最新在线中| 色女99一级片在线观看| 久久这里是精品| 亚洲精品色| 中文人妻av高清一区| 密臀在线免费观看| 啪啪免费| 亚洲清纯综合| 不卡超碰护士AV在线免费播放| 亚洲 中文字幕 精品| 国产精品亚洲日韩骚欢乐谷最新地址发布页huanieguty性屋娱乐妖精视频 | 亚洲欧洲成人在线电影| 色老汉色| 日韩AC| 欧美同性恋 的搜索结果 - 91n| 成人精品在线| 国产亚洲精品一区二区三区| 国产美女裸体秘 永久无遮挡| 日本不卡高清免v欧美日韩在线观看| 五十路六十路七十路熟婆| 久久久成人免费av电影| 丰满欧美少妇| 欧美日韩精品一区二区三区高清| 东京热,男人的天堂| 老女人日韩美91| 做爱A级亚欧| 美女黄页网站| 密臀在线视频| 黄色网址在线免费观看| 国产青青综合伊人| 乱伦AVxx| 96久久久久| 欧美色图片91| 五月天婷精品激情| 丁香九月婷婷| 日日干夜夜欢| 亚洲欧洲视频小说在线观看| 久久riav中文精品| 一本色道久久天天射天天干| 亚洲一区二区性爱电影| 久久精品国产精品一区| 久九9精品| 大香蕉AV丝袜| 精品性爱无码在线播放| 国产亚洲日韩欧| 在线播放欧洲免费av| 欧美熟女激情| 亚洲无线码一区国产欧美国| 国产9 9在线 | 亚洲| 国产精品另类一区大香蕉| 观看视频图片一区二区三区| 女人被添高潮免费视频| 人人玩人人添人人澡免费| 99热在线只有精品| 久久人妻四季| 99热精品在线观看| 可以免费观看的日韩av毛片| WWW.操逼.COM| 好看的久久不射无码影视影院| Julia在线播放亚洲久久| 色欲av一区二区三区蜜芽| 综合色区偷拍| 久久熟女精品不卡一区| 亚洲欧美精品久| 日本青青草在线| 久久大香蕉| 无码日韩人妻av一| 色综合加勒比| 这里都是精品| 人妻 欧美亚洲| 久久久111| 亚洲精品天天影视综合网 | 欧美黑人与女人91~| 激情婷婷五月天| 国产精品一区二区 尿失禁| 色翁荡息又大又硬又粗又爽| 欧美精品三级黄片| 97超碰欧美手机在线| 国产第二页| 欧洲亚洲人妻无码中字久久三区四区| 人人手机欧洲亚洲国产人妻| 欧洲天天在线| 欧美日韩理论一区| 99re69综合| 欧美亚洲综合色| 色色操| 操一区| av大香蕉| 国产欧美伊人| 2001天天操| 人人喜人人妻| 操操操操网黑人| 屌妞视频久久久久久久| 口爆综合网| 国语人妻精彩刺激| 亚洲最大的黄色电影网站。| 日日干日日操五月天伦理视频| 中文字幕一区二区三区人妻少妇在线| 超碰超碰欧美| 日韩激情视频| 亚洲伊人久久精品影院| 女人18精品一区二区三区| 超碰一区二区| 欧美亚洲首页| 亚洲欧美综合| 欧美,日韩综合久久| 做爱A级亚欧| 国产精品亚洲一区二区三区四区| 色九区| 爆乳免费黄网站| 久久亚洲人妻| 蜜桃网熟妇| 97香蕉网| 亚洲系列第一页| 超碰碰碰碰| 久久e6只有精品| 超碰无码五月97| 粉嫩久久久久| 亚洲黑人在线| 日逼视频日本| 日韩AV片| 97精品97久久| 少妇熟女视频一二三区| 91香蕉国产尤物视频| 欧美18 在线观看| 被体育老师抱着c到高潮| 人妻啊啊人妻啊| 97操在线| 色噜噜狠狠色综无码久久合欧美| 操逼视频色| 99精品在线| 亚洲自拍一区夜夜操| 亚洲图片偷拍欧美| 欧美大香蕉久| 天天日天天爽| 日日摸日日碰| 蜜臀一区二区三区在线 | 国产AV天美| 成人区人妻精品一| 欧美日韩国产三级黄色| 大香蕉碰碰| 国产自偷| 太久视频| 国产一区二区三区中文字幕| 啊啊啊不要嗯嗯在线观看| 国产精品久久| 国产精品无码久久久久2028| 熟妇人妻一区二区| 91熟女网| 国产女人成人精品视频| 中文字幕精品久久久久人妻红杏ⅰ| 九九九九AV| 国产精品熟女丝袜一区二区| 91肏屄网| 天天综合~91| 国产福利小视频高清在线观看| 91丝袜美腿网站| 我想要 啊 啊 啊| 精品国产一级久久| 色香综合天天影视综合 | 操屄不卡视频| 中文字幕人乱码中文字的预防方法 | 香蕉热人人精品| 色一射色一射| 日日夜夜免费| 五月天激情小说| 欧美碰碰综合色| AV综合中文字幕干| 女上位精品在线| 乱伦AVxx| 精品人妻视频一区二区在线播放| 国内亚洲高清无码| 伊人久久亚洲中文字幕| 婷婷爽人人婷婷爽视频| 九九热精品| 欧美日韩另类在线| 午夜精品久久久99| 日天天九九天堂666| 成人精品在线| 国产路线专区| 天天日少妇逼AV| 99国产精品| 国产乱婷婷精品二区三区| 欲色综合| 夜夜爽77777| 69麻豆天美| 久久9久9久99久9久9| 啪啪性爱免费视频| 欧美日本天堂| 日本精品高清一二区一本到| 欧美啪啪啪91| 久久精彩视频| 国产辣妈在线视频福利| 日本大香蕉| 操逼操逼逼操操逼91| 亚洲亚洲亚洲天堂天堂 | 丁香六月婷婷综合| 九九碰九九爱97超| 欧美中文字幕一区| 国产人妖视频一区在线观看| 日本熟妇自慰性高潮一区二区三区| 亚洲av综合色区图片亚洲| 久久久精品久久| 超碰精品在线| 亚洲日韩视频二区| 骚妻少妇精品性色无码四色A V| 欧美婷婷| 岛国免费视频在线| 亚洲影视第一页| 一本一道人妻久久一区二区三区| 男女做爰猛烈动高潮A片免费应用| 爱爱久久| 五月天婷婷成人网| 再深点灬舒服灬太大了添视频| 在线小说视频一区| 91女网站| 一区二区三区激情在线观看| 国产白丝av| 91挑色欧美| 亚洲激情综合| 中国少妇XXXX做受| 亚洲风情在线观看| 男人精品天堂一区| 国产久久一区二区午夜| 日韩乱伦影音先锋| 日本道不卡| 久久久九精品| 色婷婷在线视频精品导航| se01国产在线视频| 神马久久久久| 四季av一区二区凹凸精品小说| 久久色激情一区二区三区| 午夜寂寞欧美| 亚洲在线网站| 欧美91变态| 亚洲区 欧美区| 久久亚洲日韩国产欧| 乱子伦一区二区三区国产精品| 打av高清| 大香蕉十区| 欧洲中文字幕| 嗯嗯啊中文字幕| 人人色人人操在线| 亚州操逼图| 国产AV色黄看到爽| 成人小说另类在线| 久久久久久九| 国产sv美女内射| 亚洲小说视频| 91另类| 中文字幕蜜乳av| 91在线免费精品视频| 欧美色图综合| 强奸抽插av| 熟女这里只有精品6| heyZO天然素人无码AⅤ专区| 蜜乳AV.COM| 亚洲精品国产专区在线观看| 不卡一区二区日本视频 | 九九九九97| 在线观看啊啊啊啊啊| 欧美成人国产精品| 2003天天干夜夜操| 美女黄色91| 亚洲在线a| 蜜臀99久久精品久久久懂爱| 久久久久久久强迫| 国产成人自拍视频视频| 大香蕉久| 91操人| 婷婷色一区| 欧美日韩妖精91com| 欧美激情在线观看视频| 91内射| 欧美1区二区三区公司| 黄片免费久久久久久久| 91粉嫩萝控精品福利网站_精品影音先锋国 | 久草婷婷| 亚洲人妻久久久| 天天拍夜夜| 国内毛片热久久思思热| 人摸人人操人| 999在线电影香蕉| 蜜桃视频一区二区三区在线观看| 亚洲凸凹超碰成人| 午夜九九九九九九| 婷婷在线视频在线观看| 777奇米影视777四色| 国产剧情一区在线观看| 美欧老女人97| 大鸡巴久久| 370p日韩欧美亚洲精品| 欧美很很操视频| 91美腿丝袜在线观看| 丝袜色综合| 免费AV中文网在线观看| 狠狠色噜噜狠狠狠狠狠色综合久久| 首页亚洲国产高跟丝袜诱惑视频| 99色婷婷中文字幕乱色| 少妇三p| 亚洲囯产精品女人久久久| 天天干天天干天天干| 精品人妻一区二区三区视频| 日本506070| 日韩在线观看字幕精品| 久悠悠av| 97视频在线免费| yiqicaoav| 日韩免费性爱视频在线观看| 欧美综合色站| 97在线免费视频观看| 激情网色| 日韩一级二级在线| 少妇三p| 日韩成人性爱AV| 99国产精品在线观看| 亚州欧美在线| 中文字幕123| 欧美日韩黄色片一区二区三区四区人与兽做爱 | 可以看的av| 天天干1区2区在线| 国产在线视频二区| 天天流夜夜操| 东京男人天堂| 高跟丝袜AV专区国产| 97se综合网| 91人妻少妇| 久久麻豆一区二区| 久久久久国色αv免费观看| 亚洲无码一二三区| 成人十八禁日韩欧美一二三| 人人操人人干xxx| 久久精品人体| 亚州综合在线| 嗯嗯嗯好爽| suv精产一二三区| 亚洲成人免费在线| 性欧美| 亚洲免费人妻在| 美女诱惑在线一区| 激情五月天插| 日韩啪啪啪视频| 欧 美 自 拍 偷 拍| 草久久久| 久久五月天婷婷丁香中文字幕| 色婷婷综合久久中文字幕雪峰 | 久久精品72| 色视频蜜乳| 麻豆AV短剧| 日韩在线性爱免费视频| 久久人爽| 国产精品一区二区 尿失禁| 偷拍综合亚洲| 国产 v乱码一区二| 欧美成人贴图| 天天日日夜夜| 五月丁香激情四射| 大香蕉伊人网WWWn0n| 2025年A片视频精品| 极品少妇99| 天天色天天干天天射| 九九九九一级| 国产97色在线| 91伊人| 亚洲一区二区三区麻豆传媒| 天天操人人操狠狠插| 亚洲综合一| 精品人人插人人操| 国产精品播放| 人妻一区久久二区三区色播| 国产精品久久久久久无码红治院| 91国产伊人大香蕉| 日韩三级视频一区二区三区| 中文字幕精品探花视频| 怡红院成人av| · —级AA伦aa坐爱午夜极速ⅴA一区天天噪天天噪天天噪 | 26uuu最新| 爱爱久久| 天天做天天爽| 亚洲av综合伊人久久| 涩涩久久精品| 久热免费视频| 大香蕉乱级| 欧美日日人人天天| 亚洲 欧美 中文 日韩超碰| 欧美日韩电影成人在线| 久久精品国产97欧美精品亚洲 | 高清无码久操视频| 狠狠爱夜夜干| 超碰超碰欧美| 操逼视频亚洲| 亚洲成人贴图| 天天综合网AV91| 婷婷六月色| 91精品久久久久五月天精品| 日韩精品人妻中文字幕不卡乱码| 97人肏| 强奸乱伦资源| 操国产逼| 综合亚洲网| 欧美aⅴ99久久黑人专区| 九九人人操| 久久精品日韩| 大肥女高潮bbwbbwhd视频| 60秒免费视频| 青青草视频在线观看一区二区| 欧美成人一区二区三区在线播放| 翔田千里A片一区二区| 精品人妻一区二区三区蜜桃视频| 九九英色视频| 亚洲男人天堂Av| 99久久久久久久久| A级片日韩欧美国产欧美视频精选观看 | 91黑丝在线| 久久激情视频| 国产妇女精品视频青青草| 91蜜臀在线久久久久| 成人黑料社久久| 岛国激情视频软件| 欧美夜夜草视频| 午夜精品久久久久久久久久久久久 | 人妻喷水| 久久精品人妻一区二区| 亚洲av总站| 久久五月份| 激情五月天网| 影音先锋国产精品| 欧美日韩香蕉| 2018天天干在线视频| 呦呦一区| 屁股久久久久久| 欧美亚洲首页| 亚洲欧美激情小说| 蜜桃精品视频一区二区三区| 极品久久久久久久久久久久久久| 啊啊啊好湿久久| 久久免费中文字幕在线观看| 亚洲精品99| 色综合久久久久| 欧美成人性爱视频大全| 成年人一级黄色毛片大全在线观看| 免费福利视频中文字幕| 手机午夜电影神马久久| 免费A片三p视频| 26uuu久久| 91免费看一区二区三区| 日韩大香蕉| 屁股久久久久久| 91久久| 日本一级特级毛片视频| 亚洲色人| 国产婷婷综合在线观看| 国产精品白领在线观看 | 男人的天堂一区三区| 丰满人妻一区二区三区大胸懂色 | 日本999精品| 香蕉免费一区二区三区不读| 欧美日韩人妻婷婷一区| 欧美第一页| 丝袜加勒比| 超碰九区| 成人av毛片在线观看| 俄罗斯一区二区视频在线观看| 亚洲国产精品9999在线观看| 综合操逼| 色婷婷亚洲婷婷| 熟女人妻av在线资源,黄色的资源| 日韩pv中文| 诱惑人妻欧美一区在线播放| 久草精品一区 | 亚洲资源一区| 最新日本中文字幕| 亚洲成人性| 国产精品99久久久www| 国产亚洲人妻综合日韩 久久| 嗯嗯,啊啊,国产精品| 最新av在线| 欧美激情 一区| 蜜臀视频网站| 免费自拍三级综合| 亚洲精品精品一区二区| 天天影视综合网欧美精品| 求求你操操我| 99热线麻豆| 国产精品免费久久久久久久久久 | 狠色婷婷久久一区二区三区_| 青青草在线视频美女| 欧美亚洲情色| 多毛小伙内射老太婆| 久久综合五月天| 青草香蕉网| 国产午夜精品一区二区三区牛牛| 12一15性XXXX粉嫩国产| 亚洲最新a在线观看| 东京热激情视频一二三区| 97超碰资源网| 97在线免费看视频| 手机在线中文字幕国产| 青青草日韩无码| 色网在线| 欧美组图日韩亚洲中文字幕| 日本色色色色色视频| 久久亚洲骚逼综合| 日韩色图 一区二区| 狠狠久久手机视频精品| 日韩AV熟女乱伦| 日韩传媒在线| 韩日欧亚a级| 先锋色眉乱伦资源| 亚洲男人天堂视频| 激情熟女12P| 色情成人五月天| 91欧美性| 极品综合| 久操黄色视频| 久操免费视频| 国产Aα| 在线综合 亚洲 欧美中文字幕 | 中文字幕91页| 天天摸夜夜摸| 青青草好吊色| 91精品黄在线观看| 亚州九九九精品视频| 日韩一区二区精彩视频| 91爽啪| 综合五月天| 99热只有这里有精品| 怡红院成人av| 日韩精品一区二区高清| 极品丝袜无码| 男人天堂2030| 色墦五月丁香| 草B在线| 亚洲欧美在线观看2021| 91国产美女丝袜足交精品视频| 白丝一区| 欧美九九爱| 97免费视频在线观看| 99热66| 精品一级| AA丁香综合激情| 99久久久| 六月丁香婷| 综合亚洲欧美| 99久热| 酒色综合网| 伊人影院中文字幕| 狠狠爱综合网| 999久久久久久久精| 青草成人免费视频一com| 亚洲春色激情小说| 日本一二区不卡| 麻豆视频test| 新亚洲无码| 黄色小说亚洲| 九九精品无码专区免费| 台湾大香蕉99热| 欧美日韩色综合网| 美女干逼2| 全免费a敌肛交毛片免费| 亚洲怡春院| 日本中文字幕在线电影| 亚洲资源一区| 精品久久久久,69国产成人精| 亚洲欧美人妻| 日产中文字幕2020| 波多野42部无码喷潮在线观看 | 91在线视频观看国产| 午夜精品久久久久久久| 国产av美女被艹的乱叫| 久久久久成人网| 日韩人妻大香蕉| A级片日韩欧美国产欧美视频精选观看 | 操一对老熟妇爽上天视频| 99热超碰在线| 久久只有精品| 婷婷15月天青娱乐| 国产AV高清AV无码| 天天影视亚洲| 国产熟女| 欧美日韩岛国大片在线观看| 久久婷婷成人综合色怡春院| 久久这里都是精品| 超碰色男人操熟女| 蜜臀99久久精品| 淫淫总合网| 二男一女成人A片| 熟妇人妻丰满久久久久久久无码| 欧美日韩人人精品| 国产偷拍自拍在线视频| 91亚洲综合在线| laoshunv91| 丁香五月天激情| 自拍偷拍草一草| 久伊人网78| 有码色中文字幕在线观看| 午夜黄色免费在线观看| 秋霞Av理论一级在线| 啊啊啊啊啊,啊啊啊啊好舒服,操我舒服啊啊啊| 亚洲一本大道中文字幕无码在线| 亚洲国产熟妇综合色专区| 精品无码人妻一区二区免费蜜桃| 九九久久综合| 搞中出久久| 色综91| 蜜乳av一区二区三区| 久久女人视频| 自拍偷拍2025在线观看| 思思热在线视频免费| 熟妇无码视频三区| 亚洲91网。| 丁香六月婷| 国产浮力影院第1页| 亚洲中文字幕熟女| 久草成人影片| 韩国女主播青草在线| 日本三级中国三级99人妇网站| 国产Av超碰| 综合久久9| 亚洲 中文 欧美 日韩 在线| 97色97好| 日夜啪电影| 日韩中文字幕视频在线观看| 熟妇xxxxx性春色| 亚洲天天操| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 久久精品国产72国产精品福利| 欧美不卡五十路| 热热色中文无码| 久久超碰天天| 亚洲色图综合网| 狠狠图片青青草| 福利风月五月天影院| 精品超碰中文在线| 麻豆这里只有精品| 人妻乱仑一区二区三区| 嗯嗯啊啊用力视频免费| 日韩无码操逼片| 91欧美大片| 天堂性色| 中文字幕丝袜| 91亚洲狠狠色| 欧美在线综合| 操淫穴亚洲五月丁香| 色九九九综合| 激情图片亚洲色图| www四虎| 欧洲天天在线| 欧美男女午夜啪啪| 久久侵犯人妻爽爽爽| 99性爱| 亚洲天堂区| 亚洲午夜免费狠狠干| 一区二区三区在线资源| 日本久久99| 五月天婷婷久久| 麻豆国产尤物AV| 亚洲第一页色| 青青草九九九九九| 男女打扑克高清网站| 久久天天性久久伊人| 日韩亚洲美女一区久久| oumeisetu综合| 97干com| 欧美曰韩国产精品| 超碰综合色| 97欧美色综合| 黑丝制服中文字幕| 大香蕉伊人75| 欧美第一页| 亚洲无码国产精品久久| 亚洲系列第一页|