API

Dev/JPA

API 설계시 DTO를 주고받아야 한다. 엔티티 말고

@GetMapping("/api/v1/members") public List membersV1() { return memberService.findMembers(); } 이런 식으로 api를 만들면 Member 엔티티가 그대로 외부에 노출된다. 이로인한 문제점이 많다. 1. 엔티티에 화면과 관련된 로직이 추가된다. 엔티티는 엔티티 역할만 하게 두어야 한다. 2. 쓸데없는 정보가 들어간다. 그렇다고 @JsonIgnore해서 안보이게 하면 위에 1번 문제가 생긴다. 3. 엔티티를 수정하면 API 스펙이 바뀐다. API 쓰는 모두가 혼란에 빠질것이다. 4. 좀 별개로 리스트를 반환하면 API 스펙 변경이 힘드니 result 클래스를 생성해야한다. 그러니까 이렇게 작성해야 한다. @GetMapping("/api..

ChoiBulldog
'API' 태그의 글 목록