gwooden_코린이
스프링 부트 RestAPI 본문
728x90
1. 스프링 부트 RestAPI
@RestController
public class RESTController {
}
@Controller + @responseBody = @RestController
/* 4가지 요청방식 */
@GetMapping("/test")
public String getTest() {
return "get요청";
}
@PostMapping("/test")
public String postTest() {
return "post요청";
}
@PutMapping("/test")
public String putTest() {
return "put요청";
}
@DeleteMapping("/test")
public String deleteTest() {
return "delete요청";
}
get을 제외한 post, put, delete는 직접 확인이 어려워 postmas이라는 api 플랫폼을 이용해 확인을 해볼 수 있다.
결과는 아래에서 확인이 가능하다.
그리고 요청날린걸 확인하기 위해서는 서버가 실행중이어야 한다.
필자는 sts가 실행중인 상태에서 확인을 해보았다
package com.example.restapi;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
@AllArgsConstructor //매개변수를 다 받는 생성자
public class UserVO {
private Integer id;
private String name;
private String pw;
}
@GetMapping("/test")
public UserVO getTest() {
UserVO vo = new UserVO(1, "티모", "1234");
return vo;
}
@GetMapping("/test")
public List<UserVO> getTest() {
UserVO vo = new UserVO(1, "티모", "1234");
UserVO vo2 = new UserVO(2, "베인", "4321");
List<UserVO> list = new ArrayList<>();
list.add(vo);
list.add(vo2);
return list;
}
@PostMapping("/test")
public String postTest(UserVO vo) {
System.out.println(vo.getId());
System.out.println(vo.getName());
System.out.println(vo.getPw());
return "post요청";
}
제이슨형태로 주고 받을때는 @requestBody로 매개변수에 어노테이션을 넣어줘야지 vo객체에 저장을 해준다. 하지만 이렇게만 설정하면 들어가긴 했지만 오류가 나서 이 오류를 없애려면 기본생성자를 추가해야 된다.
public String postTest(@RequestBody UserVO vo)
@NoArgsConstructor
@PutMapping("/test")
public String putTest(@RequestBody UserVO vo) {
System.out.println(vo.getId());
System.out.println(vo.getName());
System.out.println(vo.getPw());
return "put요청";
}
@DeleteMapping("/test")
public String deleteTest(@RequestParam Integer id) {
return "delete요청" + id;
}
@DeleteMapping("/test/{id}")
public String deleteTest(@PathVariable Integer id) {
return "delete요청" + id;
}
728x90
'스프링 부트' 카테고리의 다른 글
스프링 부트 추천기능 구현해보기 (0) | 2023.02.17 |
---|---|
스프링 부트 시큐리티 + H2-CONSOLE (0) | 2023.02.15 |
스프링 부트 유효성 검사 (0) | 2023.02.15 |
스프링 부트 타임리프 사용해보기 (0) | 2023.02.14 |
스프링 부트 DAO Respository (0) | 2023.02.13 |
Comments