Skip to content

Commit b3b47ed

Browse files
committed
Refactor: JOOQ 형태 이해하며 id 반환
1 parent c50ae4f commit b3b47ed

File tree

3 files changed

+15
-11
lines changed

3 files changed

+15
-11
lines changed

src/main/java/wonjun/stiky/auth/service/AuthService.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,8 @@ public SignupResponse signup(SignupRequest request) {
4949
.provider("local")
5050
.build();
5151

52-
Member savedMember = memberQueryService.save(member);
53-
return SignupResponse.of(savedMember.getId());
52+
Long savedId = memberQueryService.save(member);
53+
return SignupResponse.of(savedId);
5454
}
5555

5656
public TokenDto login(LoginRequest request) {

src/main/java/wonjun/stiky/member/repository/MemberRepository.java

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import lombok.RequiredArgsConstructor;
77
import org.jooq.DSLContext;
88
import org.springframework.stereotype.Repository;
9+
import wonjun.stiky.generated.tables.records.MemberRecord;
910
import wonjun.stiky.member.domain.Member;
1011

1112
@Repository
@@ -20,27 +21,29 @@ public Optional<Member> findByEmail(String email) {
2021
.fetchOptionalInto(Member.class);
2122
}
2223

23-
public Member save(Member member) {
24+
public Long save(Member member) {
2425
if (member.getId() == null) {
2526
return insert(member);
2627
}
28+
2729
return update(member);
2830
}
2931

30-
private Member insert(Member member) {
31-
return dsl.insertInto(MEMBER)
32+
private Long insert(Member member) {
33+
MemberRecord record = dsl.insertInto(MEMBER)
3234
.set(MEMBER.EMAIL, member.getEmail())
3335
.set(MEMBER.PASSWORD, member.getPassword())
3436
.set(MEMBER.NICKNAME, member.getNickname())
3537
.set(MEMBER.ROLE, member.getRole())
3638
.set(MEMBER.PROVIDER, member.getProvider())
3739
.set(MEMBER.PROVIDER_ID, member.getProviderId())
38-
.returning() // DB에서 생성된 ID 포함하여 반환
39-
.fetchOne()
40-
.into(Member.class);
40+
.returning(MEMBER.ID)
41+
.fetchOne();
42+
43+
return record.getId();
4144
}
4245

43-
private Member update(Member member) {
46+
private Long update(Member member) {
4447
dsl.update(MEMBER)
4548
.set(MEMBER.PASSWORD, member.getPassword())
4649
.set(MEMBER.NICKNAME, member.getNickname())
@@ -49,7 +52,8 @@ private Member update(Member member) {
4952
.set(MEMBER.PROVIDER_ID, member.getProviderId())
5053
.where(MEMBER.ID.eq(member.getId()))
5154
.execute();
52-
return member;
55+
56+
return member.getId();
5357
}
5458

5559
}

src/main/java/wonjun/stiky/member/service/MemberQueryService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ public Optional<Member> fetchByEmailOpt(String email) {
2626
}
2727

2828
@Transactional
29-
public Member save(Member member) {
29+
public Long save(Member member) {
3030
return memberRepository.save(member);
3131
}
3232

0 commit comments

Comments
 (0)