간편결제 실습
간편결제 실습
필기 내용
EqualsAndHashCode 이거를 쓰면 커스텀 클래스에 대해서 내용 기반으로 equals 메서드를 쉽게 구현할 수 있음.
왜 validation을 직접 구현해서 썼을까??
- lombok의 value Annotation에 대해서. @Value 어노테이션은 Lombok 라이브러리에서 제공하는 어노테이션으로, 다음과 같은 역할을 합니다: 불변 클래스 생성: 모든 필드를 final로 설정하여 불변 클래스를 만듭니다. Getter 메서드 생성: 모든 필드에 대한 getter 메서드를 자동으로 생성합니다. 생성자 생성: 모든 필드를 인자로 받는 생성자를 자동으로 생성합니다. equals()와 hashCode() 메서드 생성: equals()와 hashCode() 메서드를 자동으로 생성합니다. toString() 메서드 생성: toString() 메서드를 자동으로 생성합니다. 이 어노테이션을 사용하면 코드가 간결해지고, 수동으로 작성해야 하는 반복적인 코드가 줄어듭니다.
- 코드 자체를 진짜 Domain Driven Develop한게 눈에 띈다.
- DDD에서 말하는 Entity와 Jpa의 Entity를 구분해서 작업.
- 특징
- controller의 파라미터는 ? xxRequest
- service의 파라미터는 ? xxCommand
- xxRequest -> xxCommand 전환은 컨트롤러단에서 진행.
- 왜그럴까?
- port > in에 서비스단 인터페이스를 넣어놓았다.
- 내가 알기로는 여기에 외부에서 호출하는 것에 대한 인터페이스를 넣는다고 들었는데, 보통 http request방식을 쓰고, 그러면 컨트롤러의 인터페이스를 넣어야하는 것이 아닌가? 하는 의문이 들음.
- port > in에 서비스단 인터페이스를 넣어놓았다.
- 용어 설명
- jpa에서 쓰는 엔티티 -> xxJpaEntity
- jpa쓰기위해 사용하는 레포지토리 -> SpringDataXXXXRepository
- service 단 인터페이스 지칭 -> xxUseCase
- DB와 상호작용할때 사용하는 클래스(내가 그전까지 repository라고 부르던것) -> PersistenceAdapter
- 도메인 객체와 jpaEntity간에 변환할때 쓰는 클래스 -> xxxMapper
정리
- Part2 -> ch3 실습1 완료.
next
- 다음강의 부터 빠르게 스킵해가나며 필요한 부분만 맞춤형으로 실습.
- 도커 플러그인 실습 필요해보임.
This post is licensed under CC BY 4.0 by the author.