728x90
반응형

김영한 30

[스프링부트] 실전! 스프링 부트와 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..

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

※ 본 포스팅은 김영한 강사님의 인프런 '실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발' 강의를 들으며 작성한 수강일지 입니다. | 주문 도메인 개발 1. 주문, 주문상품 엔티티 개발 2. 주문 리포지토리 개발 3. 주문 서비스 개발 4. 주문 기능 테스트 5. 주문 검색 기능 개발 구현 기능 상품 주문 주문 내역 조회 주문 취소 1. 주문, 주문상품 엔티티 개발 1) 주문 엔티티 package jpabook.jpashop.domain; import lombok.Getter; import lombok.Setter; import javax.persistence.*; import java.time.LocalDateTime; import java.util.ArrayList; import java..

[스프링부트] 실전! 스프링 부트와 JPA 활용1 #5 상품 도메인 개발

※ 본 포스팅은 김영한 강사님의 인프런 '실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발' 강의를 들으며 작성한 수강일지 입니다. | 상품 도메인 개발 1. 상품 엔티티 개발(비즈니스 로직 추가) 2. 상품 리포지토리 개발 3. 상품 서비스 개발 4. 상품 기능 테스트(생략) 구현 기능 상품 등록 상품 목록 조회 상품 수정 1. 상품 엔티티 개발(비즈니스 로직 추가) 비즈니스 로직 추가 - 도메인 자체에 비즈니스 로직 추가 도메인 주도 설계 : 이 엔티티 자체가 해결할 수 있는 것들은 주로 엔티티 안에 비즈니스 로직을 넣는 게 좋다 -> 객체지향적(그래야 응집력이 좋음) package jpabook.jpashop.domain.item; import jpabook.jpashop.domain.C..

[스프링부트] 실전! 스프링 부트와 JPA 활용1 #4-3 회원 기능 테스트

※ 본 포스팅은 김영한 강사님의 인프런 '실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발' 강의를 들으며 작성한 수강일지 입니다. | 회원 도메인 개발 1. 회원 리포지토리 개발 2. 회원 서비스 개발 3. 회원 기능 테스트 3. 회원 기능 테스트 테스트 요구사항 회원가입을 성공해야 한다. 회원가입 할 때 같은 이름이 있으면 예외가 발생한다. 회원가입 테스트 코드 package jpabook.jpashop.service; import jpabook.jpashop.domain.Member; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.spring..

카테고리 없음 2023.11.02

[스프링부트] 실전! 스프링 부트와 JPA 활용1 #4-2 회원 서비스 개발

※ 본 포스팅은 김영한 강사님의 인프런 '실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발' 강의를 들으며 작성한 수강일지 입니다. | 회원 도메인 개발 1. 회원 리포지토리 개발 2. 회원 서비스 개발 3. 회원 기능 테스트 2. 회원 서비스 개발 package jpabook.jpashop.service; import jpabook.jpashop.domain.Member; import jpabook.jpashop.repository.MemberRepository; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springfr..

[스프링부트] 실전! 스프링 부트와 JPA 활용1 #3-2 애플리케이션 아키텍처

※ 본 포스팅은 김영한 강사님의 인프런 '실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발' 강의를 들으며 작성한 수강일지 입니다. | 애플리케이션 구현 준비 1. 구현 요구사항 2. 애플리케이션 아키텍쳐 2. 애플리케이션 아키텍처 - Repository에서 DB에 접근 - 각각은 Domain을 다 참조하도록 설계 - Controller는 Service를 호출하는 것 뿐만 아니라, Repository에 바로 접근할 수 있는 구조로 갈 예정 -> But, 단방향 유지할 것 1) 계층형 구조 사용 controller, web : 웹 계층 service : 비즈니스 로직, 트랜잭션 처리 repository : JPA를 직접 사용하는 계층, 엔티티 매니저 사용 domain : 엔티티가 모여 있는 계층..

[스프링부트] 실전! 스프링 부트와 JPA 활용1 #3-1 구현 요구사항

※ 본 포스팅은 김영한 강사님의 인프런 '실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발' 강의를 들으며 작성한 수강일지 입니다. | 애플리케이션 구현 준비 1. 구현 요구사항 2. 애플리케이션 아키텍쳐 1. 구현 요구사항 - 앞선 내용은 데이터 적인 설계, 전체적으로 어디까지 구현할 것인지 알아보는 시간 회원 기능 회원 등록 회원 조회 상품 기능 상품 등록 상품 수정 상품 조회 주문 기능 상품 주문 주문 내역 조회 주문 취소 - 먼저 핵심 business method(주문, 주문 추소..)를 먼저 구현할 예정 - 예제를 단순화 하기 위해 아래 기능들은 구현하지 않거나 최소화 할 예정 로그인, 권한 관리 X 파라미터 검증과 예외 처리 단순화 상품은 도서만 사용 카테고리는 사용 X 배송 정보는..

728x90
반응형