HTTP는 메시지를 주고(Request) 받는(Response) 형태의 통신 방법이다.
TCP를 기반으로 한 REST의 특징을 모두 구현하고 있는 Web 기반의 프로토콜이다.
HTML, SML, JSON, IMAGE, PDF 등 컴퓨터에서 다룰 수 있는 것은 모두 전송할 수 있다.
HTTP의 요청을 특정하는 8가지 Method가 존재한다.
REST를 구현하기 위한 인터페이스 이니 알아둬야 한다.
RestController : REST API 설정
RequestMapping : 리소스 설정
GetMapping : Get 리소스 설정
RequestMapping : method = Get 리소스 설정
PathVariable : URL Path Variable Parsing
RequestParam : URL Query Parameter Parsing
dto를 생성하여 필드를 정의하고 dto 객체를 받는 방법을 많이 사용한다.
(@RequestParam 어노테이션은 붙이지 않는다.)
RestController : REST API 설정
RequestMapping : 리소스 설정
PostMapping : POST 리소스 설정
RequestBody : Request Body 부분 Parsing
dto를 생성하여 필드를 정의하고 dto 객체를 받는다.
JsonProperty : json naming
JsonNaming : class json naming
PathVariable : URL Path Variable Parsing
RestController : REST API 설정
RequestMapping : 리소스 설정
PutMapping : PUT 리소스 설정
RequestBody : Request Body 부분 Parsing
PathVariable : URL Path Variable Parsing
JsonNaming : class에 json naming. Naming 전략을 이용해 직렬화 가능.
SnakeCaseStrategy : 스네이크 케이스 전략. 언더바로 단어 연결. carList -> car_list
RestController : REST API 설정
RequestMapping : 리소스 설정
DeleteMapping : DELETE 리소스 설정
RequestParam : URL Query Parameter Parsing
PathVariable : URL Path Variable Parsing
응답의 상태를 나타내는 코드
자주 사용되는 코드
ResponseEntity : Body의 내용을 Object로 설정 상황에 따라서 Http Status Code 설정
ResponseBody : RestController가 아닌 곳(Controller)에서 Json 응답을 내릴 때
String : 일반 Text Type 응답
Object : 자동으로 Json 변환되어 응답 상태값은 항상 200 OK