스프링으로 정보를 전달하다 보면 유저들에게 보여줘도 되는 정보가 있고 안되는 정보가 있습니다.
예를 들어 현재 로그인을 한 상태인지, 로그인을 했다면 그 유저가 누구인지 알고 싶습니다.
api를 호출해서 유저의 정보를 받아옵니다.
백엔드에서는 로그인을 했다면 해당 유저의 정보를 넘겨줍니다.
그럼 다음과 같이 값이 내려옵니다.
유저의 정보를 알고 싶은 것인데 work나 streak같은 다른 정보들은 사실 필요가 없습니다. 그리고 비록 해시를 했다고는 해도 비밀번호가 내려오는 것은 문제가 있어 보입니다.
이럴 때 필요한 정보만 DTO에 넣어서 내려주면 됩니다.
DTO
DTO(Data Transfer Object) 클래스에 넘겨줄 정보를 넣어둡니다.
converter 클래스를 만들어 줍니다. 이 클래스에서 entity <-> DTO 변환을 해줍니다.
값을 리턴할 때는 toDTO를 호출하고 그 값을 넘겨줍니다.
그럼 프론트에서도 필요한 정보만 내려옵니다.
'개발 > 백엔드' 카테고리의 다른 글
spring boot - 비동기 작업 처리 (0) | 2024.11.08 |
---|---|
spring boot - intercepter (2) | 2024.09.28 |
spring boot - 1 : N 관계 만들기 (0) | 2024.09.25 |
spring boot - 환경 변수 (2) | 2024.09.22 |
spring boot - 메일 전송 (4) | 2024.09.18 |