ExceptionHandlerExceptionResolver : Resolved [org.springframework.web.HttpMediaTypeNotAcceptableException: No acceptable representation]

2024. 11. 5. 17:55·Spring
목차
  1. JSON 직렬화
  2. 역직렬화 

채팅 기능 생성 API 요청 중 문제가 발생했다.

ExceptionHandlerExceptionResolver : Resolved [org.springframework.web.HttpMediaTypeNotAcceptableException: No acceptable representation]

 

분명 DB에는 잘 들어갔는데 뭐가 문제일까? DB 저장까진 문제가 없다는 말은 response를 반환하는 과정에서 문제가 발생했다고 생각했다.

 No acceptable representation 표현을 받아들일 수 없다는 말인데 response에 해당하는 것은 DTO이기에

DTO에서 문제가 발생한 것이라 생각했다.

 

그리고, ResponseDTO에 @Getter를 뺴놓은 것을 확인했다. 이를 추가하여 문제를 해결했다.

 

ResponseEntity에서 응답을 반환할 때, JSON 형식으로 반환하게 되는데 이때, get()을 활용한다. 그리고 이 과정을 JSON 직렬화라고 부른다. 

 

JSON 직렬화

JSON 직렬화란 객체를 JSON 형식의 문자열로 변환하는 과정. JSON(JavaScript Object Notation)은 경량 데이터 교환 형식으로, 사람과 기계가 모두 읽고 쓰기 쉬운 형태이며 JSON 직렬화는 주로 데이터 전송, 저장, 또는 API 통신에서 사용.

  1. ObjectMapper를 사용하여 Java 객체를 JSON으로 변환
  2. 기본적으로 public 필드를 직접 접근하여 직렬화
  3. private 필드의 경우 Getter 메서드를 통해 값을 읽어 직렬화
  4. Getter 메서드명에서 'get'을 제거하고 첫 문자를 소문자로 변환하여 필드명을 유추

역직렬화 

반면 역직렬화란 JSON 형식의 문자열을 Java 객체로 변환하는 것을 말한다.

  1. ObjectMapper의 readValue() 메서드를 사용하여 JSON을 Java 객체로 변환
  2. 기본적으로 public 필드에 직접 값을 할당
  3. private 필드의 경우 Setter 메서드를 통해 값을 설정 or @JsonProperty를 통해 설정
  4. 모든 인자를 받는 생성자에 @ConstructorProperties 어노테이션이 있으면 해당 생성자를 사용
  5. @ConstructorProperties 어노테이션이 없으면 기본 생성자를 사용

'Spring' 카테고리의 다른 글

StaleObjectStateException 오류를 구실로 Hibernate 소스 코드 분석하기  (0) 2025.01.10
AOP(Aspect Oriented Programming)에 대하여  (0) 2024.06.18
  1. JSON 직렬화
  2. 역직렬화 
'Spring' 카테고리의 다른 글
  • StaleObjectStateException 오류를 구실로 Hibernate 소스 코드 분석하기
  • AOP(Aspect Oriented Programming)에 대하여
지화자_
지화자_
나만의 글로 기록하기
지화자_
냉정과열정사이
지화자_
전체
오늘
어제
  • 분류 전체보기 (47)
    • 알고리즘 (18)
      • 개념정복 (6)
      • 문제풀이 (12)
    • ComputerScience (5)
      • 데이터베이스 (3)
      • 네트워크 (0)
      • OS (2)
    • SSAFY (2)
    • Java (6)
    • Server (10)
    • Spring (3)
    • 일상 (1)
    • OpenSource (2)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 알고리즘
  • 배포
  • n-queen
  • 빌드
  • 인터페이스
  • 나무섭지
  • 재귀함수
  • 분할정복
  • CI
  • 조합
  • 부분집합
  • 소프티어
  • 구현
  • dfs
  • 아니안무서워
  • 추상클래스
  • cd
  • BFS
  • 비트마스크
  • 백준바이러스
  • 백트래킹
  • AOP
  • 백준
  • OOP
  • 병합정렬

최근 댓글

최근 글

hELLO· Designed By정상우.v4.5.2
지화자_
ExceptionHandlerExceptionResolver : Resolved [org.springframework.web.HttpMediaTypeNotAcceptableException: No acceptable representation]
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.