IT序号网

MySql5.7以上JDBC的CRUD操作知识解答

developer 2021年05月25日 编程语言 177 0
  1 package schiller.com; 
  2  
  3 import java.sql.*; 
  4  
  5 public class Dbutils { 
  6   private String driver = "com.mysql.cj.jdbc.Driver"; 
  7   private String user = "root"; 
  8   private String password = "0000"; 
  9   private String url = 
 10       "jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai"; 
 11  
 12   private static Connection conn = null; 
 13  
 14   // 获取数据库连接 
 15   public Connection getConnection() { 
 16     try { 
 17       Class.forName(driver); 
 18       conn = DriverManager.getConnection(this.url, this.user, this.password); 
 19     } catch (ClassNotFoundException e) { 
 20       e.printStackTrace(); 
 21     } catch (SQLException e) { 
 22       e.printStackTrace(); 
 23     } 
 24     return conn; 
 25   } 
 26  
 27   // 查询某条记录 
 28   public void selectById(String table, int id) { 
 29     try { 
 30       PreparedStatement pst = 
 31           conn.prepareStatement(String.format("select * from %s where id = %d", table, id)); 
 32       ResultSet rs = pst.executeQuery(); 
 33       while (rs.next()) { 
 34         String name = rs.getString(1); 
 35         int idd = rs.getInt(2); 
 36         String sex = rs.getString(3); 
 37         System.out.println(idd + " " + name + " " + sex); 
 38       } 
 39       rs.close(); 
 40       pst.close(); 
 41     } catch (SQLException e) { 
 42       e.printStackTrace(); 
 43     } 
 44   } 
 45  
 46   // 查询全部记录 
 47   public void selectAll(String table) { 
 48     try { 
 49       PreparedStatement pst = conn.prepareStatement(String.format("select * from %s", table)); 
 50       ResultSet rs = pst.executeQuery(); 
 51       while (rs.next()) { 
 52         String name = rs.getString(1); 
 53         int idd = rs.getInt(2); 
 54         String sex = rs.getString(3); 
 55         System.out.println(idd + " " + name + " " + sex); 
 56       } 
 57       rs.close(); 
 58       pst.close(); 
 59     } catch (SQLException e) { 
 60       e.printStackTrace(); 
 61     } 
 62   } 
 63  
 64   // 插入一条记录 
 65   public void insert(String table, String name, String sex) { 
 66     try { 
 67       PreparedStatement pst = 
 68           conn.prepareStatement( 
 69               String.format("insert into %s (name,sex) values ('%s', '%s')", table, name, sex)); 
 70       int num = pst.executeUpdate(); 
 71       if (num > 0) { 
 72         System.out.println("成功添加一条记录"); 
 73       } else { 
 74         System.out.println("错误"); 
 75       } 
 76       pst.close(); 
 77     } catch (SQLException e) { 
 78       e.printStackTrace(); 
 79     } 
 80   } 
 81  
 82   // 删除一条记录 
 83   public void deleleById(String table, int id) { 
 84     try { 
 85       PreparedStatement pst = 
 86           conn.prepareStatement(String.format("delete from %s where id = %d", table, id)); 
 87       int num = pst.executeUpdate(); 
 88       if (num > 0) { 
 89         System.out.println("成功删除一条记录"); 
 90       } else { 
 91         System.out.println("错误"); 
 92       } 
 93       pst.close(); 
 94     } catch (SQLException e) { 
 95       e.printStackTrace(); 
 96     } 
 97   } 
 98  
 99   // 更新某条记录 
100   public void update(String table, String name, int id, String sex) { 
101     try { 
102       PreparedStatement pst = 
103           conn.prepareStatement( 
104               String.format("update %s set name='%s',sex='%s' where id=%d", table, name, sex, id)); 
105       int num = pst.executeUpdate(); 
106       if (num > 0) { 
107         System.out.println("成功更新一条记录"); 
108       } else { 
109         System.out.println("错误"); 
110       } 
111       pst.close(); 
112     } catch (SQLException e) { 
113       e.printStackTrace(); 
114     } 
115   } 
116 }

发布评论
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!

(转)JDBC详解知识解答
你是第一个吃螃蟹的人
发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。