Example usage for org.springframework.jdbc.core PreparedStatementCreatorFactory setUpdatableResults

List of usage examples for org.springframework.jdbc.core PreparedStatementCreatorFactory setUpdatableResults

Introduction

In this page you can find the example usage for org.springframework.jdbc.core PreparedStatementCreatorFactory setUpdatableResults.

Prototype

public void setUpdatableResults(boolean updatableResults) 

Source Link

Document

Set whether to use prepared statements capable of returning updatable ResultSets.

Usage

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 ww.  j  a v  a 2s.c o  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);
    }

}