Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1ab82458eb | ||
|
|
515570f057 | ||
|
|
8dba178348 | ||
|
|
4574c841d8 | ||
|
|
c4d459c461 | ||
|
|
3676b24d0f | ||
|
|
8512b8ffe4 |
@@ -5,7 +5,7 @@ plugins {
|
||||
}
|
||||
|
||||
group 'ru.di9'
|
||||
version '1.9'
|
||||
version '1.9.2'
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user