本文介绍了使用Java进行数据库增删改查操作,并整合GUI界面的实践指南。通过Java数据库连接,实现数据的增删改查功能,并通过图形用户界面展示,提高用户体验。
本文目录导读:
随着信息技术的飞速发展,数据库在各个领域都扮演着至关重要的角色,Java作为一种广泛应用于企业级应用的编程语言,其强大的数据库操作能力备受青睐,本文将详细介绍如何使用Java进行数据库的增删改查操作,并结合GUI界面实现数据的可视化展示。
图片来源于网络,如有侵权联系删除
Java数据库增删改查
1、连接数据库
我们需要建立与数据库的连接,在Java中,可以使用JDBC(Java Database Connectivity)技术实现,以下是一个连接MySQL数据库的示例代码:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class DBUtil { public static Connection getConnection() throws SQLException { String url = "jdbc:mysql://localhost:3306/mydb?useSSL=false"; String username = "root"; String password = "root"; return DriverManager.getConnection(url, username, password); } }
2、增删改查操作
(1)增加数据
import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.SQLException; public class InsertData { public static void insertData(String name, int age) { Connection conn = null; PreparedStatement pstmt = null; try { conn = DBUtil.getConnection(); String sql = "INSERT INTO users (name, age) VALUES (?, ?)"; pstmt = conn.prepareStatement(sql); pstmt.setString(1, name); pstmt.setInt(2, age); pstmt.executeUpdate(); } catch (SQLException e) { e.printStackTrace(); } finally { try { if (pstmt != null) pstmt.close(); if (conn != null) conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } }
(2)删除数据
图片来源于网络,如有侵权联系删除
import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.SQLException; public class DeleteData { public static void deleteData(int id) { Connection conn = null; PreparedStatement pstmt = null; try { conn = DBUtil.getConnection(); String sql = "DELETE FROM users WHERE id = ?"; pstmt = conn.prepareStatement(sql); pstmt.setInt(1, id); pstmt.executeUpdate(); } catch (SQLException e) { e.printStackTrace(); } finally { try { if (pstmt != null) pstmt.close(); if (conn != null) conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } }
(3)修改数据
import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.SQLException; public class UpdateData { public static void updateData(int id, String name, int age) { Connection conn = null; PreparedStatement pstmt = null; try { conn = DBUtil.getConnection(); String sql = "UPDATE users SET name = ?, age = ? WHERE id = ?"; pstmt = conn.prepareStatement(sql); pstmt.setString(1, name); pstmt.setInt(2, age); pstmt.setInt(3, id); pstmt.executeUpdate(); } catch (SQLException e) { e.printStackTrace(); } finally { try { if (pstmt != null) pstmt.close(); if (conn != null) conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } }
(4)查询数据
import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; public class QueryData { public static void queryData() { Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; try { conn = DBUtil.getConnection(); String sql = "SELECT * FROM users"; pstmt = conn.prepareStatement(sql); rs = pstmt.executeQuery(); while (rs.next()) { System.out.println("ID: " + rs.getInt("id") + ", Name: " + rs.getString("name") + ", Age: " + rs.getInt("age")); } } catch (SQLException e) { e.printStackTrace(); } finally { try { if (rs != null) rs.close(); if (pstmt != null) pstmt.close(); if (conn != null) conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } }
GUI界面展示
1、创建JFrame
import javax.swing.JFrame; public class MainFrame extends JFrame { public MainFrame() { setTitle("Java数据库增删改查"); setSize(600, 400); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 添加其他组件... } public static void main(String[] args) { new MainFrame().setVisible(true); } }
2、添加组件
在MainFrame
类中,我们可以添加按钮、文本框、表格等组件,用于实现增删改查功能。
图片来源于网络,如有侵权联系删除
import javax.swing.JButton; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JTable; import javax.swing.JTextField; public class MainFrame extends JFrame { private JButton btnInsert; private JButton btnDelete; private JButton btnUpdate; private JButton btnQuery; private JTextField tfName; private JTextField tfAge; private JTable table; public MainFrame() { // ... 省略其他代码 ... btnInsert = new JButton("增加"); btnInsert.addActionListener(e -> { String name = tfName.getText(); int age = Integer.parseInt(tfAge.getText()); InsertData.insertData(name, age); queryData(); }); btnDelete = new JButton("删除"); btnDelete.addActionListener(e -> { int id = Integer.parseInt(JOptionPane.showInputDialog("请输入要删除的ID:")); DeleteData.deleteData(id); queryData(); }); btnUpdate = new JButton("修改"); btnUpdate.addActionListener(e -> { int id = Integer.parseInt(JOptionPane.showInputDialog("请输入要修改的ID:")); String name = tfName.getText(); int age = Integer.parseInt(tfAge.getText()); UpdateData.updateData(id, name, age); queryData(); }); btnQuery = new JButton("查询"); btnQuery.addActionListener(e -> queryData()); tfName = new JTextField(); tfAge = new JTextField(); table = new JTable(); // ... 省略其他代码 ... } }
3、查询数据并展示
在MainFrame
类中,我们需要调用queryData
方法查询数据,并将结果展示在表格中。
public class MainFrame extends JFrame { // ... 省略其他代码 ... private void queryData() { Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; try { conn = DBUtil.getConnection(); String sql = "SELECT * FROM users"; pstmt = conn.prepareStatement(sql); rs = pstmt.executeQuery(); DefaultTableModel model = new DefaultTableModel(new Object[]{"ID", "Name", "Age"}, 0); while (rs.next()) { model.addRow(new Object[]{rs.getInt("id"), rs.getString("name"), rs.getInt("age")}); } table.setModel(model); } catch (SQLException e) { e.printStackTrace(); } finally { try { if (rs != null) rs.close(); if (pstmt != null) pstmt.close(); if (conn != null) conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } // ... 省略其他代码 ... }
本文详细介绍了使用Java进行数据库增删改查操作,并结合GUI界面实现数据的可视化展示,通过以上实践,读者可以了解到Java在数据库操作和界面设计方面的强大能力,在实际开发过程中,可以根据具体需求对代码进行优化和扩展。
标签: #Java数据库操作
评论列表