이 페이지의 이전 버전을 보고 있습니다. 현재 버전 보기.

현재와 비교 페이지 이력 보기

« 이전 버전 4 다음 »

REST란?


HTTP Method

HTTP Method용도Spring Annotation기타
WebREST
GET정보를 가져올 때@Get@GetMappingURL을 통해 파라미터 형식으로 전달
POST정보를 변경할때@Post@PostMappingHTTP Request Body에 변경할 내용을 포함해서 서버로 전달
PUT정보를 신규로 저장할 때@Put@PutMappingHTTP Request Body에 신규로 저장할 내용을 포함해서 서버로 전달
DELETE정보를 삭제할때@Delete@DeleteMappingURL을 통해 파라미터 형식으로 전달
  • REST 이전에는 POST 방식으로 데이터를 변경(신규 추가, 변경, 삭제)하는 작업을 수행함
  • PUT, DELETE는 REST 이전에 보안 위배로 등록되어 활용할 수 없었으며 현재도 막는 기업들이 있음

URI 규칙


GET Method에서 파라미터 처리

파라미터 종류URL 형식Spring Annotation예시
Request Parameter/index=1&page=2@RequestParam
@GetMapping("read")
public ModelAndView getFactoryRead(@RequestParam("no") int factroyId, SearchCriteria criteria) {
  //...    
}
Path Variable/index/1@PathVariable
@PostMapping("delete/{idx}")
@ResponseBody
public JsonResultVo postDeleteFactory(@PathVariable("idx") int factoryIdx) {
	return factoryService.deleteFacotryData(factoryIdx);
}

Request Body의 형식

형식유형설명
텍스트JSON

REST 방식의 출현, AJAX의 출현을 JSON 형식이 현재 가장 대세

과거 JSON은 UI에서 사용하던 기술이나 이제는 Server 간 데이터 송수신에서도 JSON을 사용


XML

과거 XML은 이기종 시스템(Server)간 데이터 송수신시 가장 완벽한 포맷으로 사용

XSD 등의 스키마를 통해 데이터의 구조 및 유효성이 보장

XML은 파싱에 과도한 비용이 소요되고 무겁다는 인식으로 최근은 사용하지 않음


PLAIN

JSON, XML도 엄밀하게 따져보면 PLAIN TEXT

어떤 것이든 PLAIN TEXT로 내용을 담을 수 있음

바이너리IMAGE

이미지 파일을 송수신할 때 Request & Response Body에는 이미지 바이너리 데이터가 포함

파일의 포맷은 HTTP Header를 통해서 전달되며 웹 브라우저는 헤더를 보고 어떤 포맷인지를 확인한 후 바이너리를 로딩하여 처리


기타 미디어

MP4 등도 Request & Response Body에 포함이 가능하며 HTTP Header를 보고 결정

웹 브라우저인 경우 HTTP Header를 보고 알아서 동작함

웹 브라우저가 아닌 경우 개발자가 알아서 처리함

Consume과 Produce의 의미

https://www.baeldung.com/spring-requestmapping

  • 레이블 없음