public <T> T execute(IConnectionCallback<T> callback) { Connection c = null; try { c = getConnection(); return callback.execute(c); } catch (SQLException ex) { throw translate(ex); } finally { close(c); } }
public void setValues(PreparedStatement ps, Object[] args) throws SQLException { if (args != null) { for (int i = 0; i < args.length; i++) { Object arg = args[i]; doSetValue(ps, i + 1, arg); } } }
public void testConnection() { execute(new IConnectionCallback<Boolean>() { public Boolean execute(Connection con) throws SQLException { return true; } }); }
public <T> T queryForObject(final String sql, final Class<T> clazz, final Object... args) { logSql(sql, args); return execute(new IConnectionCallback<T>() { public T execute(Connection con) throws SQLException { T result = null; PreparedStatement ps = null; ResultSet rs = null; try { ps = con.prepareStatement(expandSql(sql, args)); ps.setQueryTimeout(settings.getQueryTimeout()); setValues(ps, expandArgs(sql, args)); rs = ps.executeQuery(); if (rs.next()) { result = getObjectFromResultSet(rs, clazz); } } finally { close(rs); close(ps); } return result; } }); }
this.mapper = mapper; try { c = sqlTemplate.getDataSource().getConnection(); originalIsolationLevel = c.getTransactionIsolation(); autoCommitFlag = c.getAutoCommit(); if (c.getTransactionIsolation() != sqlTemplate.getIsolationLevel()) { c.setTransactionIsolation(sqlTemplate.getIsolationLevel()); if (sqlTemplate.isRequiresAutoCommitFalseToSetFetchSize()) { c.setAutoCommit(false); java.sql.ResultSet.TYPE_FORWARD_ONLY, java.sql.ResultSet.CONCUR_READ_ONLY); sqlTemplate.setValues(pstmt, values, types, sqlTemplate.getLobHandler() .getDefaultHandler()); st = pstmt; st.setQueryTimeout(sqlTemplate.getSettings().getQueryTimeout()); st.setFetchSize(sqlTemplate.getSettings().getFetchSize()); rs = pstmt.executeQuery(); st = c.createStatement(java.sql.ResultSet.TYPE_FORWARD_ONLY, java.sql.ResultSet.CONCUR_READ_ONLY); st.setQueryTimeout(sqlTemplate.getSettings().getQueryTimeout()); st.setFetchSize(sqlTemplate.getSettings().getFetchSize()); rs = st.executeQuery(sql); throw sqlTemplate.translate(sql, ex); } catch (Throwable ex) { close();
PreparedStatement ps = null; try { boolean supportsGetGeneratedKeys = supportsGetGeneratedKeys(); boolean supportsReturningKeys = supportsReturningKeys(); if (allowsNullForIdentityColumn()) { if (supportsGetGeneratedKeys) { ps = conn.prepareStatement(sql, new int[] { 1 }); setValues(ps, args, types, lobHandler.getDefaultHandler()); close(rs); close(rs); try { st = conn.createStatement(); rs = st.executeQuery(getSelectLastInsertIdSql(sequenceName)); if (rs.next()) { key = rs.getLong(1); close(rs); close(st); close(ps);
public T execute(Connection con) throws SQLException { T result = null; PreparedStatement ps = null; ResultSet rs = null; try { ps = con.prepareStatement(expandSql(sql, args)); ps.setQueryTimeout(settings.getQueryTimeout()); setValues(ps, expandArgs(sql, args)); rs = ps.executeQuery(); if (rs.next()) { result = getObjectFromResultSet(rs, clazz); } } finally { close(rs); close(ps); } return result; } });
public T execute(Connection con) throws SQLException { T result = null; Statement stmt = null; ResultSet rs = null; try { logSql(sql, args); if (args != null && args.length > 0) { PreparedStatement ps = con.prepareStatement(sql); stmt = ps; stmt.setQueryTimeout(jdbcSqlTemplate.getSettings().getQueryTimeout()); jdbcSqlTemplate.setValues(ps, args); rs = ps.executeQuery(); } else { stmt = con.createStatement(); stmt.setQueryTimeout(jdbcSqlTemplate.getSettings().getQueryTimeout()); rs = stmt.executeQuery(sql); } if (rs.next()) { result = jdbcSqlTemplate.getObjectFromResultSet(rs, clazz); } } finally { JdbcSqlTemplate.close(rs); JdbcSqlTemplate.close(stmt); } return result; } });
public List<T> execute(Connection c) throws SQLException { PreparedStatement st = null; ResultSet rs = null; try { logSql(sql, args); st = c.prepareStatement(sql); st.setQueryTimeout(jdbcSqlTemplate.getSettings().getQueryTimeout()); if (args != null) { jdbcSqlTemplate.setValues(st, args, types, jdbcSqlTemplate.getLobHandler().getDefaultHandler()); } st.setFetchSize(jdbcSqlTemplate.getSettings().getFetchSize()); rs = st.executeQuery(); List<T> list = new ArrayList<T>(); while (rs.next()) { Row row = JdbcSqlReadCursor.getMapForRow(rs, jdbcSqlTemplate.getSettings().isReadStringsAsBytes()); T value = mapper.mapRow(row); list.add(value); } return list; } finally { JdbcSqlTemplate.close(rs); JdbcSqlTemplate.close(st); } } });
public Integer execute(Connection con) throws SQLException { PreparedStatement stmt = null; ResultSet rs = null; try { logSql(sql, args); stmt = con.prepareStatement(sql); jdbcSqlTemplate.setValues(stmt, args, types, jdbcSqlTemplate.getLobHandler().getDefaultHandler()); if (stmt.execute()) { rs = stmt.getResultSet(); while (rs.next()) { } } return stmt.getUpdateCount(); } finally { JdbcSqlTemplate.close(rs); JdbcSqlTemplate.close(stmt); } } });
public Integer execute(Connection con) throws SQLException { PreparedStatement stmt = null; ResultSet rs = null; try { logSql(sql, args); stmt = con.prepareStatement(sql); if (args != null && args.length > 0) { jdbcSqlTemplate.setValues(stmt, args); } if (stmt.execute()) { rs = stmt.getResultSet(); while (rs.next()) { } } return stmt.getUpdateCount(); } finally { JdbcSqlTemplate.close(rs); JdbcSqlTemplate.close(stmt); } } });
for (String statement = source.readSqlStatement(); statement != null; statement = source .readSqlStatement()) { logSql(statement, null); try { boolean hasResults = stmt.execute(statement); close(rs); boolean isSequenceCreate = statement.toLowerCase().trim().startsWith("create sequence"); if (resultsListener != null) { resultsListener.sqlErrored(statement, translate(statement, ex), statementCount, isDrop, isSequenceCreate); close(stmt); con.setAutoCommit(oldAutoCommitSetting);
public static void close(boolean autoCommitValue, Connection c) { try { if (c != null) { c.setAutoCommit(autoCommitValue); } } catch (SQLException ex) { } finally { close(c); } }
public void prepare(String sql) { try { if (this.markers.size() > 0) { throw new IllegalStateException( "Cannot prepare a new batch before the last batch has been flushed."); } JdbcSqlTemplate.close(pstmt); if (log.isDebugEnabled()) { log.debug("Preparing: {}", sql); } pstmt = connection.prepareStatement(sql); psql = sql; } catch (SQLException ex) { throw jdbcSqlTemplate.translate(ex); } }
protected void init() { if (this.connection != null) { close(); } try { this.connection = jdbcSqlTemplate.getDataSource().getConnection(); this.oldAutoCommitValue = this.connection.getAutoCommit(); this.connection.setAutoCommit(false); SqlUtils.addSqlTransaction(this); } catch (SQLException ex) { close(); throw jdbcSqlTemplate.translate(ex); } }
protected SQLException findSQLException(Throwable ex) { if (ex instanceof SQLException) { return (SQLException) ex; } else { Throwable cause = ex.getCause(); if (cause != null && !cause.equals(ex)) { return findSQLException(cause); } } return null; }
protected ISqlTemplate createSqlTemplate() { return new JdbcSqlTemplate(dataSource, settings, null, getDatabaseInfo()); }
public String queryForClob(final String sql, final Object... args) { logSql(sql, args); return execute(new IConnectionCallback<String>() { public String execute(Connection con) throws SQLException { String result = null; PreparedStatement ps = null; ResultSet rs = null; try { ps = con.prepareStatement(sql); ps.setQueryTimeout(settings.getQueryTimeout()); setValues(ps, args); rs = ps.executeQuery(); if (rs.next()) { result = lobHandler.getClobAsString(rs, 1); } } finally { close(rs); close(ps); } return result; } }); }
public Integer execute(Connection con) throws SQLException { if (args == null) { Statement stmt = null; try { stmt = con.createStatement(); stmt.setQueryTimeout(settings.getQueryTimeout()); stmt.execute(sql); return stmt.getUpdateCount(); } finally { close(stmt); } } else { PreparedStatement ps = null; try { ps = con.prepareStatement(sql); ps.setQueryTimeout(settings.getQueryTimeout()); if (types != null) { setValues(ps, args, types, getLobHandler() .getDefaultHandler()); } else { setValues(ps, args); } ps.execute(); return ps.getUpdateCount(); } finally { close(ps); } } } });
public String execute(Connection con) throws SQLException { String result = null; PreparedStatement ps = null; ResultSet rs = null; try { ps = con.prepareStatement(sql); ps.setQueryTimeout(settings.getQueryTimeout()); setValues(ps, args); rs = ps.executeQuery(); if (rs.next()) { result = lobHandler.getClobAsString(rs, 1); } } finally { close(rs); close(ps); } return result; } });