NamedParameterJdbcTemplate

NamedParameterJdbcTemplate

我想更改NamedParameterJdbcTemplate的结果集行为。 (禁用结果集缓存)

例如,使用postgres jdbc驱动程序,您可以像这样更改它:

        conn = datasource.getConnection();
        conn.setAutoCommit(false);
        stmt = conn.createStatement(java.sql.ResultSet.TYPE_FORWARD_ONLY, java.sql.ResultSet.CONCUR_READ_ONLY);
        stmt.setFetchSize(50);


我如何在春季/春季靴中实现呢?

最佳答案

如果目标是更改fetchSize,则可以通过JdbcTemplate实例进行操作:

JdbcTemplate jdbcTemplate = new JdbcTemplate(datasource);
jdbcTemplate.setFetchSize(fetchSize);
NamedParameterJdbcTemplate template = new NamedParameterJdbcTemplate(jdbcTemplate);


UPD

说到更改缓存,您可以尝试更改private volatile int cacheLimit实例的NamedParameterJdbcTemplate

NamedParameterJdbcTemplate template = new NamedParameterJdbcTemplate(jdbcTemplate);
template.setCacheLimit(0);


有可能,但我没有探索

07-27 13:40