我想更改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);
我如何在spring / spring-boot中实现它?
答案 0 :(得分:0)
如果目标是更改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);
可能,但我没有探索