은은하게 코드 뿌시기

[spring] REST 와 Ajax 본문

웹/spring

[spring] REST 와 Ajax

은은하게미친자 2022. 8. 30. 00:09
728x90

REST (Representational State Transfer)

: 하나의 URI는 하나의 고유한 리소스를 대표하도록 설계된다는 개념, 특정한 URI는 반드시 그에상응하는데이터 자체를 의미하는 방식, URI+Http메소드(get,post,put 등) 를 이용하여 처리.

  • URI가 원하는 리소스
  • URI에는 식별할 수있는 데이터를 같이 전달 하는것이 일반적임.

REST 방식의 데이터처리를 위한 어노테이션

어노테이션 기능
@RestController Controller가 RESET방식을 처리하기 위한 것임을 명시
@ResponseBody 일반적인 jsp와 같은 뷰로 전달되는게 아니라 데이터 자체를 전달하기 위한용도
@PathVariable URL 경로에 있는 값을 파라미터로 추출하려고 할 때 사용
@CrossOrigin Ajax의 크로스 도메인 문제를 해결해주는 어노테이션
@RequestBody JOSON 데이터를 원하는 타입으로 바인딩 처리 

 

AJAX (Asynchronous JavaScript And XML)

: 비동기자바스크립트와 XML,  서버와 통신하기 위해 XMLHttpRequest 객체를 사용하는 것을 말합니다

. JSON, XML, HTML 그리고 일반 텍스트 형식 등을 포함한 다양한 포맷을 주고 받을 수 있습니다. AJAX의 강력한 특징은 페이지 전체를 리프레쉬 하지 않고서도 수행 되는 "비동기성"입니다. 이러한 비동기성을 통해 사용자의 Event가 있으면 전체 페이지가 아닌 일부분만을 업데이트 할 수 있게 해줍니다.

  • 페이지 새로고침 없이 서버에 요청
  • 서버로 부터 데이터를 받고 작업을 수행

 

AJAX 셋업하기

jackson-databind 2.11.2    : JSON타입의 데이터로 상호변환할떄 사용.
jackson-core 2.11.2  : 낮은 수준의 스트리밍 API를 정의하고 JSON별 구현을 포함합니다


사실 jackson-databind 은 core에 core는 annotations에 의존성이 있어 databind 만설치하여도 나머지 라이브러리도 설치됩니다.
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.11.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core -->
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-core</artifactId>
    <version>2.11.2</version>
</dependency>

 

728x90
Comments