이것저것 해보기🌼

[REST API] POST 다루기 본문

BE/Spring Boot

[REST API] POST 다루기

realtree 2021. 6. 30. 15:35

 

POST 다루는 방법

import java.util.Map;

@RestController
@RequestMapping("/api")
public class PostApiController {

    @PostMapping("/post")
    public void post(@RequestBody PostRequestDto requestData){
        System.out.println(requestData);
    }
}

@RequestBody 를 Annotaion 해주어야하는 것을 주의

 

 

추가로, lombok을 사용하지 않고 따로 dto 라는 클래스를 만들어서 그 아래 PostRequest를 정의해주었다.

package com.example.post.dto;

import com.fasterxml.jackson.annotation.JsonProperty;

public class PostRequestDto {
    private String account;
    private String email;
    private String address;
    private String password;
    private String phoneNumber; //phone_number

    @JsonProperty("phone_number")
    public String getPhoneNumber() {
        return phoneNumber;
    }

    public void setPhoneNumber(String phoneNumber) {
        this.phoneNumber = phoneNumber;
    }

    public String getAccount() {
        return account;
    }

    public void setAccount(String account) {
        this.account = account;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    @Override
    public String toString() {
        return "PostRequestDto{" +
                "account='" + account + '\'' +
                ", email='" + email + '\'' +
                ", address='" + address + '\'' +
                ", password='" + password + '\'' +
                ", phoneNumber='" + phoneNumber + '\'' +
                '}';
    }
}

@JsonProperty : JSON은 스네이크 케이스를 사용하고, JAVA는 카멜 케이스를 사용해서 서로 이름이 다를 경우, 이를 강제로 지정해주는 기능이다.

ex) JSON -> phone_number / JAVA -> phoneNumber

 

 

POST 요청을 보내면 실행창에서 내용이 확인된다.

 

PostRequestDto{account='user01', email='seohee@email.com', address='gangseo', password='sh1234', phoneNumber='01000000000'}

 

 

 

 

'BE > Spring Boot' 카테고리의 다른 글

[REST API] DELETE 다루기  (0) 2021.06.30
[REST API] PUT 다루기  (0) 2021.06.30
[REST API] GET 다루기  (0) 2021.06.30
웹 개발 개론  (0) 2021.06.30
TO-DO LIST 만들기 프로젝트 2 (실행 및 테스트)  (0) 2021.06.29