@@ -37,6 +37,7 @@ import org.mybatis.dynamic.sql.util.kotlin.MyBatisDslMarker
37
37
import org.mybatis.dynamic.sql.util.kotlin.SelectCompleter
38
38
import org.mybatis.dynamic.sql.util.kotlin.UpdateCompleter
39
39
import org.springframework.dao.EmptyResultDataAccessException
40
+ import org.springframework.jdbc.core.RowMapper
40
41
import org.springframework.jdbc.core.namedparam.BeanPropertySqlParameterSource
41
42
import org.springframework.jdbc.core.namedparam.MapSqlParameterSource
42
43
import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate
@@ -193,6 +194,11 @@ fun NamedParameterJdbcTemplate.selectDistinct(
193
194
fun <T > NamedParameterJdbcTemplate.selectList (
194
195
selectStatement : SelectStatementProvider ,
195
196
rowMapper : (rs: ResultSet , rowNum: Int ) -> T
197
+ ): List <T > = selectList(selectStatement, RowMapper (rowMapper))
198
+
199
+ fun <T > NamedParameterJdbcTemplate.selectList (
200
+ selectStatement : SelectStatementProvider ,
201
+ rowMapper : RowMapper <T >
196
202
): List <T > =
197
203
query(selectStatement.selectStatement, selectStatement.parameters, rowMapper)
198
204
@@ -217,10 +223,15 @@ fun NamedParameterJdbcTemplate.selectOne(
217
223
this
218
224
)
219
225
220
- @SuppressWarnings(" SwallowedException" )
221
226
fun <T > NamedParameterJdbcTemplate.selectOne (
222
227
selectStatement : SelectStatementProvider ,
223
228
rowMapper : (rs: ResultSet , rowNum: Int ) -> T
229
+ ): T ? = selectOne(selectStatement, RowMapper (rowMapper))
230
+
231
+ @SuppressWarnings(" SwallowedException" )
232
+ fun <T > NamedParameterJdbcTemplate.selectOne (
233
+ selectStatement : SelectStatementProvider ,
234
+ rowMapper : RowMapper <T >
224
235
): T ? = try {
225
236
queryForObject(selectStatement.selectStatement, selectStatement.parameters, rowMapper)
226
237
} catch (e: EmptyResultDataAccessException ) {
@@ -251,6 +262,9 @@ class SelectListMapperGatherer(
251
262
) {
252
263
fun <T > withRowMapper (rowMapper : (rs: ResultSet , rowNum: Int ) -> T ): List <T > =
253
264
template.selectList(selectStatement, rowMapper)
265
+
266
+ fun <T > withRowMapper (rowMapper : RowMapper <T >): List <T > =
267
+ template.selectList(selectStatement, rowMapper)
254
268
}
255
269
256
270
@MyBatisDslMarker
@@ -260,6 +274,9 @@ class SelectOneMapperGatherer(
260
274
) {
261
275
fun <T > withRowMapper (rowMapper : (rs: ResultSet , rowNum: Int ) -> T ): T ? =
262
276
template.selectOne(selectStatement, rowMapper)
277
+
278
+ fun <T > withRowMapper (rowMapper : RowMapper <T >): T ? =
279
+ template.selectOne(selectStatement, rowMapper)
263
280
}
264
281
265
282
@MyBatisDslMarker
0 commit comments