요청 파라미터(request parameter)란 클라이언트에서 서버로 전송되는 값을 의미합니다. 요청 파라미터의 종류에는 요청 쿼리 스트링(GET) 또는 요청 본문(POST)으로 보내지는 값처럼 뷰에서 입력한 값이나 선택 값, 숨김 파라미터로 전송된 값 등이 있습니다. 또는 뷰에서 클릭한 버튼의 name의 속성 값, URL 경로의 일부로 보내지는 값 등이 있습니다.
이를 취득하는 방법은 다음과 같습니다.
@RequestParam | Form 클래스 | |
내용 | 어노테이션을 이용하여 파라미터를 하나씩 취득 | 스프링 MVC가 Form 클래스 내의 필드에 대해 값을 저장 |
상황 | 하나의 뷰에 버튼이 여러 개 있을 때 어느 버튼이 클릭되어 요청이 보내졌는지 식별 | 요청 파라미터를 모아 하나의 객체로 받아들임 |
장점 | 간편하고, 각각의 요청 파라미터를 개별적으로 매핑할 수 있음 | - 요청 파라미터를 받을 때 형변환 또는 포맷 지정 가능 - 요청 파라미터는 Form 클래스의 필드 타입으로 자동 변환되어 저장 |
단점 | - 요청 파라미터를 하나씩 인수로 받기 때문에 입력 항목이 늘어날수록 인수도 함께 늘려야 하므로 확장성에 문제가 발생할 수 있음 - 해당 파라미터가 존재하지 않으면 HTTP 400 - Bad Request 발생(파라미터가 선택일 경우 required 엘리먼트를 false로 설정하거나 별도의 디폴트 값을 지정) |
입력 항목이 뷰에서 <form> 태그 안에 작성 되어 있어야 함 |
※ "스프링 프레임워크 첫걸음"이라는 책을 참고하여 쓴 게시글로, 책의 내용을 완전히 담지 않되 공부한 부분을 위주로 정리하여 작성하고자 했습니다. 따라서 글에는 책에서 다루지 않은 내용도 포함되어 있으며 문제가 되거나 부정확한 부분이 있다면 알려주시면 감사하겠습니다.
※ 책은 게시글보다 정확한 내용을 담고 있으며 코드, 그림, 예제를 이용하여 개념을 자세히 설명합니다.
'Java > Spring' 카테고리의 다른 글
[Spring] 8. 애플리케이션 만들기 (0) | 2023.07.07 |
---|---|
[Spring] 7. 유효성 검사 (0) | 2023.06.29 |
[Spring] 5. MVC 모델 (0) | 2023.06.15 |
[Spring] 4. 데이터베이스 작업 (0) | 2023.06.05 |
[Spring] 3. 스프링 프레임워크의 핵심 기능 알아보기 (0) | 2023.06.03 |