JNDI连接数据库(连接池)
public class DBConnection { ?public PreparedStatement pstmt = null; ?public Statement stmt = null; ?public Connection con = null; ?public ResultSet rs = null; ?public Result r = null;
?// JNDI获取数据源 ?public Connection getConnection() { ??try { ???Context ctx = new InitialContext(); ???DataSource ds = (DataSource) ctx.lookup("java:comp/env/jdbc/books"); ???con = ds.getConnection(); ??} catch (NamingException e) { ???e.printStackTrace(); ??} catch (SQLException e) { ???e.printStackTrace(); ??} ??return con; ?}
?// 通用查询方法 ?public Result executeQuery(Connection con,String sql,Object[] params) ???throws SQLException { ??pstmt = con.prepareStatement(sql); ??for (int i = 0; i < params.length; i++) { ???pstmt.setObject(i + 1,params[i]); ??} ??rs = pstmt.executeQuery(); ??r = ResultSupport.toResult(rs); ??return r; ?}
?// 通用增删改方法 ?public int executeUpdate(Connection con,params[i]); ??} ??int num = pstmt.executeUpdate(); ??return num; ?}
?// 关闭数据资源?public void closeAll() {??if (pstmt != null) {???try {????pstmt.close();???} catch (SQLException e) {????e.printStackTrace();???}??}??if (stmt != null) {???try {????stmt.close();???} catch (SQLException e) {????e.printStackTrace();???}??}??if (con != null) {???try {????con.close();???} catch (SQLException e) {????e.printStackTrace();???}??}??if (rs != null) {???try {????rs.close();???} catch (SQLException e) {????e.printStackTrace();???}??}?}}
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|