728x90
반응형

김영한 스프링 부트 5

[스프링부트] 실전! 스프링 부트와 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 #2-5 엔티티 설계시 주의점

※ 본 포스팅은 김영한 강사님의 인프런 '실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발' 강의를 들으며 작성한 수강일지 입니다. | 도메인 분석 설계 1. 요구사항 분석 2. 도메인 모델과 테이블 설계 3. 엔티티 클래스 개발1 4. 엔티티 클래스 개발2 5. 엔티티 설계시 주의점 5. 엔티티 설계시 주의점 1) 엔티티에는 가급적 Setter를 사용하지 말자 - Setter가 모두 열려있으면 변경 포인트가 너무 많아서 어디서 어떻게 수정이 되었는지 알기 힘들고 유지보수가 어려움 - 예제에서는 Setter를 열어둠(실무에서는 가급적이면 X) 2) 모든 연관관계는 지연로딩(LAZY)으로 설정하자 - 즉시로딩(EAGER) : member를 조회할 때 연관된 order를 모두 조회하겠다는 것(연관..

[스프링부트] 실전! 스프링 부트와 JPA 활용1 #2-4 엔티티 클래스 개발2

※ 본 포스팅은 김영한 강사님의 인프런 '실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발' 강의를 들으며 작성한 수강일지 입니다. | 도메인 분석 설계 1. 요구사항 분석 2. 도메인 모델과 테이블 설계 3. 엔티티 클래스 개발1 4. 엔티티 클래스 개발2 5. 엔티티 설계시 주의점 4. 엔티티 클래스 개발 2 package jpabook.jpashop.domain; import jpabook.jpashop.domain.item.Item; import lombok.Getter; import lombok.Setter; import javax.persistence.*; import java.util.ArrayList; import java.util.List; @Entity @Getter @Set..

728x90
반응형