JDBC连接mysql数据库CRUD封装类
2013-10-27 13:09
351 查看
/** * JDBC封装类 * * @author fish */ public class JDBCUtil { private ResultSet rs; private Statement stmt; private Connection conn; private String url = "jdbc:mysql://localhost:3306/jdbc"; private String className = "com.mysql.jdbc.Driver"; private String username = "root"; private String password = "123456"; /** * 构造函数 */ public JDBCUtil() { try { Class.forName(className); } catch (ClassNotFoundException e) { e.printStackTrace(); } } /** * 创建数据库连接 */ public Connection getConn() { try { conn = DriverManager.getConnection(url, username, password); } catch (Exception e) { e.printStackTrace(); } return conn; } /** * 获取Statement记录 */ public Statement getStmt() { try { conn = getConn(); stmt = conn.createStatement(); } catch (Exception e) { e.printStackTrace(); } return stmt; } /** * 调法上面的方法,查询数据库,返回单个结果 * 其他类调用过程如下: * JDBCUtil ju=new JDBCUtil(); ResultSet rs=ju.getrs(sql); * while(rs.next()){ * String s1 = rs.getInt(1); * } */ public ResultSet getSingleResult(String sql) { if (sql == null) sql = ""; try { stmt = getStmt(); rs = stmt.executeQuery(sql); } catch (SQLException e) { e.printStackTrace(); } return rs; } /** * 获取Statement记录集 */ public Statement getStmed() { try { conn = getConn(); stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); } catch (Exception e) { e.printStackTrace(); } return stmt; } /** * 调法上面的方法,查询数据库,返回一个结果集 * 其他类调用过程如下: * JDBCUtil ju=new JDBCUtil(); * ResultSet rs=ju.getRs(sql); * while(rs.next()){ * String s1 = r.getInt(1); * String s2 = r.getInt(2); * } */ public ResultSet getResultSet(String sql) { if (sql == null) sql = ""; try { stmt = getStmed(); rs = stmt.executeQuery(sql); } catch (SQLException e) { e.printStackTrace(); } return rs; } /** * 对数据库进行更新操作,适合SQL的insert语句和update语句 * 返回一个int值,表示更新的记录数 若返回为0,表示更新失败 * 其他类调用过程如下: * JDBCUtil ju=new JDBCUtil(); int i=db.update(sql); * if(i==0){ return mapping.findForward("false"); } * else return mapping.findForward("success"); */ public int update(String sql) { int flag = 0; if (sql == null) sql = ""; try { stmt = getStmed(); flag = stmt.executeUpdate(sql); } catch (SQLException e) { e.printStackTrace(); flag = 0; } return flag; } /** * 删除一条数据 * 其他类调用过程如下: * DB db=new DB(); db.delete(sql); */ public boolean delete(String sql) { boolean flag = false; if (sql == null) sql = ""; try { stmt = getStmed(); flag = stmt.execute(sql); } catch (SQLException e) { e.printStackTrace(); } return flag; } /** * 插入一条数据 * 其他类调用过程如下: * JDBCUtil ju=new JDBCUtil(); * ju.delete(sql); */ public boolean insert(String sql) { boolean flag = false; if (sql == null) sql = ""; try { stmt = getStmed(); flag = stmt.execute(sql); } catch (SQLException e) { e.printStackTrace(); } return flag; } /** * 断开数据库连接 * 其他类调用过程如下: JDBCUtil ju=new JDBCUtil(); ju.closed(); */ public void closed() { try { if (rs != null) rs.close(); } catch (Exception e) { e.printStackTrace(); } try { if (stmt != null) stmt.close(); } catch (Exception e) { e.printStackTrace(); } try { if (conn != null) conn.close(); } catch (Exception e) { e.printStackTrace(); } } }
ps:写于2011-01-06 09:13
相关文章推荐
- Java中JDBC连接数据库步骤 以及 Statement和preparseStatement
- JAVA 简单使用JDBC实现连接数据
- jdbc连接各种数据库方式列表
- JDBC连接
- 内存数据库timesten 的两种连接方式_附带altibase_oracle的jdbc连接
- JDBC连接各类数据库
- 使用 JDBC 连接不同版本 DB2 数据库的兼容性问题
- 各种数据库的JDBC驱动下载及连接字符串URL写法
- JDBC连接Oracle代码案列操作之--Oracle存储过程数据集返回(游标)
- jdbc与SQLServer连接
- JDBC连接sql server 2000数据库
- 通过jdbc连接oracle的十大灵活技术_jsp技巧
- [置顶] Hive:用Java代码通过JDBC连接Hiveserver
- JDBC连接数据库的四种方式:DriverManager,DataSource,DBCP,C3P0
- JDBC连接数据库和释放连接
- 各种数据库使用JDBC连接的方式
- Java/JSP中使用JDBC连接SQL Server 2005~
- jdbc连接数据库
- JDBC 连接 SQL Serve 2000 总结
- pb通过jdbc连接mysql