ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • @RequestParam 생략 가능
    Spring 2023. 3. 17. 15:29

    @RequestParam은 어노테이션을 생략 가능하다. 대신에 변수 명이 요청 파라미터 명과 같아야 한다.

     

     @GetMapping("/boardDelete")
        public String boardDelete(Integer id){
    
            boardService.boardDelete(id);
    
            return "redirect:/boardList";
        }

    위 코드를 보면 분명히 파라미터로 넘어온 id 값을 사용해서 게시글을 제거하는 것일 텐데 @RequestParam이 제거되어있다. 만약 @RequestParam 어노테이션을 제거해도 되는 사실을 모른다면 인자로 Integer id로만 선언을 해줬는데 정상적으로 내가 원하는 게시글이 삭제될 수 있는 이유를 알지 못할 것이다. 

     

    위 코드를 조금 더 상세하게 선언해 보자면

     

     @GetMapping("/boardDelete")
        public String boardDelete(@RequestParam("id") Integer id){
    
            boardService.boardDelete(id);
    
            return "redirect:/boardList";
        }

     

    하지만, 실질적인 View를 생성하지 않고(백엔드 업무이기 때문에) json 방식으로 controller에서 데이터 삭제만 테스트하는 형식으로 개발한다면 컨트롤러는 아래와 같을 것이다.

     

    @DeleteMapping("/posts/{boardId}")
    public void delete(@PathVarivable Integer boardId){
    	boardService.delete(boardId);
    }

    @PathVariable이 선언되지 않으면

    위와 같은 컴파일 에러가 발생한다.

    'Spring' 카테고리의 다른 글

    Controller, ResController 차이  (0) 2023.03.18
    @ControllerAdvice, @ExceptionHanlder  (0) 2023.03.18
    AnnotationProcessor  (0) 2023.03.15
    @PathVariable  (0) 2023.01.30
    @BeforeEach  (0) 2023.01.30
Designed by Tistory.