Spring Boot 우아 한 RESTful 인터페이스 구축 과정 상세 설명

RESTful
이 자리 에 계 신 여러분 들 이 RESTful 에 대해 조금 들 었 다 고 믿 습 니 다.그렇다면 RESTful 은 무엇 일 까요?
REST(Representational State Transfer)표현 적 상태 이전 은 구조 적 제약 조건 과 원칙 이다.이러한 제약 조건 과 원칙 을 충족 시 키 는 애플 리 케 이 션 이나 디자인 이 RESTful 이다.주의해 야 할 것 은 REST 는 디자인 스타일 이지 표준 이 아니다.REST 는 보통 HTTP,URI,XML(표준 유 니 버 설 태그 언어 다음 키 집합),HTML(표준 유 니 버 설 태그 언어 다음 응용)등 기 존의 광범 위 하 게 유행 하 는 프로 토 콜 과 기준 을 기반 으로 한다.
이 말 은 좀 어 려 울 지 모 르 겠 지만,각 도 를 바 꾸 어 RESTful 을 설명 하 겠 습 니 다.
먼저 예 를 들 어 보 겠 습 니 다.

//      (  )
localhost:8088/api/user/findAll     :GET
//      (RESTful)
localhost:8088/api/users     :GET
//    (  )
localhost:8088/api/user/update     :POST
//    (RESTful)
localhost:8088/api/users     :PUT
//    (  )
localhost:8088/api/user/add     :POST
//    (RESTful)
localhost:8088/api/users     :POST
//    (  )
localhost:8088/api/user/delete     :DELETE
//    (RESTful)
localhost:8088/api/users     :DELETE
저 희 는 보통 주소 표시 줄 에 입력 한 주 소 를 URI(Uniform Resource Identifier)라 고 부 릅 니 다.중국어 로 번역 하면 통 일 된 자원 식별 자 입 니 다.
자원,우리 가 브 라 우 저 페이지 에서 본 것 을 모두 자원 이 라 고 할 수 있 습 니 다.예 를 들 어 그림,문자,음성 등 입 니 다.
한편,URI 는 이러한 자원 의 위 치 를 찾 는 데 사 용 됩 니 다.RESTful 스타일 의 인터페이스 에는 자원 을 나타 내 는 명사 만 나타 나 고 이 자원 에 대한 조작 은 HTTP 에 내 장 된 몇 가지 요청 유형 을 통 해 구분 합 니 다.같은 경로 localhost:8088/api/users 는 요청 방식 이 다 르 기 때문에 서로 다른 인 터 페 이 스 를 찾 아 자원 상태 전환 을 완성 합 니 다.
요약 하면 REST 는 같은 URI 의 자원 에 대한 서로 다른 요청 방식(GET,POST,PUT,DELETE)(표현)에서 하 는 서로 다른 조작(검사,증가,수정,삭제)을 말 하 는데 자원 의 상태,즉 표현 적 상태 이전 을 바 꾸 는 것 이다.REST 스타일 에 맞 는 URI 는 RESTful 인터페이스 라 고 할 수 있다.
여 기 를 보면 RESTful 이 이미 알 고 있 는 차이 가 많 지 않다 고 믿 습 니 다.다음은 Spring Boot 에서 어떻게 사용 하 는 지 살 펴 보 겠 습 니 다.
SpringMVC RESTful 인터페이스 구축
SpringMVC 에서 우리 에 게 주 해 를 제공 하여 RESTful 인 터 페 이 스 를 구축 하 는 데 도움 을 줄 수 있 습 니 다.다음은 코드 를 직접 볼 수 있 습 니 다.

package indi.viyoung.viboot.restful.controller;
import indi.viyoung.viboot.restful.entity.User;
import indi.viyoung.viboot.restful.service.UserService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;

/**
 * <p>
 *      
 * </p>
 *
 * @author viyoung
 * @since 2019-01-23
 */
@RestController
@RequestMapping("/users")
@Slf4j
@CrossOrigin
public class UserController {
 @Autowired
 private UserService userService;
 @GetMapping
 public List<User> get() {
  log.info("GET    。。。");
  return userService.list();
 }
 @GetMapping(value = "/{id}")
 public User get(@PathVariable String id) {
  log.info("GET..{}...    。。。",id);
  return userService.getById(id);
 }
 @PostMapping
 public void post() {
  log.info("POST    。。。");
 }
 @PutMapping
 public void put() {
  log.info("PUT    。。。");
 }
 @DeleteMapping
 public void delete() {
  log.info("DELETE    。。。");
 }
}
다음은 전단 의 프로젝트 나 POStman 등 테스트 인터페이스 도구 가 필요 할 수도 있 습 니 다.저 는 전단 의 vue 기반 프로젝트 를 작 성 했 습 니 다.필요 한 것 은 viboot-front 를 다운로드 할 수 있 습 니 다.스타 찍 어 주세요.

이 다섯 개의 단 추 를 차례대로 누 르 면 백 스테이지 의 콘 솔 이 각각 다른 문 구 를 출력 하 는 것 을 볼 수 있 습 니 다.

오리지널 문장 은 재능 이 부족 하고 학식 이 얕 으 니 잘못된 점 이 있 으 면 알려 주시 기 바 랍 니 다!
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기