Example usage for org.springframework.jdbc.core JdbcTemplate setFetchSize

List of usage examples for org.springframework.jdbc.core JdbcTemplate setFetchSize

Introduction

In this page you can find the example usage for org.springframework.jdbc.core JdbcTemplate setFetchSize.

Prototype

public void setFetchSize(int fetchSize) 

Source Link

Document

Set the fetch size for this JdbcTemplate.

Usage

From source file:no.dusken.barweb.plugin.duskeninternplugin.admin.ImportPersonController.java

public ModelAndView doImport() {
    Map<String, String> map = new HashMap<String, String>();
    if (isImporting) {
        log.error("import already running");
        map.put("message", "Import already running");
        return new ModelAndView(view, map);

    } else {/*ww w.j  a v a 2  s .  co  m*/
        isImporting = true;
    }

    JdbcTemplate jt = getJdbcTemplate();
    jt.setFetchSize(100);

    Gjeng g = gjengService.getByName("Under dusken");
    if (g == null) {
        g = new Gjeng();
        g.setDefaultGjeng(true);
        g.setName("Under dusken");
        gjengService.saveAndFlush(g);
    }
    // importing persons
    SqlRowSet medarbeidere = jt.queryForRowSet("SELECT * FROM medarbeidere");
    while (medarbeidere.next()) {
        Long externalID = Long.parseLong(medarbeidere.getString("medarb_ref"));
        String username = medarbeidere.getString("brukernavn");
        if (username == null || username.equals("")) {
            continue;
        }
        // use username instead of external id
        BarPerson p = barPersonService.getByUsername(username);
        if (p == null) {
            p = new BarPerson();
            p.setExternalID(externalID);
            p.setUsername(username);
            p.setFirstname(medarbeidere.getString("fornavn"));
            p.setSurname(medarbeidere.getString("etternavn"));
            p.setActive(medarbeidere.getBoolean("aktiv"));
            p.setEmailAddress(username + "@underdusken.no");
            p.setMoney(medarbeidere.getInt("saldo"));
            p.setExternalSource("db_web");
            p.setExternalID(externalID);
            p.setGjeng(g);
            p = barPersonService.save(p);
        }
        log.info("Imported BarPerson: " + p.toString());

    }
    return new ModelAndView(view, map);
}

From source file:org.string_db.psicquic.index.StringDbScoresDataReader.java

StringDbScoresDataReader(DbFacade dbFacade, JdbcTemplate jdbcTemplate, Integer speciesId) {
    log.info("init()");
    try {//from  w  ww. j a v  a  2 s  .  co m
        this.scoreTypes = dbFacade.loadScoreTypes();
        jdbcTemplate.setFetchSize(FETCH_SIZE);
        preparedStatement = jdbcTemplate.getDataSource().getConnection()
                .prepareStatement(scoresQuery + speciesId);

        //            this.rs = jdbcTemplate.queryForRowSet(scoresQuery + speciesId);
        this.rs = preparedStatement.executeQuery();
        nextCalled = false;
    } catch (Exception e) {
        throw new ExceptionInInitializerError(e);
    }
    log.info("done()");
}

From source file:org.openscore.engine.queue.repositories.ExecutionQueueRepositoryImpl.java

private <T> List<T> doSelect(String sql, int maxRows, RowMapper<T> rowMapper, Object... params) {
    JdbcTemplate template = jdbcTemplateMap.get(maxRows);
    if (template == null)
        try {/*from w w  w .  j a v a  2  s.  c  om*/
            lock.lock();
            template = new JdbcTemplate(dataSource);
            template.setFetchSize(maxRows);
            template.setMaxRows(maxRows);
            jdbcTemplateMap.put(maxRows, template);
        } finally {
            lock.unlock();
        }
    return doSelect0(template, sql, rowMapper, params);
}

From source file:org.springframework.jdbc.core.JdbcTemplateTests.java

private void doTestStrings(JdbcTemplateCallback jdbcTemplateCallback, boolean usePreparedStatement,
        Integer fetchSize, Integer maxRows, Integer queryTimeout, Object argument) throws Exception {

    String sql = "SELECT FORENAME FROM CUSTMR";
    String[] results = { "rod", "gary", " portia" };

    class StringHandler implements RowCallbackHandler {
        private List list = new LinkedList();

        public void processRow(ResultSet rs) throws SQLException {
            list.add(rs.getString(1));/*w  w  w. j a  v  a  2 s  . c o m*/
        }

        public String[] getStrings() {
            return (String[]) list.toArray(new String[list.size()]);
        }
    }

    MockControl ctrlResultSet = MockControl.createControl(ResultSet.class);
    ResultSet mockResultSet = (ResultSet) ctrlResultSet.getMock();
    mockResultSet.next();
    ctrlResultSet.setReturnValue(true);
    mockResultSet.getString(1);
    ctrlResultSet.setReturnValue(results[0]);
    mockResultSet.next();
    ctrlResultSet.setReturnValue(true);
    mockResultSet.getString(1);
    ctrlResultSet.setReturnValue(results[1]);
    mockResultSet.next();
    ctrlResultSet.setReturnValue(true);
    mockResultSet.getString(1);
    ctrlResultSet.setReturnValue(results[2]);
    mockResultSet.next();
    ctrlResultSet.setReturnValue(false);
    mockResultSet.close();
    ctrlResultSet.setVoidCallable();

    MockControl ctrlStatement = MockControl.createControl(PreparedStatement.class);
    PreparedStatement mockStatement = (PreparedStatement) ctrlStatement.getMock();
    if (fetchSize != null) {
        mockStatement.setFetchSize(fetchSize.intValue());
    }
    if (maxRows != null) {
        mockStatement.setMaxRows(maxRows.intValue());
    }
    if (queryTimeout != null) {
        mockStatement.setQueryTimeout(queryTimeout.intValue());
    }
    if (argument != null) {
        mockStatement.setObject(1, argument);
    }
    if (usePreparedStatement) {
        mockStatement.executeQuery();
    } else {
        mockStatement.executeQuery(sql);
    }
    ctrlStatement.setReturnValue(mockResultSet);
    if (debugEnabled) {
        mockStatement.getWarnings();
        ctrlStatement.setReturnValue(null);
    }
    mockStatement.close();
    ctrlStatement.setVoidCallable();

    if (usePreparedStatement) {
        mockConnection.prepareStatement(sql);
    } else {
        mockConnection.createStatement();
    }
    ctrlConnection.setReturnValue(mockStatement);

    ctrlResultSet.replay();
    ctrlStatement.replay();
    replay();

    StringHandler sh = new StringHandler();
    JdbcTemplate template = new JdbcTemplate();
    template.setDataSource(mockDataSource);
    if (fetchSize != null) {
        template.setFetchSize(fetchSize.intValue());
    }
    if (maxRows != null) {
        template.setMaxRows(maxRows.intValue());
    }
    if (queryTimeout != null) {
        template.setQueryTimeout(queryTimeout.intValue());
    }
    jdbcTemplateCallback.doInJdbcTemplate(template, sql, sh);

    // Match
    String[] forenames = sh.getStrings();
    assertTrue("same length", forenames.length == results.length);
    for (int i = 0; i < forenames.length; i++) {
        assertTrue("Row " + i + " matches", forenames[i].equals(results[i]));
    }

    ctrlResultSet.verify();
    ctrlStatement.verify();
}

From source file:uk.ac.ebi.atlas.search.diffanalytics.DiffAnalyticsDao.java

public void visitEachExpression(Optional<? extends Collection<IndexedAssayGroup>> indexedContrasts,
        Optional<? extends Collection<String>> geneIds, final Visitor<DiffAnalytics> visitor, String specie) {
    Optional<ImmutableSet<IndexedAssayGroup>> uniqueIndexedContrasts = uniqueIndexedContrasts(indexedContrasts);

    log("visitEachExpression", uniqueIndexedContrasts, geneIds);

    Stopwatch stopwatch = Stopwatch.createStarted();

    String species = "";
    if (StringUtils.isNotBlank(specie)) {
        species = specie;//from www  . j  ava 2  s .c o  m
    }

    DatabaseQuery<Object> indexedContrastQuery = buildSelect(uniqueIndexedContrasts, geneIds, species);

    final MutableInt count = new MutableInt(0);

    JdbcTemplate template = new JdbcTemplate(dataSource);

    template.setFetchSize(5000);

    try {
        template.query(indexedContrastQuery.getQuery(), new RowCallbackHandler() {

            @Override
            public void processRow(ResultSet resultSet) throws SQLException {
                count.increment();

                DiffAnalytics dbe = dbeRowMapper.mapRow(resultSet, count.intValue());

                try {
                    visitor.visit(dbe);
                } catch (VisitorException e) {
                    // throw SQLException so result set is closed
                    throw new SQLException(e);
                }
            }

        }, indexedContrastQuery.getParameters().toArray());
    } catch (DataAccessException e) {

        if (e.getCause() != null && e.getCause().getCause() != null
                && e.getCause().getCause() instanceof VisitorException) {
            throw (VisitorException) (e.getCause().getCause());
        } else {
            throw e;
        }
    }

    stopwatch.stop();
    LOGGER.debug(String.format("visitEachExpression processed %s expressions in %s seconds", count.intValue(),
            stopwatch.elapsed(TimeUnit.SECONDS)));
}