반응형
1. @RequestBody
requestbody는 json형식을 받을 때 주로 사용이 된다.
Client에서 여러개의 인자들을 parameter로 넘겨와서 확인해야할 때 사용한다.
{
"email" : "test@google.com",
"nickname" : "test",
"password" : "test"
}
Client에서 email, nickname, password를 넘겨받아 계정을 생성해주어야 한다.
// 회원가입
@PostMapping("/register")
public void register(@RequestBody RegisterReq registerReq){
return userService.register(registerReq);
}
이 때, @RequestBody를 사용하여 받는 데이터를 registerReq라는 DTO에 자동으로 넣어준다.
2. RequestParam
RequestParam은 필요한 value 값을 URI에 추가하여 받아오는 방법이다.
@RequestParam("가져올 데이터 이름") [데이터타입][가져온 데이터를 담을 변수]
아이디가 test이고 비밀번호가 testpwd인 데이터를 찾고자 할 때 아래와 같이 URL를 바꿔준다.
ex) http://localhost:8080/user/checkUser?id=test&password=testpwd
//유저 이메일로 유저 조회
@GetMapping("/user")
public User getUser(@RequestParam("userEmail", required = false) String email){
return userService.getUserByEmail(email);
}
// 이메일이 test@gmail.com 일 때, 해당 URI
// http://localhost:8080/user?email=test@gmail.com
3. PathVariable
PathVariable은 URI에 파라미터를 넣는 또 다른 방법으로 URI의 annotation 뒤에 "{변수명}" 형태로 넣어준다.
// 이메일 중복 확인
@GetMapping("/checkEmail/{email}")
public boolean checkEmail(@PathVariable(name = "email") String myEmail){
if(userService.doExistUserEmail(myEmail)){
return true; //이메일 중복일 때
}
return false; //이메일 중복 아닐 때
}
위에 3가지 말고도 파라미터를 받는 방법을 추가적으로 더 알게 된다면, 추후에 추가할 예정입니다.
'Spring' 카테고리의 다른 글
Spring 기초 개념 (0) | 2022.06.24 |
---|
댓글