Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3676b24d0f | ||
|
|
8512b8ffe4 |
@@ -5,7 +5,7 @@ plugins {
|
|||||||
}
|
}
|
||||||
|
|
||||||
group 'ru.di9'
|
group 'ru.di9'
|
||||||
version '1.9'
|
version '1.9.1'
|
||||||
|
|
||||||
repositories {
|
repositories {
|
||||||
mavenCentral()
|
mavenCentral()
|
||||||
|
|||||||
@@ -33,4 +33,6 @@ public interface JdbcTemplate {
|
|||||||
ResultSetExtractor<T> processGeneratedKey) throws DataAccessException;
|
ResultSetExtractor<T> processGeneratedKey) throws DataAccessException;
|
||||||
|
|
||||||
void transaction(Consumer<JdbcTemplate> consumer);
|
void transaction(Consumer<JdbcTemplate> consumer);
|
||||||
|
|
||||||
|
void update(@Language("GenericSQL") String sql, PreparedStatementProcessor psp);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ public class JdbcTemplateImpl implements JdbcTemplate {
|
|||||||
PreparedStatement preparedStatement = connection.prepareStatement(sql)) {
|
PreparedStatement preparedStatement = connection.prepareStatement(sql)) {
|
||||||
psp.process(preparedStatement);
|
psp.process(preparedStatement);
|
||||||
try (ResultSet resultSet = preparedStatement.executeQuery()) {
|
try (ResultSet resultSet = preparedStatement.executeQuery()) {
|
||||||
return rse.extractData(resultSet);
|
return resultSet.next() ? rse.extractData(resultSet) : null;
|
||||||
}
|
}
|
||||||
} catch (SQLException e) {
|
} catch (SQLException e) {
|
||||||
throw throwDataAccessException(sql, e);
|
throw throwDataAccessException(sql, e);
|
||||||
@@ -145,6 +145,17 @@ public class JdbcTemplateImpl implements JdbcTemplate {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void update(String sql, PreparedStatementProcessor psp) {
|
||||||
|
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) {
|
private <T> ResultSetExtractor<List<T>> createResultSetExtractorList(final RowMapper<T> rowMapper) {
|
||||||
return rs -> {
|
return rs -> {
|
||||||
List<T> resultList;
|
List<T> resultList;
|
||||||
|
|||||||
@@ -112,6 +112,17 @@ public class JdbcTemplateTransactional implements JdbcTemplate, AutoCloseable {
|
|||||||
consumer.accept(this);
|
consumer.accept(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void update(String sql, PreparedStatementProcessor psp) {
|
||||||
|
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) {
|
private <T> ResultSetExtractor<List<T>> createResultSetExtractorList(final RowMapper<T> rowMapper) {
|
||||||
return rs -> {
|
return rs -> {
|
||||||
List<T> resultList;
|
List<T> resultList;
|
||||||
|
|||||||
Reference in New Issue
Block a user