本文共 2659 字,大约阅读时间需要 8 分钟。
package java619.db层;import java.sql.*;//创建不拼接字符串的crud方式public class test { public String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; public String dbURL = "jdbc:sqlserver://localhost:1433 ;Databasename =studentDB;" +"integratedSecurity=true"; private Connection dbConn = null; private PreparedStatement stmt = null; // sql对象可以不用拼接字符串 private ResultSet rs = null; // 调用创建连接 http://www.worlduc.com/blog2012.aspx?bid=49167509 public test() { // 构造方法调用数据库连接。一旦创建对象,数据库建立连接 this.getConnection(); } // 编写数据库连接的方法 public void getConnection() { try { Class.forName(driverName); dbConn = DriverManager.getConnection(dbURL); System.out.println("连接数据库成功"); } catch (Exception e) { e.printStackTrace(); System.out.print("连接失败"); } } 查询数据 search, Object... obj可变变化的数组长度为0或者任意 // 调用数据查询的通用方法;供dao层的代码调用,search必须有返回值 // sql=(select * from student where id = ? and name =?;) args=?? public ResultSet search(String sql, Object... obj) { // Object... obj代表0个或多个参数 try { stmt = dbConn.prepareStatement(sql); if (obj!=null) { int len = obj.length; for (int i = 0; i < len; i++) { stmt.setObject(i + 1, obj[i]); } } rs = stmt.executeQuery(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return rs; } // 增删改通用方法 //insert delete update都是一个方法 public int update(String sql, Object... obj) { int result = -1; try { stmt = dbConn.prepareStatement(sql); if (obj!=null) { int len = obj.length; for (int i = 0; i < len; i++) { stmt.setObject(i + 1, obj[i]); } } result = stmt.executeUpdate(); // } catch (Exception e) { // TODO: handle exception } return result; } public int getAll(String sql) { int result = -1; try { Statement stmt = dbConn.createStatement(); ResultSet rs = stmt.executeQuery(sql); rs.next(); result = rs.getInt(1); rs.close(); stmt.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return result; } public void close() { // 做完后关闭数据库操作 try { if (rs != null) { rs.close(); rs = null; } if (stmt != null) { stmt.close(); stmt = null; } if (dbConn != null) { dbConn.close(); dbConn = null; } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } // 测试 public static void main(String[] args) { test db = new test();// String sql = "update T_applicant set email = ? where id= ?";// int rs = db.update(sql, new Object[] {"123",1});// System.out.println(rs); // 统计记录的行数 String sql ="select count(*) from t_student"; System.out.println(db.getAll(sql));// }}
转载地址:http://bfqzi.baihongyu.com/