스프링 시큐리티로 로그인 기능을 구현하다가 로그인 정보를 JSON 형식으로 body에 담아 요청을 보내고 이 요청을 객체에 매핑하는 코드를 작성하고 있었다.

이런식으로 기존에 사용하던 MapStruct를 이용해서 객체를 변환하고자 했지만 어째서인지 하나도 변환이 제대로 되지 않고 null이 반환됐다. 그래서 혹시 몰라서 ObjectMapper를 이용해서 똑같은 과정을 수행해보았다.

이렇게 코드를 변경했더니 이제 정상적으로 동작했다. 그 이유를 찾아보니 MapStruct는 주로 객체간의 변환을 위해 사용되고, ObjectMapper는 직렬화/역직렬화 기능도 지원해서 그렇다고 한다. ModelMapper가 MapStruct와 더 비교하기에 맞는 것 같다.

그리고 위와 같이 파라미터로 받아오는 것은 쿼리 파라미터나 form body에 있는 내용만 받아올 수 있으므로 해당 경우는 그냥 간단하게 그 내용을 가져올 수 있다.
'공부 > Spring' 카테고리의 다른 글
| [Spring] Resolved [org.springframework.web.HttpRequestMethodNotSupportedException: Request method 'POST' is not supported] (0) | 2024.05.24 |
|---|---|
| [Spring Web] Spring MVC 컨트롤러 요청/응답 가능한 여러가지 방법 (0) | 2024.03.21 |
| [Spring Web] 컨트롤러에서 String만 리턴해도 되는 이유 (0) | 2024.03.13 |
| [Spring] IoC, Bean Factory, Applicatin Context (0) | 2024.02.18 |
| [Spring] 트랜잭션(Transaction) 과정 (0) | 2024.01.18 |