91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

java中怎么使用swing連接數據庫

小億
155
2023-08-25 09:24:10
欄目: 編程語言

在Java中使用Swing連接數據庫,需要借助JDBC(Java Database Connectivity)技術。以下是一個簡單的例子,演示了如何使用Swing和JDBC連接MySQL數據庫:

1. 導入必要的包:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
```

2. 創建Swing界面:
```java
public class DatabaseConnection extends JFrame {
   private JTextField tfName;
   private JTextArea taResult;
   private JButton btnConnect;

   public DatabaseConnection() {
       // 設置窗口標題
       super("Database Connection");
       
       // 創建組件
       tfName = new JTextField(20);
       taResult = new JTextArea();
       btnConnect = new JButton("Connect");
       
       // 添加事件監聽器
       btnConnect.addActionListener(new ActionListener() {
           @Override
           public void actionPerformed(ActionEvent e) {
               connectToDatabase();
           }
       });
       
       // 創建面板并添加組件
       JPanel panel = new JPanel();
       panel.add(new JLabel("Name:"));
       panel.add(tfName);
       panel.add(btnConnect);
       
       // 設置文本區域屬性
       taResult.setEditable(false);
       taResult.setLineWrap(true);
       
       // 添加組件到窗口
       Container container = getContentPane();
       container.setLayout(new BorderLayout());
       container.add(panel, BorderLayout.NORTH);
       container.add(new JScrollPane(taResult), BorderLayout.CENTER);
       
       // 設置窗口大小和可見性
       setSize(400, 300);
       setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       setVisible(true);
   }

   private void connectToDatabase() {
       // 獲取用戶名
       String name = tfName.getText();
       
       // 連接數據庫
       try {
           // 加載數據庫驅動
           Class.forName("com.mysql.jdbc.Driver");
           
           // 創建連接
           Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydatabase", "username", "password");
           
           // 執行查詢
           Statement stmt = con.createStatement();
           ResultSet rs = stmt.executeQuery("SELECT * FROM users WHERE name = '" + name + "'");
           
           // 處理結果集
           while (rs.next()) {
               int id = rs.getInt("id");
               String resultName = rs.getString("name");
               String email = rs.getString("email");
               taResult.append("ID: " + id + ", Name: " + resultName + ", Email: " + email + "\n");
           }
           
           // 關閉連接
           rs.close();
           stmt.close();
           con.close();
       } catch (Exception e) {
           e.printStackTrace();
       }
   }

   public static void main(String[] args) {
       new DatabaseConnection();
   }
}
```

在上述代碼中,通過JDBC加載MySQL數據庫驅動,使用`DriverManager.getConnection()`方法連接數據庫,然后使用查詢語句執行查詢,并處理結果集。最后關閉連接。

注意:上述代碼中的數據庫連接字符串(`jdbc:mysql://localhost:3306/mydatabase`)需要根據實際情況進行修改,以及數據庫用戶名和密碼(`"username", "password"`)。

0
余江县| 郸城县| 绍兴市| 莲花县| 凤山县| 禄劝| 蕲春县| 磐石市| 通海县| 静安区| 麻江县| 永仁县| 特克斯县| 社旗县| 增城市| 甘孜县| 房产| 南昌市| 武城县| 建瓯市| 通许县| 九江市| 宜兴市| 视频| 安顺市| 峨眉山市| 永吉县| 安康市| 大悟县| 滦南县| 镇远县| 翼城县| 华容县| 陵川县| 太康县| 虹口区| 罗山县| 若尔盖县| 浦东新区| 剑阁县| 西城区|