我正在使用JDBCTemplate来获取记录...我的表有46,000行,我想用rowmapper包装在用户类型对象中。
但是当我尝试下面的代码时,它显示“执行SQL查询[选择USER_ID,来自Q7.USERBSC_INFO的描述,其中STAT_CD ='ACTIVE']”之后没有发生任何事情......我等了15分钟但仍然没有显示任何内容..但申请仍在运作......没有例外
我正在使用DB2的JCC驱动程序,这是一个大型机DB2
但是,当我只运行1500条记录的查询时,它工作得很好......获取记录是否有任何限制?
当我在AQT客户端内运行相同的查询时,它工作正常......
public List<usr> getusr() {
List<usr> list = new ArrayList<usr>();
String query = "Select USER_ID,Desc from Q7.USERBSC_INFO where STAT_CD='ACTIVE'";
list = getJdbcTemplate().query(query, DB2RowMapper.mUsrInfo);
return list;
}
的RowMapper
public static RowMapper mUsrInfo = new RowMapper()
{
public Object mapRow(ResultSet rs, int rowNum) throws SQLException
{
Usr usr=new Usr();
usr.setUsrId(rs.getString("USER_ID"));
usr.setDesc(rs.getString("DESC"));
return usr;
}
};
答案 0 :(得分:0)
您可以限制spring Jdbc Template中的记录数(使用maxRows选项),但不要认为这是这种情况。 我想正在获取的记录()46000的数量是这种延迟的原因......
您可以尝试优化您的查询,否则尝试最后使用此子句可能会有所帮助
OPTIMIZE FOR n ROWS