我正在使用iBatis作为Java中的ORM框架。
我有一条选择声明
<select id="getList" resultMap="correctMap">
SELECT *
FROM SOME_TABLE
</select>
我正在使用queryForList方法:
List<MappedObject> list = getSqlMapClientTemplate().queryForList("getList");
但是它会检索大量数据,并且此查询的性能非常慢。
我对此问题的假设是iBatis具有默认的提取大小(例如,在JDBS中为10),这就是为什么它这么慢的原因。所以我想设置更大的获取大小(例如1000)。我该怎么做?
还是我看错了方向?
注意:我需要所有数据,因此在
queryForList
方法中设置最大结果对我来说不是合适的解决方案。List queryForList(String id,
Object parameterObject,
int skip,
int max)
最佳答案
<select id="SELECT_TABLE" parameterType="String" fetchSize="500" resultType="hashmap">
SELECT * FROM TABLE WHERE NAME = #{value}
</select>