SPRING/Spring기본

GET POST PUT api

도전하는일반인 2021. 11. 11. 10:53

GET방식으로 보내줄 땐 @RequestParam 어노테이션을 사용해서 하나씩 데이터를 받아오고 (여러번 받아올 수 있다.)

POST,PUT 방식으로 보내줄 땐 @RequestBody 어노테이션을 사용해서 여러개의 정보를 받아온다.

 

@RequestBody를 통해 json형식의 파일을 받을 수 있다.

dto객체를 미리 생성해주고 받는 형식이랑 매개변수명이 같아야한다.

하지만 스네이크 케이스나 카멜 케이스처럼 방식이다르다면

위와 같이 dto에 변수를 선언해줄 때 @JsonProperty 어노테이션을 사용해서 받아오는 값 이름을 정해주면 된다.

 

 

JsonNaming을 사용해서 일괄적으로 스네이크케이스를 바꿔줄 수도 있다.

 

@JsonNaming(value=PropertyNamingStrategy.SnakeCaseStrategy.class)

DTO클래스 위에 어노테이션을 추가하면 된다.

@JsonNaming(value=PropertyNamingStrategy.SnakeCaseStrategy.class)
public class PostRequestDto {

    private String name;
    private int age;

    private List<CarDto> carList;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public List<CarDto> getCarList() {
        return carList;
    }

    public void setCarList(List<CarDto> carList) {
        this.carList = carList;
    }

    @Override
    public String toString() {
        return "PostRequestDto{" +
                "name='" + name + '\'' +
                ", age=" + age +
                ", carList=" + carList +
                '}';
    }
}