error message : Required request parameter 'id' for method parameter type Long is not present
게시판 비밀번호 체크기능을 구현하다가 위의 에러가 발생하였다.
파라미터도 넘긴 id값이 Controller로 넘어가지 않는다는? 아니면 null값이라는? 말 같다.
form태그에서 submit을 통해 파라미터 id값을 넘기는데 넘어가지 않는 듯 하다.
에러 관련 정리할 내용
- HTML에서 form태그를 통해 method가 POST로 전송이 되었고 따라서 @RequestParam으로 값을 받을 수 있다
- GET 메서드, @GetMapping을 통해 localhost:8080?userId=1234&name=username 과 같은 형태로 전송되어 @RequestParm 어노테이션을 통해 해당 값들을 받는다
- 키값이 없는 경우, null을 허용하기 위해 @RequestParameter(required = false)를 추가하면 해당 값이 없어도 BadRequest가 발생하지 않는다
- 만약 값이 없는 경우, Default 값을 설정 하고 싶다면 @RequestParameter(defaultValue = 1234)와 같이 지정해 줄 수 있다
- Map을 통해서 많은 파라미터를 관리하고 required=false 없이도 예외 발생을 막을 수 있다
- Map에 카값들을 등록해준다
- @PostMapping("/page/registration/mainPage") public String regDescription(@RequestParm HashMap<String, Integer> parmMap) { ... }
'내일배움캠프 > Today I Learned' 카테고리의 다른 글
[TIL] 나의 서른번째 회고록 (0) | 2022.12.16 |
---|---|
[TIL] 나의 스물아홉번째 회고록 (0) | 2022.12.15 |
[TIL] 나의 스물 일곱번째 회고록 (0) | 2022.12.13 |
[내배캠] 스물 여섯번째 회고록 (0) | 2022.12.11 |
[내배캠] 나의 스물 다섯번째 회고록 (0) | 2022.12.09 |