我在搜索过程中使用Spring NamedParameterJdbcTemplate,但是当我得到很多结果时,它的执行需要花费几次时间,我不知道是否有办法优化它。 这是我的代码:
NamedParameterJdbcTemplate jt = new NamedParameterJdbcTemplate(dataSource);
StringBuilder sb = new StringBuilder(query);
query = sb.toString();
return jt.query(query, map, new MyRowMapper());
请问您有什么想法吗?
全部谢谢!
答案 0 :(得分:1)
你可以做的事很少
1.为什么每次调用方法时都要创建实例NamedParameterJdbcTemplate
?创建一次并将先前创建的实例传递给方法。
NamedParameterJdbcTemplate jt = new NamedParameterJdbcTemplate(dataSource);
将NamedParameterJdbcTemplate
作为类属性并初始化一次
你在这里尝试什么?
StringBuilder sb = new StringBuilder(query);
query = sb.toString();
如果query
类型为.query()
,请将String
直接传递给MyRowMapper
方法
3.在mapRow
内,确保您在mapRow
方法中提取并仅分配必填字段。这可能会影响执行时间,因为{{1}}会为结果集中的每个记录调用一次。