18
18
import org .apache .ibatis .session .ExecutorType ;
19
19
import org .apache .ibatis .session .SqlSession ;
20
20
import org .apache .ibatis .session .SqlSessionFactory ;
21
+ import org .mybatis .spring .SqlSessionTemplate ;
21
22
import org .springframework .batch .item .database .AbstractPagingItemReader ;
22
23
23
24
import java .util .HashMap ;
@@ -43,7 +44,7 @@ public class MyBatisPagingItemReader<T> extends AbstractPagingItemReader<T> {
43
44
44
45
private SqlSessionFactory sqlSessionFactory ;
45
46
46
- private SqlSession sqlSession ;
47
+ private SqlSessionTemplate sqlSessionTemplate ;
47
48
48
49
private Map <String , Object > parameterValues ;
49
50
@@ -94,13 +95,13 @@ public void afterPropertiesSet() throws Exception {
94
95
@ Override
95
96
protected void doOpen () throws Exception {
96
97
super .doOpen ();
97
- sqlSession = sqlSessionFactory . openSession ( ExecutorType .BATCH );
98
+ sqlSessionTemplate = new SqlSessionTemplate ( sqlSessionFactory , ExecutorType .BATCH );
98
99
}
99
100
100
101
@ Override
101
102
protected void doClose () throws Exception {
102
- if (sqlSession != null ) {
103
- sqlSession .close ();
103
+ if (sqlSessionTemplate != null ) {
104
+ sqlSessionTemplate .close ();
104
105
}
105
106
super .doClose ();
106
107
}
@@ -119,7 +120,7 @@ protected void doReadPage() {
119
120
} else {
120
121
results .clear ();
121
122
}
122
- results .addAll (sqlSession .selectList (queryId , parameters ));
123
+ results .addAll (sqlSessionTemplate .selectList (queryId , parameters ));
123
124
}
124
125
125
126
@ Override
0 commit comments