memostack
article thumbnail
블로그를 이전하였습니다. 2023년 11월부터 https://bluemiv.github.io/에서 블로그를 운영하려고 합니다. 앞으로 해당 블로그의 댓글은 읽지 못할 수 도 있으니 양해바랍니다.
반응형

REST API 규격에 따라 일반적으로 CamelCase가 아닌 snake_case를 사용한다.

각각의 멤버 변수에 @JsonProperty를 적용하여 바꿔줄 수도 있지만, 설정파일을 이용해서 전체 프로젝트에 적용 할 수 도 있다.

 

방법 1. @JsonProperty

멤버 변수에 @JsonProperty 어노테이션을 붙여서 snake_case로 변경할 수 있다.

class User {
  @JsonProperty("user_id")
  private String userId;
}

 

방법 2. application.properties (또는 application.yaml) 설정

'방법 1'을 이용하면 매번 변수를 생성 할때마다 어노테이션을 추가해야하는 버거로움이 있다.

Spring 설정파일에 spring.jackson.property-naming-strategy 옵션에 SNAKE_CASE를 추가하면 프로젝트 전체에 적용된다.

 

application.properties

spring.jackson.property-naming-strategy=SNAKE_CASE

 

Header.java

public class Header<T> {

  private String transactionTime;

  private String resultCode;

  private String description;
}

 

아래와 같이 snake_case 형태로 출력된다.

적용 후

반응형
블로그를 이전하였습니다. 2023년 11월부터 https://bluemiv.github.io/에서 블로그를 운영하려고 합니다. 앞으로 해당 블로그의 댓글은 읽지 못할 수 도 있으니 양해바랍니다.
profile

memostack

@bluemiv_mm

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!