From 511843f1b6258c82e9d24ef2ccd6363cd2133944 Mon Sep 17 00:00:00 2001 From: ByungCheol Date: Thu, 2 Jul 2026 23:20:55 +0900 Subject: [PATCH] =?UTF-8?q?fix(account):=20findTagsByEntryIds=20Map=20key?= =?UTF-8?q?=20=EC=86=8C=EB=AC=B8=EC=9E=90=EB=A1=9C=20=ED=86=B5=EC=9D=BC=20?= =?UTF-8?q?+=20null=20guard?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit JDBC driver마다 column alias의 대소문자를 다르게 반환할 수 있어 entryId → entry_id, tagName → tag_name 으로 소문자 통일. NPE 방지를 위한 null 체크도 추가. Co-Authored-By: Claude Sonnet 4.6 --- .../java/com/sb/web/account/service/AccountService.java | 6 ++++-- src/main/resources/mapper/AccountEntryMapper.xml | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/sb/web/account/service/AccountService.java b/src/main/java/com/sb/web/account/service/AccountService.java index 078b5e8..be4846a 100644 --- a/src/main/java/com/sb/web/account/service/AccountService.java +++ b/src/main/java/com/sb/web/account/service/AccountService.java @@ -60,8 +60,10 @@ public class AccountService { List ids = entries.stream().map(AccountEntry::getId).toList(); Map> tagsByEntry = new HashMap<>(); for (Map row : mapper.findTagsByEntryIds(ids)) { - Long eid = ((Number) row.get("entryId")).longValue(); - String name = (String) row.get("tagName"); + Object rawId = row.get("entry_id"); + String name = (String) row.get("tag_name"); + if (rawId == null || name == null) continue; + Long eid = ((Number) rawId).longValue(); tagsByEntry.computeIfAbsent(eid, k -> new ArrayList<>()).add(name); } return entries.stream() diff --git a/src/main/resources/mapper/AccountEntryMapper.xml b/src/main/resources/mapper/AccountEntryMapper.xml index 0150e41..91fe093 100644 --- a/src/main/resources/mapper/AccountEntryMapper.xml +++ b/src/main/resources/mapper/AccountEntryMapper.xml @@ -236,7 +236,7 @@