클라이언트 서버 공부 중 나온 궁금증이 있어 정리해봅니다.
TestRequestDto 소스 (Setter 가 있어야 값 적용이 가능합니다. - lombok 사용)
@Setter
class TestRequestDto
{
private String a;
private String b;
//lombok Setter
//public void setA (String a) { this.a = a; }
//public void setB (String b) { this.b = b; }
public void Show () {
System.out.println(String.format("a: %s\nb: %s", a, b));
}
}
1. json 으로 통신
클라이언트)
ContentType = application/json
data = {
a : "123",
b : "456",
}
서버) @RequestBody 가 사용되면 json 통신
@PostMapping("/test")
public Long TestRequest (@RequestBody TestRequestDto requestDto) {
requestDto.Show(); //결과 값 보려고 만든 함수
System.out.println("요청 들어왔습니다~~");
return 1L;
}
2. x-www-form-urlencoded 으로 통신
클라이언트)
ContentType = application/x-www-form-urlencoded
data = "a=123&b=456"
서버) @RequestBody 를 지워줍니다.
@PostMapping("/test")
public Long TestRequest (TestRequestDto requestDto) {
requestDto.Show(); //결과 값 보려고 만든 함수
System.out.println("요청 들어왔습니다~~");
return 1L;
}