728x90
반응형

스프링 부트 28

[스프링부트] 실전! 스프링 부트와 JPA 활용2 #2 API 개발 고급 - 준비

※ 본 포스팅은 김영한 강사님의 인프런 '실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화' 강의를 들으며 작성한 수강일지 입니다. | API 개발 고급 - 준비 1. API 개발 고급 소개 2. 조회용 샘플 데이터 입력 1. API 개발 고급 소개 조회용 샘플 데이터 입력 지연 로딩과 조회 성능 최적화 컬렉션 조회 최적화 페이징과 한계 돌파 OSIV(Open Session In View)와 성능 최적화 2. 조회용 샘플 데이터 입력 API 개발 고급 설명을 위해 샘플 데이터 입력 userA JPA1 BOOK JPA2 BOOK userB SPRING1 BOOK SPRING2 BOOK -> 총 2건의 주문 package jpabook.jpashop; import jpabook.jpasho..

[스프링부트] 실전! 스프링 부트와 JPA 활용2 #1 API 개발(3) 회원 조회

※ 본 포스팅은 김영한 강사님의 인프런 '실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화' 강의를 들으며 작성한 수강일지 입니다. | API 개발 기본 1. 회원 등록 API 2. 회원 수정 API 3. 회원 조회 API 3. 회원 조회 API 조회만 하는 것이기 때문에 jpa.hibernate.ddl-auto: none으로 변경해 한 번 데이터를 넣어두면 그 DB에 있는 데이터를 그대로 쓸 수 있음 회원조회 V1 : 응답 값으로 엔티티를 직접 외부에 노출 // 회원 목록 조회 @GetMapping("/api/v1/members") public List membersV1() { return memberService.findMembers(); } -> 순수하게 회원 정보만 얻고싶은 것인..

[스프링부트] 실전! 스프링 부트와 JPA 활용2 #1 API 개발(2) 회원 수정

※ 본 포스팅은 김영한 강사님의 인프런 '실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화' 강의를 들으며 작성한 수강일지 입니다. | API 개발 기본 1. 회원 등록 API 2. 회원 수정 API 3. 회원 조회 API 2. 회원 수정 API @PostMapping("/api/v2/members/{id}") // PUT 전체 수정, PATCH or POST 부분 수정 public UpdateMemberResponse updateMemberV2( @PathVariable("id") Long id, @RequestBody @Valid UpdateMemberRequest request) { memberService.update(id, request.getName()); Member fin..

[스프링부트] 실전! 스프링 부트와 JPA 활용2 #1 API 개발 기본 feat. postman 설치 (1)

※ 본 포스팅은 김영한 강사님의 인프런 '실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화' 강의를 들으며 작성한 수강일지 입니다. | API 개발 기본 1. 회원 등록 API 2. 회원 수정 API 3. 회원 조회 API 요즘은 화면을 템플린 엔진으로 만드는 경우가 아직 많은데도 있겠지만, 주로 Single Page Application - Vue.js, React 등으로 많이 개발 -> 서버 개발자 입장에서는 예전처럼 서버에서 렌더링해서 내리는 것이 아니라 API 통신을 통해 .. -> API를 잘 설계하고 개발하는 것이 중요!! 0-1. Postman 설치 https://aspring.tistory.com/entry/Postman-Postman-API-Platform-%EC%84%..

[스프링부트] 실전! 스프링 부트와 JPA 활용2 #0 API 개발과 성능 최적화

※ 본 포스팅은 김영한 강사님의 인프런 '실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화' 강의를 들으며 작성한 수강일지 입니다. | 강좌 소개 1. 강좌 소개 성능 최적화 JPA 극한의 조회 성능 최적화 노하우 전수 복잡한 예제를 6단계로 성능 튜닝 실무 JPA 성능 문제의 90% 해결 학습 방법 Spring, JPA에 대해 자세히 설명하지 않음 잘 모르더라도 처음부터 끝까지 따라할 수 있는 예제가 있기 때문에 전체적인 감을 잡을 수는 있음 가장 중요한 것은 처음부터 끝까지 직접 코딩을 하며 따라오는 것이 중요하다

[스프링부트] 실전! 스프링 부트와 JPA 활용1 #7 웹 계층 개발(5)

※ 본 포스팅은 김영한 강사님의 인프런 '실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발' 강의를 들으며 작성한 수강일지 입니다. | 웹 계층 개발 1. 홈 화면과 레이아웃 2. 회원 등록 3. 회원 목록 조회 4. 상품 등록 5. 상품 목록 6. 상품 수정 7. 변경 감지와 병합(merge) 8. 상품 주문 9. 주문 목록으로 검색, 취소 10. 다음으로 8. 상품 주문 OrderController package jpabook.jpashop.controller; import jpabook.jpashop.domain.Member; import jpabook.jpashop.domain.item.Item; import jpabook.jpashop.service.ItemService; impor..

[스프링부트] 실전! 스프링 부트와 JPA 활용1 #7 웹 계층 개발(4) 변경 감지와 병합(merge)

※ 본 포스팅은 김영한 강사님의 인프런 '실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발' 강의를 들으며 작성한 수강일지 입니다. | 웹 계층 개발 1. 홈 화면과 레이아웃 2. 회원 등록 3. 회원 목록 조회 4. 상품 등록 5. 상품 목록 6. 상품 수정 7. 변경 감지와 병합(merge) 8. 상품 주문 9. 주문 목록으로 검색, 취소 10. 다음으로 7. 변경 감지와 병합(merge) 참고: 정말 중요한 내용이니 꼭! 완벽하게 이해하기 준영속 엔티티? 영속성 컨텍스트가 더는 관리하지 않는 엔티티를 말한다(JPA 영속성 컨텍스트가 더이상 관리하지 않는 엔티티). ex) item 수정 시 이미 한 번 DB에 저장이 되어서 불러온.. @PostMapping("items/{itemId}/e..

카테고리 없음 2023.11.13

[스프링부트] 실전! 스프링 부트와 JPA 활용1 #7 웹 계층 개발(3)

※ 본 포스팅은 김영한 강사님의 인프런 '실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발' 강의를 들으며 작성한 수강일지 입니다. | 웹 계층 개발 1. 홈 화면과 레이아웃 2. 회원 등록 3. 회원 목록 조회 4. 상품 등록 5. 상품 목록 6. 상품 수정 7. 변경 감지와 병합(merge) 8. 상품 주문 9. 주문 목록으로 검색, 취소 10. 다음으로 6. 상품 수정 상품 수정 컨트롤러 ItemUpdateController @GetMapping("items/{itemId}/edit") public String updateItemForm(@PathVariable("itemId") Long itemId, Model model) { Book item = (Book) itemService.f..

[스프링부트] 실전! 스프링 부트와 JPA 활용1 #7 웹 계층 개발(1)

※ 본 포스팅은 김영한 강사님의 인프런 '실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발' 강의를 들으며 작성한 수강일지 입니다. | 웹 계층 개발 1. 홈 화면과 레이아웃 2. 회원 등록 3. 회원 목록 조회 4. 상품 등록 5. 상품 목록 6. 상품 수정 7. 변경 감지와 병합(merge) 8. 상품 주문 9. 주문 목록으로 검색, 취소 10. 다음으로 1. 홈 화면과 레이아웃 홈 컨트롤러 등록 package jpabook.jpashop.controller; import lombok.extern.slf4j.Slf4j; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype..

[스프링부트] 실전! 스프링 부트와 JPA 활용1 #6 주문 도메인 개발(2)

※ 본 포스팅은 김영한 강사님의 인프런 '실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발' 강의를 들으며 작성한 수강일지 입니다. | 주문 도메인 개발 1. 주문, 주문상품 엔티티 개발 2. 주문 리포지토리 개발 3. 주문 서비스 개발 4. 주문 기능 테스트 5. 주문 검색 기능 개발 4. 주문 기능 테스트 테스트 요구사항 상품 주문이 성공해야 한다. 상품을 주문할 때 재고 수량을 초과하면 안 된다. 주문 취소가 성공해야 한다. 상품 주문 테스트 코드 package jpabook.jpashop.service; // import static org.junit.Assert.*; import jpabook.jpashop.domain.Address; import jpabook.jpashop.doma..

728x90
반응형