自定义连接数据库的util类
package com.shuzf.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class JDBCUtil { // 定义驱动器类的路径 private static final String DRIVER = "oracle.jdbc.driver.OracleDriver"; // 定义用于连接数据库的URL private static final String URL = "jdbc:oracle:thin****l"; // 定义用于访问数据库的用户名及密码 private static final String USERNAME = "s****t"; private static final String PASSWORD = "t***r"; // 加载驱动器类 static { try { Class.forName(DRIVER); } catch (ClassNotFoundException e) { e.printStackTrace(); } } // 定义获得连接的方法 public static Connection getConnection() { Connection conn = null; ; try { conn = DriverManager.getConnection(URL, USERNAME, PASSWORD); } catch (SQLException e) { e.printStackTrace(); } return conn; } // 定义释放数据库资源的方法 public static void destory(Connection con, Statement stat, ResultSet rs) { if (rs != null) { try { rs.close(); } catch (SQLException e) { e.printStackTrace(); } } if (stat != null) { try { stat.close(); } catch (SQLException e) { e.printStackTrace(); } } if (con != null) { try { con.close(); } catch (SQLException e) { e.printStackTrace(); } } } }
基本类
package com.shuzf.jdbc; public class Student { private Integer Id; private String Name; private String Sex; private int Age; public Student() { super(); } public Student(String name, String sex, int age) { Id = null; Name = name; Sex = sex; Age = age; } public Integer getId() { return Id; } public void setId(Integer id) { Id = id; } public String getName() { return Name; } public void setName(String name) { Name = name; } public String getSex() { return Sex; } public void setSex(String sex) { Sex = sex; } public int getAge() { return Age; } public void setAge(int age) { Age = age; } }
增删改查
package com.shuzf.jdbc; import java.sql.Connection; import java.sql.Date; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; public class JdbcTest { public int insert(Student student) { Connection conn = JDBCUtil.getConnection(); int i = 0; PreparedStatement pst = null; String sql = "insert into students (Name,Sex,Age,Addtime) values(?,?,?,?)"; try { pst = conn.prepareStatement(sql); pst.setString(1, student.getName()); pst.setString(2, student.getSex()); pst.setInt(3, student.getAge()); pst.setDate(4, new Date(new java.util.Date().getTime())); i = pst.executeUpdate(); } catch (SQLException e) { e.printStackTrace(); } finally { JDBCUtil.destory(conn, pst, null); } return i; } public int update(Student student) { Connection conn = JDBCUtil.getConnection(); int i = 0; PreparedStatement pst = null; String sql = "update students set Age='" + student.getAge() + "' where Name='" + student.getName() + "'"; try { pst = conn.prepareStatement(sql); i = pst.executeUpdate(); } catch (SQLException e) { e.printStackTrace(); } finally { JDBCUtil.destory(conn, pst, null); } return i; } public int delete(Student student) { Connection conn = JDBCUtil.getConnection(); int i = 0; PreparedStatement pst = null; String sql = "delete from students where Name='" + student.getName() + "'"; try { pst = conn.prepareStatement(sql); i = pst.executeUpdate(); } catch (SQLException e) { e.printStackTrace(); } finally { JDBCUtil.destory(conn, pst, null); } return i; } public ArrayList<Student> getStudent(String name) { Connection conn = JDBCUtil.getConnection(); PreparedStatement pst = null; ResultSet rs = null; ArrayList<Student> students = new ArrayList<Student>(); String sql = "select * from students where Name='" + name + "'"; try { pst = conn.prepareStatement(sql); rs = pst.executeQuery(); // int count = rs.getMetaData().getColumnCount();// 指示列数目的 int值 while (rs.next()) { Student s = new Student(); s.setId(rs.getInt("id")); s.setName(rs.getString("name")); s.setSex(rs.getString("sex")); s.setAge(rs.getInt("age")); students.add(s); } } catch (SQLException e) { e.printStackTrace(); } finally { JDBCUtil.destory(conn, pst, rs); } return students; } public static void main(String[] args) { // TODO Auto-generated method stub } }