관리 메뉴

웹개발 블로그

[RestFul,Spring] 예제 본문

◆JSON/REST API

[RestFul,Spring] 예제

쿠키린 2024. 10. 24. 01:26

협업에서 컨트롤러에서 자주 쓰는 어노테이션과 RestFul 예시.

아래내용은 간단한 예제를 입니다.


@PathVariable

  • 요청 URL을 파라미터로 사용(경로변수)
  • EX) 요청 URL : /users/{userid}
  • 중괄호!!
  • 경로변수명과 변수명을 되도록 맞춰주자 
@GetMapping("/{userid}")
public User getXXX(@PathVariable("userid") String userid){

	return userService.getUser(userid);

}
  • userid의 값 조회, select는 GET으로!!
  • 클래스 상단에 @RequestMapping("/users")가 있다는 가정~

@RequestParam

  • 요청에서 넘어온 파라미터를 추출해서 사용
  • "" : 기본 url로 사용하겠다.(클래스 상단에 작성된 url)

@RequestBody

  • 클라이언트(프론트단)에서 JSON으로 데이터 요청
  • Model Class - 클라이언트 폼이나 파라미터로 데이터 요청
    • 서버단에 받을떄 Model Class를 사용하여 받게됨. (아래 예시에 Model Class는 User)
    • 데이터가 자동으로 채워짐.
    • http 프로토콜의 메시지 body를 직접 받겠다.
@PostMapping("")
public User insert(@RequestBody User user){
	retrun userService.insert(user);
 }

같은 url을 사용하지만 method 타입이 다름, insert는 POST로!!

- 클래스 상단에 @RequestMapping("/users")가 있다는 가정~

@ResponseBody
@PutMapping("/{userid}")
public void updateUser(@PathVariable("userid") Integer userid, 
				@RequsetBody User user)
	return userService.update(userid, user);
}

같은 url을 사용하지만 method 타입이 다름, update는 PUT로!!

- 클래스 상단에 @RequestMapping("/users")가 있다는 가정~

 

@ResponseBody
@DeleteMapping("/{userid}")
public void deleteUser(@PathVariable("userid ") Integer userid ){
    
    return userSevice.deleteUser(userid);
}

delete는 @DeleteMapping("url") 사용

- 클래스 상단에 @RequestMapping("/users")가 있다는 가정~

 

'◆JSON > REST API' 카테고리의 다른 글

[Rest API]⭐ Rest 아키텍처  (1) 2024.10.15