Example usage for org.springframework.jdbc.core.namedparam MapSqlParameterSource getValues

List of usage examples for org.springframework.jdbc.core.namedparam MapSqlParameterSource getValues

Introduction

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

Prototype

public Map<String, Object> getValues() 

Source Link

Document

Expose the current parameter values as read-only Map.

Usage

From source file:org.sakuli.services.receiver.database.dao.impl.DaoTestSuiteImpl.java

/**
 * {@inheritDoc}//from ww  w .j a  v a  2s .co  m
 */
@Override
public int insertInitialTestSuiteData() {
    logger.info("Build SQL query for new primary key in table 'sahi_suites'");

    testSuite.refreshState();
    MapSqlParameterSource tcParameters = getInitialDataParameters();
    logger.info("write the following values to 'sahi_suites': " + tcParameters.getValues()
            + " ==>  now execute ....");
    SimpleJdbcInsert insertInitialSuiteData = new SimpleJdbcInsert(getDataSource()).withTableName("sahi_suites")
            .usingGeneratedKeyColumns("id");

    int dbPrimaryKey = insertInitialSuiteData.executeAndReturnKey(tcParameters).intValue();

    logger.info("test suite \"" + testSuite.getId() + "\" has been written to 'sahi_suites' with  primaryKey="
            + dbPrimaryKey);
    return dbPrimaryKey;
}

From source file:org.sakuli.services.forwarder.database.dao.impl.DaoTestSuiteImpl.java

/**
 * {@inheritDoc}//from www .  j  ava  2 s. c  om
 */
@Override
public int insertInitialTestSuiteData() {
    LOGGER.debug("Build SQL query for new primary key in table 'sakuli_suites'");

    testSuite.refreshState();
    MapSqlParameterSource tcParameters = getInitialDataParameters();
    LOGGER.debug("write the following values to 'sakuli_suites': " + tcParameters.getValues()
            + " ==>  now execute ....");
    SimpleJdbcInsert insertInitialSuiteData = new SimpleJdbcInsert(getDataSource())
            .withTableName("sakuli_suites").usingGeneratedKeyColumns("id");

    int dbPrimaryKey = insertInitialSuiteData.executeAndReturnKey(tcParameters).intValue();

    LOGGER.info("test suite \"" + testSuite.getId() + "\" has been written to 'sakuli_suites' with  primaryKey="
            + dbPrimaryKey);
    return dbPrimaryKey;
}

From source file:org.sakuli.services.forwarder.database.dao.DaoTest.java

@Test
public void testCreateSqlSetStringForNamedParameter() throws Throwable {
    testling = new Dao(dataSource) {
    };/*from  w w w .  ja  v  a 2  s .c o m*/
    MapSqlParameterSource source = new MapSqlParameterSource().addValue("testling2", "value")
            .addValue("testling", "value");
    Assert.assertEquals("SET testling2=:testling2, testling=:testling ",
            testling.createSqlSetStringForNamedParameter(source.getValues()));
    source.addValue("nullable", null);
    Assert.assertEquals("SET testling2=:testling2, testling=:testling ",
            testling.createSqlSetStringForNamedParameter(source.getValues()));

}

From source file:com.eu.evaluation.server.dao.AbstractDAO.java

private Query initQueryParams(Query query, MapSqlParameterSource params) {
    if (params != null) {
        for (String paramsName : params.getValues().keySet()) {
            query.setParameter(paramsName, params.getValue(paramsName));
        }//from w w w.j ava 2s.com
    }
    return query;
}

From source file:annis.administration.AbstractAdminstrationDao.java

@SuppressWarnings("unchecked")
private String readSqlFromResource(Resource resource, MapSqlParameterSource args) {
    // XXX: uses raw type, what are the parameters to Map in MapSqlParameterSource?
    Map<String, Object> parameters = args != null ? args.getValues() : new HashMap();

    try (BufferedReader reader = new BufferedReader(
            new InputStreamReader(new FileInputStream(resource.getFile()), "UTF-8"));) {
        StringBuilder sqlBuf = new StringBuilder();

        for (String line = reader.readLine(); line != null; line = reader.readLine()) {
            sqlBuf.append(line).append("\n");
        }//from   w  w w.ja v a2  s  .  c o m
        String sql = sqlBuf.toString();
        for (Map.Entry<String, Object> placeHolderEntry : parameters.entrySet()) {
            String key = placeHolderEntry.getKey();
            String value = placeHolderEntry.getValue().toString();
            log.debug("substitution for parameter '" + key + "' in SQL script: " + value);
            sql = sql.replaceAll(key, Matcher.quoteReplacement(value));
        }
        return sql;
    } catch (IOException e) {
        log.error("Couldn't read SQL script from resource file.", e);
        throw new FileAccessException("Couldn't read SQL script from resource file.", e);
    }
}

From source file:com.qualogy.qafe.business.integration.rdb.SQLQueryDAO.java

private Object execute(RDBDatasource ds, SQLQuery stmt, Map<String, AdaptedToService> paramsIn,
        Set outputMapping, Filters filters, DataIdentifier dataId) {
    Long oldChecksum = null;//w  ww  .j a v a2s .c o m
    if (isConcurrentModificationEnabled()) {
        oldChecksum = ConflictDetectionUtil.removeChecksum(paramsIn);
    }

    String[] inputKeys = null;
    Map<String, Object> paramIns = new HashMap<String, Object>();
    if (paramsIn != null) {
        paramIns = narrow(paramsIn);
        inputKeys = (String[]) paramIns.keySet().toArray(new String[paramIns.size()]);
    }
    MapSqlParameterSource namedParameters = new MapSqlParameterSource(paramIns);
    Object result = null;
    isCountOnly = DataStore.findValue(dataId, DataStore.KEY_WORD_COUNT) != null;
    String sql = QueryToStringCreator.toString(stmt, namedParameters, inputKeys, outputMapping);
    Map values = namedParameters.getValues();
    if ((values != null) && (values.size() > 0)) {
        Map replacementMap = new HashMap<String, Object>();
        for (String key : inputKeys) {
            if (values.containsKey(key.toUpperCase())) {
                replacementMap.put(key, values.get(key.toUpperCase()));
            }
            if (values.containsKey(key.toLowerCase())) {
                replacementMap.put(key, values.get(key.toLowerCase()));
            }
        }
        namedParameters.addValues(replacementMap);
    }
    logger.info("Executing SQL: " + sql);
    SimpleJdbcTemplate template = new SimpleJdbcTemplate(ds.getDataSource());
    try {
        Connection conn = ds.getDataSource().getConnection();
        dialect = getDatabaseDialect(conn);
        DataSourceUtils.releaseConnection(conn, ds.getDataSource());
    } catch (SQLException e) {
        ExceptionHelper.printStackTrace(e);
    }
    if (stmt instanceof Select) {
        result = handleSelect(sql, namedParameters, (Select) stmt, template, filters);
        if (!isCountOnly && isConcurrentModificationEnabled()) {
            ConflictDetectionUtil.addChecksums((List<Map<String, Object>>) result, sql);
        }
    } else if (stmt instanceof Insert) {
        result = handleInsert(sql, namedParameters, (Insert) stmt, template);
        if (isConcurrentModificationEnabled()) {
            DataStore.store(dataId, DataStore.KEY_SERVICE_MODIFY);
        }
    } else if (stmt instanceof SQLOnly) {
        result = handleQueryTag(sql, namedParameters, template);
    } else {
        if (isConcurrentModificationEnabled()) {
            ConflictDetectionUtil.validateChecksum(template, sql, namedParameters.getValues(), oldChecksum);
        }
        template.update(sql, namedParameters);
        if (isConcurrentModificationEnabled()) {
            DataStore.store(dataId, DataStore.KEY_SERVICE_MODIFY);
        }
    }
    return result;
}

From source file:com.joliciel.frenchTreebank.TreebankDaoImpl.java

@SuppressWarnings("unchecked")
public static void LogParameters(MapSqlParameterSource paramSource) {
    DaoUtils.LogParameters(paramSource.getValues());
}

From source file:org.sakuli.services.receiver.database.dao.impl.DaoTestCaseStepImpl.java

@Override
public void saveTestCaseSteps(List<TestCaseStep> steps, int primaryKeyOfTestCase) {
    for (TestCaseStep step : steps) {
        logger.info("============== save STEP \"" + step.getName() + "\" ==============");
        MapSqlParameterSource stepParameters = new MapSqlParameterSource();
        stepParameters.addValue("sahi_cases_id", primaryKeyOfTestCase);
        stepParameters.addValue("result", step.getState().getErrorCode());
        stepParameters.addValue("result_desc", step.getState());
        stepParameters.addValue("name", step.getName());
        stepParameters.addValue("start", step.getStartDateAsUnixTimestamp());
        stepParameters.addValue("stop", step.getStopDateAsUnixTimestamp());
        stepParameters.addValue("warning", step.getWarningTime());
        stepParameters.addValue("duration", step.getDuration());

        logger.info("write the following values to 'sahi_steps': " + stepParameters.getValues()
                + "\n now execute ....");

        //generate the sql-statement
        SimpleJdbcInsert insertStepResults = new SimpleJdbcInsert(getDataSource()).withTableName("sahi_steps")
                .usingGeneratedKeyColumns("id");

        //execute the sql-statement and save the primary key
        int dbPrimaryKey = insertStepResults.executeAndReturnKey(stepParameters).intValue();
        logger.info("test case step '" + step.getName() + "' has been written to 'sahi_steps' with  primaryKey="
                + dbPrimaryKey);/*from   w w w  . ja  v  a2  s. c om*/
        step.setDbPrimaryKey(dbPrimaryKey);
    }
}

From source file:org.sakuli.services.forwarder.database.dao.impl.DaoTestCaseStepImpl.java

@Override
public void saveTestCaseSteps(SortedSet<TestCaseStep> steps, int primaryKeyOfTestCase) {
    for (TestCaseStep step : steps) {
        LOGGER.info("============== save STEP \"" + step.getName() + "\" ==============");
        MapSqlParameterSource stepParameters = new MapSqlParameterSource();
        stepParameters.addValue("sakuli_cases_id", primaryKeyOfTestCase);
        stepParameters.addValue("result", step.getState().getErrorCode());
        stepParameters.addValue("result_desc", step.getState());
        stepParameters.addValue("name", step.getName());
        stepParameters.addValue("start", step.getStartDateAsUnixTimestamp());
        stepParameters.addValue("stop", step.getStopDateAsUnixTimestamp());
        int warningTime = step.getWarningTime();
        stepParameters.addValue("warning", (warningTime != 0) ? warningTime : null);
        stepParameters.addValue("duration", step.getDuration());

        LOGGER.debug("write the following values to 'sakuli_steps': " + stepParameters.getValues()
                + "\n now execute ....");

        //generate the sql-statement
        SimpleJdbcInsert insertStepResults = new SimpleJdbcInsert(getDataSource()).withTableName("sakuli_steps")
                .usingGeneratedKeyColumns("id");

        //execute the sql-statement and save the primary key
        int dbPrimaryKey = insertStepResults.executeAndReturnKey(stepParameters).intValue();
        LOGGER.info("test case step '" + step.getName()
                + "' has been written to 'sakuli_steps' with  primaryKey=" + dbPrimaryKey);
        step.setDbPrimaryKey(dbPrimaryKey);
    }//from  w w  w .  j  a v  a  2 s. c o  m
}

From source file:annis.administration.DefaultAdministrationDao.java

@SuppressWarnings("unchecked")
private String readSqlFromResource(Resource resource, MapSqlParameterSource args) {
    // XXX: uses raw type, what are the parameters to Map in MapSqlParameterSource?
    Map<String, Object> parameters = args != null ? args.getValues() : new HashMap();
    BufferedReader reader = null;
    try {// w  ww. jav a  2s. c  o  m
        StringBuilder sqlBuf = new StringBuilder();
        reader = new BufferedReader(new InputStreamReader(new FileInputStream(resource.getFile()), "UTF-8"));
        for (String line = reader.readLine(); line != null; line = reader.readLine()) {
            sqlBuf.append(line).append("\n");
        }
        String sql = sqlBuf.toString();
        for (Entry<String, Object> placeHolderEntry : parameters.entrySet()) {
            String key = placeHolderEntry.getKey();
            String value = placeHolderEntry.getValue().toString();
            log.debug("substitution for parameter '" + key + "' in SQL script: " + value);

            sql = sql.replaceAll(key, value);
        }
        return sql;
    } catch (IOException e) {
        log.error("Couldn't read SQL script from resource file.", e);
        throw new FileAccessException("Couldn't read SQL script from resource file.", e);
    } finally {
        if (reader != null) {
            try {
                reader.close();
            } catch (IOException ex) {
                java.util.logging.Logger.getLogger(DefaultAdministrationDao.class.getName()).log(Level.SEVERE,
                        null, ex);
            }
        }
    }
}