Response 트렌드가 요청에 맞는 특정한 정보만 반환하는 것을 조금 더 선호함
이런 경향에 따라 JSON형태로 데이터를 반환하는 일이 많음
JSON형태 타입은 서버에서 읽을 수 없음
JSON형태로 클라이언트에 전달하고 싶을 땐 JSON 모습의 String 타입으로 넘겨줘야 함
String 타입으로 넘겨주기 때문에 Content-Type은 text/html
// Content-Type: text/html
// Response Body
// {"name":"스폰지밥","age":13}
@GetMapping("/json/string")
@ResponseBody
public String helloStringJson() {
return "{\"name\":\"스폰지밥\",\"age\":13}"; // json형태로 생겼지만 String 으로 반환
}
postman으로 확인해보면
//content-Type : application/json
//Response Body
//{"name":"뚱이","age":15}
@GetMapping("/json/class")
@ResponseBody
public Star helloClassJson(){
return new Star("뚱이",15);
//content-Type : application/json 타입반환이 json으로 가능한 이유는 java는 데이터 반환을 application/json으로 반환하게 설정을 함
// 해당 반환값은 자바 클래스를 반환하기 때문에 json형태 반환이 가능한 것
// json 타입은 key : value 형태인데 자바 클래스의 필드들의 이름을 key값으로 가져가고 담겨져있는 데이터 값을 value부분에 담아 json형식으로 반환
}
postman으로 확인해보면