package jdbc_util; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class JdbcDemo { // 設置漢字編碼 useUnicode=true&characterEncoding=UTF-8 String jdbcUrl = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8"; String className = "com.mysql.jdbc.Driver"; String user = "root"; String password = "920619"; public Connection getConnection() { Connection connection = null; try { // 加載數據庫驅動 Class.forName(className); // 獲取數據庫連接 connection = DriverManager.getConnection(jdbcUrl, user, password); } catch (Exception e) { System.out.println("連接失敗"); } return connection; } public void closeConnection(Connection connection) { try { connection.close(); System.out.println("關閉成功"); } catch (SQLException e) { System.out.println("關閉失敗"); } } public void insert() { String sql = "insert into user (UserName,PassWord,UserAge,UserSex) values('丙','123456', 20, 0)"; Connection connection = getConnection(); try { //獲取數據庫操作類 Statement statement = connection.createStatement(); //執行 SQL 語句並返回結果 int result = statement.executeUpdate(sql); if (result != 0) { System.out.println("操作成功,受影響" + result + "行"); } statement.close(); } catch (SQLException e) { System.out.println("操作失敗"); } finally { closeConnection(connection); } } public void delete() { String sql = "delete from user where UserId in (2,3,4)"; Connection connection = getConnection(); try { Statement statement = connection.createStatement(); int result = statement.executeUpdate(sql); if (result != 0) { System.out.println("操作成功,受影響" + result + "行"); } statement.close(); } catch (SQLException e) { System.out.println("操作失敗"); } finally { closeConnection(connection); } } public void update() { String sql = "update user set UserName = '乙' where UserId = 5"; Connection connection = getConnection(); try { Statement statement = connection.createStatement(); int result = statement.executeUpdate(sql); if (result != 0) { System.out.println("操作成功,受影響" + result + "行"); } statement.close(); } catch (SQLException e) { System.out.println("操作失敗"); } finally { closeConnection(connection); } } public void select() { //帶參數的 SQL 語句, 要設置的值用 ? 占位 String sql = "select * from user where UserId = ?"; Connection connection = getConnection(); try { //傳遞 SQL 語句 PreparedStatement statement = connection.prepareStatement(sql); //設置 SQL 語句中占位符的值 statement.setInt(1, 1); ResultSet resultSet = statement.executeQuery(); while (resultSet.next()) { System.out.println("UserName = " + resultSet.getString("UserName")); System.out.println("PassWord = " + resultSet.getString("PassWord")); System.out.println("UserAge = " + resultSet.getInt("UserAge")); String userSex = resultSet.getInt("UserSex") == 1 ? "男" : "女"; System.out.println("UserSex = " + userSex); } resultSet.close(); statement.close(); } catch (SQLException e) { System.out.println("操作失敗"); } finally { closeConnection(connection); } } }