Example usage for org.springframework.jdbc.core.namedparam NamedParameterUtils buildSqlParameterList

List of usage examples for org.springframework.jdbc.core.namedparam NamedParameterUtils buildSqlParameterList

Introduction

In this page you can find the example usage for org.springframework.jdbc.core.namedparam NamedParameterUtils buildSqlParameterList.

Prototype

public static List<SqlParameter> buildSqlParameterList(ParsedSql parsedSql, SqlParameterSource paramSource) 

Source Link

Document

Convert parameter declarations from an SqlParameterSource to a corresponding List of SqlParameters.

Usage

From source file:io.kahu.hawaii.util.call.sql.AbortableQuery.java

/**
 * Build a PreparedStatementCreator based on the given SQL and named parameters.
 * <p>Note: Not used for the {@code update} variant with generated key handling.
 * @param sql SQL to execute//from  w  w w .  j a va  2 s  . c om
 * @param paramSource container of arguments to bind
 * @return the corresponding PreparedStatementCreator
 */
protected PreparedStatementCreator getPreparedStatementCreator(String sql, SqlParameterSource paramSource) {
    ParsedSql parsedSql = NamedParameterUtils.parseSqlStatement(sql);

    String sqlToUse = NamedParameterUtils.substituteNamedParameters(parsedSql, paramSource);
    Object[] params = NamedParameterUtils.buildValueArray(parsedSql, paramSource, null);
    List<SqlParameter> declaredParameters = NamedParameterUtils.buildSqlParameterList(parsedSql, paramSource);
    PreparedStatementCreatorFactory pscf = new PreparedStatementCreatorFactory(sqlToUse, declaredParameters);

    pscf.setGeneratedKeysColumnNames(idColumn);

    return pscf.newPreparedStatementCreator(params);
}

From source file:com.danidemi.jlubricant.springbatch.NamedJdbcCursorItemReader.java

@Override
protected void openCursor(Connection con) {

    //MyParsedSqlDel parsedSql = getParsedSql(sql);

    //String sqlToUse = NamedParameterUtils.substituteNamedParameters(parsedSql.getDelegate(), paramSource);

    //String theSql = sqlToUse;

    try {//w  w  w . j  av a  2 s.co m
        //         if (isUseSharedExtendedConnection()) {
        //            preparedStatement = con.prepareStatement(theSql, ResultSet.TYPE_FORWARD_ONLY, ResultSet.CONCUR_READ_ONLY,
        //                  ResultSet.HOLD_CURSORS_OVER_COMMIT);
        //         }
        //         else {
        //            preparedStatement = con.prepareStatement(theSql, ResultSet.TYPE_FORWARD_ONLY, ResultSet.CONCUR_READ_ONLY);
        //         }
        //         applyStatementSettings(preparedStatement);
        //         if (this.preparedStatementSetter != null) {
        //            
        //            
        //            preparedStatementSetter.setValues(preparedStatement);
        //            
        //            
        //            
        //            
        //            
        //         }
        //         this.rs = preparedStatement.executeQuery();

        ParsedSql parsedSql1 = this.getParsedSql(sql).getDelegate();
        String sqlToUse1 = NamedParameterUtils.substituteNamedParameters(parsedSql1, paramSource);
        Object[] params = NamedParameterUtils.buildValueArray(parsedSql1, paramSource, null);
        List<SqlParameter> declaredParameters = NamedParameterUtils.buildSqlParameterList(parsedSql1,
                paramSource);
        PreparedStatementCreatorFactory pscf = new PreparedStatementCreatorFactory(sqlToUse1,
                declaredParameters);
        pscf.setResultSetType(ResultSet.TYPE_FORWARD_ONLY);
        pscf.setUpdatableResults(false);
        PreparedStatementCreator preparedStatementCreator = pscf.newPreparedStatementCreator(params);

        //con.prepareStatement(theSql, ResultSet.TYPE_FORWARD_ONLY, ResultSet.CONCUR_READ_ONLY);

        preparedStatement = preparedStatementCreator.createPreparedStatement(con);
        this.rs = preparedStatement.executeQuery();

        handleWarnings(preparedStatement);
    } catch (SQLException se) {
        close();
        throw getExceptionTranslator().translate("Executing query", getSql(), se);
    }

}