From f08abdf936c6ebc303f1ade8d7bbc8dbe4c77708 Mon Sep 17 00:00:00 2001 From: Vitaly Takmazov Date: Mon, 23 Oct 2023 10:19:13 +0300 Subject: jdbc: row mapper usage refactoring --- src/main/java/com/juick/service/TagServiceImpl.java | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'src/main/java/com/juick/service/TagServiceImpl.java') diff --git a/src/main/java/com/juick/service/TagServiceImpl.java b/src/main/java/com/juick/service/TagServiceImpl.java index 9b8b4d95..c9384f6a 100644 --- a/src/main/java/com/juick/service/TagServiceImpl.java +++ b/src/main/java/com/juick/service/TagServiceImpl.java @@ -62,6 +62,9 @@ public class TagServiceImpl extends BaseJdbcService implements TagService { return tag; } } + + private final TagMapper tagMapper = new TagMapper(); + @Override public Tag getTag(int tid) { return getTag(0, tid); @@ -78,7 +81,7 @@ public class TagServiceImpl extends BaseJdbcService implements TagService { new MapSqlParameterSource() .addValue("userId", userId) .addValue("tagId", tid), - new TagMapper()); + tagMapper); return list.isEmpty() ? null : list.get(0); } @@ -102,7 +105,7 @@ public class TagServiceImpl extends BaseJdbcService implements TagService { new MapSqlParameterSource() .addValue("userId", userId) .addValue("tagName", tagName), - new TagMapper()); + tagMapper); Tag ret = list.isEmpty() ? null : list.get(0); @@ -144,7 +147,7 @@ public class TagServiceImpl extends BaseJdbcService implements TagService { : holder.getKey().intValue(); } - private static class TagStatsMapper implements RowMapper { + private class TagStatsMapper implements RowMapper { @Override public TagStats mapRow(ResultSet rs, int rowNum) throws SQLException { @@ -156,6 +159,8 @@ public class TagServiceImpl extends BaseJdbcService implements TagService { } } + private final TagStatsMapper tagStatsMapper = new TagStatsMapper(); + @Transactional(readOnly = true) @Override public List getUserTagStats(final int uid) { @@ -164,7 +169,7 @@ public class TagServiceImpl extends BaseJdbcService implements TagService { "FROM (messages INNER JOIN messages_tags ON (messages.user_id=? " + "AND messages.message_id=messages_tags.message_id)) " + "INNER JOIN tags ON messages_tags.tag_id=tags.tag_id GROUP BY tags.tag_id, tags.name ORDER BY tags.name ASC", - new TagStatsMapper(), + tagStatsMapper, uid); } @@ -202,7 +207,7 @@ public class TagServiceImpl extends BaseJdbcService implements TagService { return getNamedParameterJdbcTemplate() .query(sql, new MapSqlParameterSource() .addValue("ts", toDateTime(ts.atOffset(ZoneOffset.UTC)), dateTimeType()), - new TagStatsMapper()); + tagStatsMapper); } @Transactional -- cgit v1.2.3