package org.caudexorigo.jdbc; import java.sql.CallableStatement; import java.sql.PreparedStatement; public class DbRunner { public DbRunner() { super(); } public int executeCallableStatement(Db db, String proc) { return executeCallableStatement(db, proc, new Object[0]); } public int executeCallableStatement(Db db, String proc, Object... params) { return db.executeCallableStatement(proc, params); } public int executeCallableStatement(Db db, CallableStatement cs, Object... params) { return db.executeCallableStatement(cs, params); } public int executeCallableStatement(final DbPool dbPool, String proc) { return executeCallableStatement(dbPool, proc, new Object[0]); } public int executeCallableStatement(final DbPool dbPool, String proc, Object... params) { Db db = null; try { db = dbPool.obtain(); return executeCallableStatement(db, proc, params); } catch (Throwable ex) { throw new RuntimeException(ex); } finally { dbPool.release(db); } } public int executePreparedStatement(Db db, String sql, Object... params) { if ((params != null) && (params.length > 0)) { return db.executePreparedStatement(sql, params); } else { return db.executeStatement(sql); } } public int executePreparedStatement(Db db, PreparedStatement pstmt, Object... params) { return db.executePreparedStatement(pstmt, params); } public int executePreparedStatement(final DbPool dbPool, String sql, Object... params) { Db db = null; try { db = dbPool.obtain(); return executePreparedStatement(db, sql, params); } catch (Throwable ex) { throw new RuntimeException(ex); } finally { dbPool.release(db); } } public int executeStatement(Db db, String sql) { return executePreparedStatement(db, sql, new Object[0]); } public int executeStatement(final DbPool dbPool, String sql) { return executePreparedStatement(dbPool, sql, new Object[0]); } }