7 Commits
v1.9 ... v1.9.2

Author SHA1 Message Date
lcarlyl
1ab82458eb Merge remote-tracking branch 'origin/master' 2022-11-30 16:58:46 +03:00
lcarlyl
515570f057 fix query 2022-11-30 16:56:42 +03:00
DmitriyMX
8dba178348 Merge pull request 'change version and add update' (#1) from feature/update into master
Reviewed-on: https://dev.di9.ru/gitea/dmitriymx/jdbc-template/pulls/1
2022-09-25 02:02:50 +03:00
lCarLyl
4574c841d8 add throws DataAccessException 2022-09-25 01:59:55 +03:00
lCarLyl
c4d459c461 add throws DataAccessException 2022-09-25 01:57:58 +03:00
lCarLyl
3676b24d0f change version and add update 2022-09-25 01:40:41 +03:00
lCarLyl
8512b8ffe4 fix ResultSet not positioned properly, perhaps you need to call next. 2022-09-25 01:10:28 +03:00
4 changed files with 29 additions and 3 deletions

View File

@@ -5,7 +5,7 @@ plugins {
}
group 'ru.di9'
version '1.9'
version '1.9.2'
repositories {
mavenCentral()

View File

@@ -33,4 +33,6 @@ public interface JdbcTemplate {
ResultSetExtractor<T> processGeneratedKey) throws DataAccessException;
void transaction(Consumer<JdbcTemplate> consumer);
void update(@Language("GenericSQL") String sql, PreparedStatementProcessor psp) throws DataAccessException;
}

View File

@@ -1,6 +1,7 @@
package ru.di9.jdbc;
import org.intellij.lang.annotations.Language;
import org.jetbrains.annotations.Nullable;
import javax.sql.DataSource;
import java.sql.*;
@@ -50,6 +51,7 @@ public class JdbcTemplateImpl implements JdbcTemplate {
}
@Override
@Nullable
public <T> T query(@Language("GenericSQL") String sql, PreparedStatementProcessor psp,
ResultSetExtractor<T> rse) throws DataAccessException {
try (Connection connection = dataSource.getConnection();
@@ -145,6 +147,17 @@ public class JdbcTemplateImpl implements JdbcTemplate {
}
}
@Override
public void update(String sql, PreparedStatementProcessor psp) throws DataAccessException {
try (PreparedStatement statement = dataSource.getConnection().prepareStatement(sql)){
psp.process(statement);
statement.executeUpdate();
}catch (SQLException e){
throw throwDataAccessException(sql, e);
}
}
private <T> ResultSetExtractor<List<T>> createResultSetExtractorList(final RowMapper<T> rowMapper) {
return rs -> {
List<T> resultList;

View File

@@ -112,6 +112,17 @@ public class JdbcTemplateTransactional implements JdbcTemplate, AutoCloseable {
consumer.accept(this);
}
@Override
public void update(String sql, PreparedStatementProcessor psp) throws DataAccessException {
try (PreparedStatement statement = connection.prepareStatement(sql)) {
psp.process(statement);
statement.executeUpdate();
} catch (SQLException e) {
throw throwDataAccessException(sql, e);
}
}
private <T> ResultSetExtractor<List<T>> createResultSetExtractorList(final RowMapper<T> rowMapper) {
return rs -> {
List<T> resultList;