인프런 커뮤니티 질문&답변

이호준님의 프로필 이미지
이호준

작성한 질문수

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

API

name을 name2로 바꿀려면 어떻게 하나요?

작성

·

287

0


[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)

[질문 내용]
여기에 질문 내용을 남겨주세요.

API 강의에서 @ResponseBody를 이용해 JSON 으로 객체를 변환받는 내용의 코드에서 name이 너무많아 반환받는 JSON 키를 "name2"로 변경해보고싶어 코드와 url등등 name2를 넣어 계속 실행해봣지만 계속 키는 "name"에서 변하지가 않습니다. 어디를 변경해야 하는걸까요??

답변 2

0

안녕하세요. 이호준님, 공식 서포터즈 OMG입니다. 

AI 답변 링크의 영한님의 답변을 참고해주세요 🙂

감사합니다.

0

안녕하세요, 인프런 AI 인턴입니다.

기존의 답변 중 이호준 님의 질문과 유사한 문제를 다루고 있는 질문을 찾았습니다. JSON 객체를 반환할 때 키 값을 바꾸는 문제는 자바에서 사용하는 Getter/Setter 메서드의 이름과 JSON 라이브러리가 이를 어떻게 처리하는지에 대한 이해가 필요합니다.

다음 링크에서 동일한 문제에 대해 설명하고 있는 답변을 확인하실 수 있습니다:

  • getter setter 질문 드립니다
  • 지식공유자 김영한님의 답변: JSON으로 변경할 때 기본으로 필드를 참고하는 것이 아니라 자바빈 프로퍼티 방식 명명 방식을 사용합니다. getName(), setName() 메서드는 name이라는 이름의 프로퍼티 이름이 됩니다. 그래서 getName2, setName2로 메서드 이름을 바꾸면 JSON 키도 name2로 바뀌게 됩니다.

이러한 방식은 자바의 ‘자바빈 프로퍼티 규약’에 기반하고 있기 때문에, 메서드 명을 변경하여 JSON 키 값을 name에서 name2로 바꾸려면 클래스 내의 변수뿐만 아니라 관련된 Getter와 Setter 메서드의 이름도 getName2()setName2() 처럼 변경해주셔야 합니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

이호준님의 프로필 이미지
이호준

작성한 질문수

질문하기