From dbf6a2a21264d2e9267176b56d30db8aed501e1e Mon Sep 17 00:00:00 2001 From: hambining Date: Fri, 28 Feb 2025 05:39:47 +0900 Subject: [PATCH 1/7] Move Directories --- ham/src/main/java/com/example/ham/HamApplication.java | 6 +++--- .../java/com/example/{ => ham}/config/SpringConfig.java | 6 +++--- ham/src/main/java/com/example/{ => ham}/domain/Answer.java | 2 +- ham/src/main/java/com/example/{ => ham}/domain/Member.java | 2 +- .../main/java/com/example/{ => ham}/domain/Question.java | 2 +- .../{ => ham}/repository/JdbcTemplateMemberRepository.java | 4 ++-- .../com/example/{ => ham}/repository/MemberRepository.java | 4 ++-- 7 files changed, 13 insertions(+), 13 deletions(-) rename ham/src/main/java/com/example/{ => ham}/config/SpringConfig.java (85%) rename ham/src/main/java/com/example/{ => ham}/domain/Answer.java (92%) rename ham/src/main/java/com/example/{ => ham}/domain/Member.java (93%) rename ham/src/main/java/com/example/{ => ham}/domain/Question.java (93%) rename ham/src/main/java/com/example/{ => ham}/repository/JdbcTemplateMemberRepository.java (96%) rename ham/src/main/java/com/example/{ => ham}/repository/MemberRepository.java (76%) diff --git a/ham/src/main/java/com/example/ham/HamApplication.java b/ham/src/main/java/com/example/ham/HamApplication.java index b14916b..6cfb9de 100644 --- a/ham/src/main/java/com/example/ham/HamApplication.java +++ b/ham/src/main/java/com/example/ham/HamApplication.java @@ -1,8 +1,8 @@ package com.example.ham; -import com.example.config.SpringConfig; -import com.example.domain.Member; -import com.example.repository.MemberRepository; +import com.example.ham.config.SpringConfig; +import com.example.ham.domain.Member; +import com.example.ham.repository.MemberRepository; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.AnnotationConfigApplicationContext; diff --git a/ham/src/main/java/com/example/config/SpringConfig.java b/ham/src/main/java/com/example/ham/config/SpringConfig.java similarity index 85% rename from ham/src/main/java/com/example/config/SpringConfig.java rename to ham/src/main/java/com/example/ham/config/SpringConfig.java index 6d8fc3c..b5f5678 100644 --- a/ham/src/main/java/com/example/config/SpringConfig.java +++ b/ham/src/main/java/com/example/ham/config/SpringConfig.java @@ -1,7 +1,7 @@ -package com.example.config; +package com.example.ham.config; -import com.example.repository.JdbcTemplateMemberRepository; -import com.example.repository.MemberRepository; +import com.example.ham.repository.JdbcTemplateMemberRepository; +import com.example.ham.repository.MemberRepository; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.jdbc.datasource.DriverManagerDataSource; diff --git a/ham/src/main/java/com/example/domain/Answer.java b/ham/src/main/java/com/example/ham/domain/Answer.java similarity index 92% rename from ham/src/main/java/com/example/domain/Answer.java rename to ham/src/main/java/com/example/ham/domain/Answer.java index 9b064a9..7399495 100644 --- a/ham/src/main/java/com/example/domain/Answer.java +++ b/ham/src/main/java/com/example/ham/domain/Answer.java @@ -1,4 +1,4 @@ -package com.example.domain; +package com.example.ham.domain; import jakarta.persistence.*; import lombok.Getter; diff --git a/ham/src/main/java/com/example/domain/Member.java b/ham/src/main/java/com/example/ham/domain/Member.java similarity index 93% rename from ham/src/main/java/com/example/domain/Member.java rename to ham/src/main/java/com/example/ham/domain/Member.java index b0a870c..6497c2f 100644 --- a/ham/src/main/java/com/example/domain/Member.java +++ b/ham/src/main/java/com/example/ham/domain/Member.java @@ -1,4 +1,4 @@ -package com.example.domain; +package com.example.ham.domain; import lombok.Getter; import lombok.Setter; diff --git a/ham/src/main/java/com/example/domain/Question.java b/ham/src/main/java/com/example/ham/domain/Question.java similarity index 93% rename from ham/src/main/java/com/example/domain/Question.java rename to ham/src/main/java/com/example/ham/domain/Question.java index d8ddfa0..9172aa2 100644 --- a/ham/src/main/java/com/example/domain/Question.java +++ b/ham/src/main/java/com/example/ham/domain/Question.java @@ -1,4 +1,4 @@ -package com.example.domain; +package com.example.ham.domain; import jakarta.persistence.*; import lombok.Getter; diff --git a/ham/src/main/java/com/example/repository/JdbcTemplateMemberRepository.java b/ham/src/main/java/com/example/ham/repository/JdbcTemplateMemberRepository.java similarity index 96% rename from ham/src/main/java/com/example/repository/JdbcTemplateMemberRepository.java rename to ham/src/main/java/com/example/ham/repository/JdbcTemplateMemberRepository.java index abc0519..946cdbf 100644 --- a/ham/src/main/java/com/example/repository/JdbcTemplateMemberRepository.java +++ b/ham/src/main/java/com/example/ham/repository/JdbcTemplateMemberRepository.java @@ -1,6 +1,6 @@ -package com.example.repository; +package com.example.ham.repository; -import com.example.domain.Member; +import com.example.ham.domain.Member; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.core.RowMapper; import org.springframework.jdbc.core.namedparam.MapSqlParameterSource; diff --git a/ham/src/main/java/com/example/repository/MemberRepository.java b/ham/src/main/java/com/example/ham/repository/MemberRepository.java similarity index 76% rename from ham/src/main/java/com/example/repository/MemberRepository.java rename to ham/src/main/java/com/example/ham/repository/MemberRepository.java index f98b843..2bd8885 100644 --- a/ham/src/main/java/com/example/repository/MemberRepository.java +++ b/ham/src/main/java/com/example/ham/repository/MemberRepository.java @@ -1,6 +1,6 @@ -package com.example.repository; +package com.example.ham.repository; -import com.example.domain.Member; +import com.example.ham.domain.Member; import java.util.List; import java.util.Optional; From 9a1ac6b05ff781f771f72cfb15d833690e4bc3ee Mon Sep 17 00:00:00 2001 From: hambining Date: Fri, 28 Feb 2025 05:49:36 +0900 Subject: [PATCH 2/7] Remove unnecessary test codes in Application file --- .../java/com/example/ham/HamApplication.java | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/ham/src/main/java/com/example/ham/HamApplication.java b/ham/src/main/java/com/example/ham/HamApplication.java index 6cfb9de..75e6362 100644 --- a/ham/src/main/java/com/example/ham/HamApplication.java +++ b/ham/src/main/java/com/example/ham/HamApplication.java @@ -1,31 +1,13 @@ package com.example.ham; -import com.example.ham.config.SpringConfig; -import com.example.ham.domain.Member; -import com.example.ham.repository.MemberRepository; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.context.annotation.AnnotationConfigApplicationContext; @SpringBootApplication public class HamApplication { public static void main(String[] args) { SpringApplication.run(HamApplication.class, args); - - AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(SpringConfig.class); - MemberRepository repository = context.getBean(MemberRepository.class); - - Member member = new Member(1L, "Ham"); - Member member1 = new Member(); - member1.setName("Ham2"); - member1.setId(2L); - repository.save(member); - repository.save(member1); - - repository.findAll().forEach(System.out::println); - repository.findById(1L).stream().forEach(System.out::println); - repository.findByName("Ham").stream().forEach(System.out::println); } } From 0c2f62d16e77e2731b5329af51ca5dd837c28bdf Mon Sep 17 00:00:00 2001 From: hambining Date: Fri, 28 Feb 2025 06:04:17 +0900 Subject: [PATCH 3/7] Create MemberService.java --- .../example/ham/service/MemberService.java | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 ham/src/main/java/com/example/ham/service/MemberService.java diff --git a/ham/src/main/java/com/example/ham/service/MemberService.java b/ham/src/main/java/com/example/ham/service/MemberService.java new file mode 100644 index 0000000..6ee6f84 --- /dev/null +++ b/ham/src/main/java/com/example/ham/service/MemberService.java @@ -0,0 +1,33 @@ +package com.example.ham.service; + +import com.example.ham.domain.Member; +import com.example.ham.repository.MemberRepository; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Optional; + +@Service +public class MemberService { + private final MemberRepository memberRepository; + + public MemberService(MemberRepository memberRepository) { + this.memberRepository = memberRepository; + } + + public Member save(Member member) { + return memberRepository.save(member); + } + + public Optional findById(Long id) { + return memberRepository.findById(id); + } + + public Optional findByName(String name) { + return memberRepository.findByName(name); + } + + public List findMembers() { + return memberRepository.findAll(); + } +} From d82938778ce991b31ea03ce22d1b411f17c9970d Mon Sep 17 00:00:00 2001 From: hambining Date: Fri, 28 Feb 2025 06:04:29 +0900 Subject: [PATCH 4/7] Create MemberController.java --- .../example/ham/controller/MemberController.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 ham/src/main/java/com/example/ham/controller/MemberController.java diff --git a/ham/src/main/java/com/example/ham/controller/MemberController.java b/ham/src/main/java/com/example/ham/controller/MemberController.java new file mode 100644 index 0000000..4b6945c --- /dev/null +++ b/ham/src/main/java/com/example/ham/controller/MemberController.java @@ -0,0 +1,14 @@ +package com.example.ham.controller; + +import com.example.ham.service.MemberService; +import org.springframework.web.bind.annotation.*; + +@RestController +@RequestMapping("/members") +public class MemberController { + private final MemberService memberService; + + public MemberController(MemberService memberService) { + this.memberService = memberService; + } +} From 1c27a3bf857beffc8d4d7b34f35071034ff3e317 Mon Sep 17 00:00:00 2001 From: hambining Date: Fri, 28 Feb 2025 06:11:10 +0900 Subject: [PATCH 5/7] Add getMembersResponse method --- .../com/example/ham/controller/MemberController.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/ham/src/main/java/com/example/ham/controller/MemberController.java b/ham/src/main/java/com/example/ham/controller/MemberController.java index 4b6945c..5e21031 100644 --- a/ham/src/main/java/com/example/ham/controller/MemberController.java +++ b/ham/src/main/java/com/example/ham/controller/MemberController.java @@ -1,8 +1,13 @@ package com.example.ham.controller; +import com.example.ham.domain.Member; import com.example.ham.service.MemberService; +import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; +import java.util.List; +import java.util.Optional; + @RestController @RequestMapping("/members") public class MemberController { @@ -11,4 +16,11 @@ public class MemberController { public MemberController(MemberService memberService) { this.memberService = memberService; } + + @GetMapping + public ResponseEntity> getMembersResponse() { + List members = memberService.findMembers(); + return ResponseEntity.ok() + .body(members); + } } From de2e0135726468b88cd0041f95aab1e141cd8ddb Mon Sep 17 00:00:00 2001 From: hambining Date: Fri, 28 Feb 2025 06:11:39 +0900 Subject: [PATCH 6/7] Add getMemberResponseById --- .../java/com/example/ham/controller/MemberController.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/ham/src/main/java/com/example/ham/controller/MemberController.java b/ham/src/main/java/com/example/ham/controller/MemberController.java index 5e21031..ad326ba 100644 --- a/ham/src/main/java/com/example/ham/controller/MemberController.java +++ b/ham/src/main/java/com/example/ham/controller/MemberController.java @@ -23,4 +23,11 @@ public ResponseEntity> getMembersResponse() { return ResponseEntity.ok() .body(members); } + + @GetMapping("/{memberId}") + public ResponseEntity> getMemberResponseById(@PathVariable Long memberId) { + Optional findMember = memberService.findById(memberId); + return ResponseEntity.ok() + .body(findMember); + } } From a5a32a1bb55ef27f23633258c4fb8b8ccf7680ca Mon Sep 17 00:00:00 2001 From: hambining Date: Fri, 7 Mar 2025 00:10:00 +0900 Subject: [PATCH 7/7] Add saveMember method --- .../com/example/ham/controller/MemberController.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/ham/src/main/java/com/example/ham/controller/MemberController.java b/ham/src/main/java/com/example/ham/controller/MemberController.java index ad326ba..061ea62 100644 --- a/ham/src/main/java/com/example/ham/controller/MemberController.java +++ b/ham/src/main/java/com/example/ham/controller/MemberController.java @@ -30,4 +30,14 @@ public ResponseEntity> getMemberResponseById(@PathVariable Long return ResponseEntity.ok() .body(findMember); } -} + + @PostMapping("/{memberId}") + public ResponseEntity saveMember() { + Member member = new Member(); + member.setId(1L); + member.setName("test"); + memberService.save(member); + return ResponseEntity.ok() + .body(member); + } +} \ No newline at end of file