From 03dd1af07e6bd24e883d96b522c97ee69eabde8b Mon Sep 17 00:00:00 2001 From: ZhouXY108 Date: Fri, 11 Aug 2023 01:34:37 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A0=BC=E5=BC=8F=E5=8C=96=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xyz/zhouxy/jdbc/SimpleJdbcTemplate.java | 19 +++++++-------- .../zhouxy/jdbc/SimpleJdbcTemplateTests.java | 23 +++++++++++-------- 2 files changed, 23 insertions(+), 19 deletions(-) diff --git a/src/main/java/xyz/zhouxy/jdbc/SimpleJdbcTemplate.java b/src/main/java/xyz/zhouxy/jdbc/SimpleJdbcTemplate.java index 461b952..b6c0811 100644 --- a/src/main/java/xyz/zhouxy/jdbc/SimpleJdbcTemplate.java +++ b/src/main/java/xyz/zhouxy/jdbc/SimpleJdbcTemplate.java @@ -138,26 +138,26 @@ public class SimpleJdbcTemplate { } public Optional queryToString(String sql, Object... params) throws SQLException { - return queryFirst(sql, params, (ResultSet rs, int rowNumber) -> rs.getString(1)); + return queryFirst(sql, params, (rs, rowNumber) -> rs.getString(1)); } public OptionalInt queryToInt(String sql, Object... params) throws SQLException { - Optional result = queryFirst(sql, params, (ResultSet rs, int rowNumber) -> rs.getInt(1)); + Optional result = queryFirst(sql, params, (rs, rowNumber) -> rs.getInt(1)); return OptionalUtil.toOptionalInt(result); } public OptionalLong queryToLong(String sql, Object... params) throws SQLException { - Optional result = queryFirst(sql, params, (ResultSet rs, int rowNumber) -> rs.getLong(1)); + Optional result = queryFirst(sql, params, (rs, rowNumber) -> rs.getLong(1)); return OptionalUtil.toOptionalLong(result); } public OptionalDouble queryToDouble(String sql, Object... params) throws SQLException { - Optional result = queryFirst(sql, params, (ResultSet rs, int rowNumber) -> rs.getDouble(1)); + Optional result = queryFirst(sql, params, (rs, rowNumber) -> rs.getDouble(1)); return OptionalUtil.toOptionalDouble(result); } public Optional queryToBigDecimal(String sql, Object... params) throws SQLException { - return queryFirst(sql, params, (ResultSet rs, int rowNumber) -> rs.getBigDecimal(1)); + return queryFirst(sql, params, (rs, rowNumber) -> rs.getBigDecimal(1)); } public int update(String sql, Object... params) throws SQLException { @@ -201,7 +201,8 @@ public class SimpleJdbcTemplate { atom.execute(); conn.commit(); conn.setAutoCommit(true); - } catch (Exception e) { + } + catch (Exception e) { conn.rollback(); conn.setAutoCommit(true); throw e; @@ -240,13 +241,13 @@ public class SimpleJdbcTemplate { .toArray(); } - public static List buildBatchParams(final Collection c, final Function function) { + public static List buildBatchParams(final Collection c, final Function func) { Preconditions.checkNotNull(c, "The collection can not be null."); - Preconditions.checkNotNull(function, "The function can not be null."); + Preconditions.checkNotNull(func, "The func can not be null."); if (MoreCollections.isEmpty(c)) { return Collections.emptyList(); } - return c.stream().map(function).collect(Collectors.toList()); + return c.stream().map(func).collect(Collectors.toList()); } private ParamBuilder() { diff --git a/src/test/java/xyz/zhouxy/jdbc/SimpleJdbcTemplateTests.java b/src/test/java/xyz/zhouxy/jdbc/SimpleJdbcTemplateTests.java index be860c7..5eaffb9 100644 --- a/src/test/java/xyz/zhouxy/jdbc/SimpleJdbcTemplateTests.java +++ b/src/test/java/xyz/zhouxy/jdbc/SimpleJdbcTemplateTests.java @@ -26,7 +26,7 @@ class SimpleJdbcTemplateTests { private static final Logger log = LoggerFactory.getLogger(SimpleJdbcTemplateTests.class); - final DataSource dataSource; + private static final DataSource dataSource; String[] cStruct = { "id", @@ -37,26 +37,28 @@ class SimpleJdbcTemplateTests { "status" }; - SimpleJdbcTemplateTests() { + static { HikariConfig config = new HikariConfig(); - config.setJdbcUrl("jdbc:postgresql://localhost:5432/plusone"); + config.setJdbcUrl("jdbc:postgresql://localhost:5432/jdbctest"); config.setUsername("postgres"); config.setPassword("zhouxy108"); - this.dataSource = new HikariDataSource(config); + config.setMaximumPoolSize(800); + config.setConnectionTimeout(1000000); + dataSource = new HikariDataSource(config); } @Test void testQuery() throws SQLException { - try (Connection conn = this.dataSource.getConnection()) { - Object[] params = buildParams("501533", "501554", "544599"); + try (Connection conn = dataSource.getConnection()) { + Object[] ids = buildParams("501533", "501554", "544599"); String sql = SQL.newJdbcSql() .SELECT("*") .FROM("test_table") - .WHERE(IN("id", params)) + .WHERE(IN("id", ids)) .toString(); log.info(sql); List rs = SimpleJdbcTemplate.connect(conn) - .queryToRecordList(sql, params); + .queryToRecordList(sql, ids); assertNotNull(rs); for (DbRecord baseEntity : rs) { // log.info("id: {}", baseEntity.getValueAsString("id")); @@ -73,12 +75,13 @@ class SimpleJdbcTemplateTests { .tx(() -> { SimpleJdbcTemplate.connect(conn) .update("INSERT INTO base_table (created_by, create_time, status) VALUES (?, now(), 0)", 585757); - Optional> first = SimpleJdbcTemplate.connect(conn) + Optional> first = SimpleJdbcTemplate.connect(conn) .queryFirst("SELECT * FROM base_table WHERE created_by = ?", 585757); log.info("first: {}", first); throw new NullPointerException(); }); - } catch (Exception e) { + } + catch (Exception e) { log.error(e.getMessage(), e); } }