티스토리 뷰
서비스 코드에 Response 등 응답객체 반환 금지
- 테스트 코드 작성시 진행하기 어려운 부분이 있음
- 반환타입에 따라 Controller에서 응답객체로 감싸기
테스트 코드 작성 시 Controller는 Mock테스트, 그 외 Junit 단위테스트로
패키지 구조는 'api'와 'global'로 나눈다.
api의 패키지는 도메인별로 나눈다.(기능별 x)
exception의 경우 global 패키지 내의 도메인으로 나눈다.(팀 컨벤션에 따라 변경)
디자인패턴을 적용시켜야 할 경우 Service 패키지를 작성하여 그안에 보관한다.
api 패키지 내에 특정 도메인만 사용하게 되는 util 패키지를 만들지 않는다.(생길 경우 디자인패턴으로 보관)
util의 경우 특정 도메인의 컴포넌트를 DI 하지 않는다. (ex: private final MemberRepository(X))
dto패키지 안에는 request, response을 패키지로 나누고 어플리케이션 내부에서 사용할 dto의 경우 dto패키지 안에 넣도록 하자
ex)dto ㄴ request ㄴ XXXRequest ㄴ response ㄴ XXXResponse ㄴ XXXDTO
메서드 명으로 get, set 등의 prefix를 사용하지 않는다.
노출되어선 안될 내용이 없다면 Entity로 반환해도 문제없다.(ex: 약관 등 간략한 도메인)
JPA
- join 및 단방향관계, 양방향관계는 매우 신중하게 결정(특히 삭제되는 데이터를 주의하면서 진행) 애지간하면 join을 걸지 않고 queryDsl을 사용해서 사용한다.
- @OneToOne, @ManyToMany는 사용금지
- 양방향관계 금지
- 단방향일 경우
연관된 두 객체의 라이프사이클이 동일할 경우에만 @ManyToOne
'사견 > 노트' 카테고리의 다른 글
좋은 API Response 만들기 리뷰 (1) | 2024.01.23 |
---|---|
자바 플레이그라운드 with TDD, 클린코드 - 문자열계산기 (0) | 2023.12.24 |
2023 리눅스마스터 2급 합격 후기 (0) | 2023.06.30 |
Java 코드컨벤션 (0) | 2023.01.20 |
2022 개발자 로드맵 (0) | 2022.09.07 |
Comments
최근에 올라온 글
최근에 달린 댓글
TAG
- 책리뷰
- 객체지향
- 객체 지도
- CompositionAPI
- 정수형으로 변환
- LEVEL2
- JWT
- 함께모으기
- vuex
- 알고리즘
- 타임리프
- springboot
- 리눅스마스터2급
- it책 리뷰
- 토스페이먼츠
- Vue.js3
- 한권으로끝내기리눅스마스터2급
- 다음 큰 숫자
- vue.js
- for
- 짝지어제거하기
- pinia
- mybatis구현
- java 플레이그라운드
- script setup
- 스프링부트
- 프로그래머스
- 객체지향의 사실과 오해
- SpringSecurity
- 맥 error
- Total
- Today
- Yesterday