-
Spring 직렬화, dto 의 잘못된 이름의 함수가 있는 경우Java&Spring/Spring 2024. 6. 15. 17:47
Spring 의 컨트롤러 어노테이션인 RestController 를 사용하면, 함수의 리턴값이 json 으로 매핑이 된다.
다음과 같은 dto 의 경우는 getCapitalName 과 같은 함수가 있다.
@Getter
public static class RequestDTo {
private final String name = "kris";
private final int age = 12 ;
public String getThisIsFake() {
return "fake";
}
public String calculate() {
return "false";
}
}Spring 에서는 obejct mapper 의 replication 의 기능으로 이 함수가 필드 값을 호출하는 geeter 인지 아는 착각을 한다.
그래서 다음과 같은 개발자가 원하지 않는 예시가 나온다.
알고, 쓰자.
------------번외---
회사에서 Django project 를 위한 모노 레포를 만드는 와중에, test 를 위한 dto 클라스들을 만들었다.
팀장님 왈 : 변수 말고 함수가 있으면 어떻게 되나? 라는 질문에 모르겠다라고 말을 했다. 좋은 개발자가 되기 위하여, 모르는것을 인정하고 찾아보는 능력이 중요한것 같은데 다시 생각해보는 계기가 되었다.
Spring 의 경우에는 어떨까. 해서 찾아봤다.
자세한 설명은 :
https://mangkyu.tistory.com/223
'Java&Spring > Spring' 카테고리의 다른 글
Spring vs Spring Boot (0) 2023.10.08 @Transactional (1) (1) 2023.08.09 Q . SpringBoot 에서 경로를 어떻게 인식을 하는 것인가 ? part 1 (0) 2023.08.05 @RequiredArgsConsructor ,@NoArgsConstructor , @AllArgsConstructor (0) 2023.02.15 @RequiredArgsConstructor, @NotNull, @Valid ,@NotBlank (0) 2023.02.15