总结下JDBC经典操作!
1、JDBC往数据库插入一行:
private static final String USER_INSERT = "insert into user (id, email, password, name) values(null, ?, ?, ?) " ; public void saveUser(User user){ Connection conn = null ; PreparedStatement stmt = null ; try { conn = dateSource.getConnection(); //数据库连接 stmt = conn.prepareStatement(USER_INSERT) ; //创建语句 stmt.setString(1, user.getEmail()) ; //绑定参数 stmt.setString(2, user.getPassword()) ; stmt.setString(3, user.getName()) ; stmt.execute() ; //执行语句 } catch (Exception e) { e.printStackTrace() ; }finally{ /* 关闭资源 */ try { if(stmt != null){ stmt.close() ; } if(conn != null){ conn.close() ; } } catch (Exception e) { e.printStackTrace() ; } } }
2、JDBC往数据库更新一行:
private static final String USER_UPDATE = "update user set email=?, password = ?, name=? where id=? " ; public void updateUser(User user){ Connection conn = null ; PreparedStatement stmt = null ; try { conn = dateSource.getConnection(); //数据库连接 stmt = conn.prepareStatement(USER_UPDATE) ; //创建语句 stmt.setString(1, user.getEmail()) ; //绑定参数 stmt.setString(2, user.getPassword()) ; stmt.setString(3, user.getName()) ; stmt.setInt(4, user.getID()) ; stmt.execute() ; //执行语句 } catch (Exception e) { e.printStackTrace() ; }finally{ /* 关闭资源 */ try { if(stmt != null){ stmt.close() ; } if(conn != null){ conn.close() ; } } catch (Exception e) { e.printStackTrace() ; } } }
3、JDBC从数据库中查询一行:
private static final String USER_QUERY = "select id,email,password,name from user where id=? " ; public User getUserByID(Integer id){ Connection conn = null ; PreparedStatement stmt = null ; ResultSet rs = null ; try { conn = dateSource.getConnection(); //数据库连接 stmt = conn.prepareStatement(USER_QUERY) ; //创建语句 stmt.setInt(1, id) ; //绑定参数 rs = stmt.executeQuery() ; //执行语句 if(rs.next()){ User user = new User() ; user.setID(rs.getInt("id")) ; user.setEmail(rs.getString("email")) ; user.setPassword(rs.getString("password")) ; user.setName(rs.getString("name")) ; } return user ; } catch (Exception e) { e.printStackTrace() ; }finally{ /* 关闭资源 */ try { if(rs != null){ rs.close() ; } if(stmt != null){ stmt.close() ; } if(conn != null){ conn.close() ; } } catch (Exception e) { e.printStackTrace() ; } } }