일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- Scanner
- 루프
- 박싱
- 언박싱
- maven
- dependency
- unboxing
- 무한
- 제너릭
- 인텔리제이
- 컬렉션
- 클래스
- Java
- 자동형변환
- bootstrap
- 싱글톤
- Short
- 내장객체
- Jenkins
- boxing
- start.spring.io
- 메소드
- 콜렉션
- 제네릭
- suvlet
- 스프링
- 싱글턴
- wrapper
- https://start.spring.io
- 빌드
- Today
- Total
Developer Gonie
[9주차] 5. JSP의 내장객체 'request'*** 본문
* 특정 요소에 사용자가 입력한 값이 request 객체에 담기게 하려면 꼭 name 속성을 사용해야 해야 한다.(id 속성은 불가)
* request 객체에서 내용을 꺼내쓸 한글데이터가 있다면 그 전에 한글을 위한 인코딩을 지정해줘야 한글이 깨지지 않는다.
JSP의 내장객체 request
웹 브라우저의 요청 정보를 저장하고 있는 객체로, HTTP Header와 HTTP Body으로 구성되어 있다고 함.
<form> 태그의 자식으로 text 타입의 요소가 있는 상태에서 사용자 입력후 submit 타입의 버튼을 누를시, 브라우저는 form 태그의 action 속성에 지정된 파일을 서버에 요청하는데, request 객체는 요청을 보내는 바로 이 시점에 사용자 입력을 담아 생성된다. 이렇게 만들어진 request 객체는 action 속성에서 지정한 파일 쪽에서 사용할 수 있도록 넘겨진다. 넘겨진 request 객체를 이용하면 이동한 페이지 쪽에서는 사용자가 입력했던 정보들을 꺼내쓸 수 있다.
단, request 객체는 요청을 보낼 때 마다 새로 생성되므로 {페이지1->페이지2->페이지3} 으로 넘어가는 상황이 있을 때
일반적인 상황에서는 페이지1에서 페이지2로 넘어갈 때 생성된 request 객체는 페이지3에서 접근이 불가능하다.
페이지3에서 접근하려는 request 객체는 페이지2에서 새로 생성된 request 객체이기 때문이다.
또한, request 객체는 요청을 보낼 때 마다 새로 생성되므로 사용자가 여러명일때도 각각 다른 request 객체가 생성된다.
JSP의 내장객체 request의 메소드
0) setCharacterEncoding() : 받아온 파라미터에 대한 한글 깨짐 방지를 위한 인코딩 방식 변경 메소드
1) getParameter("name속성의 값") : 반환 타입은 String,
지정한 이름을 가진 파라미터에 담겨있는 값을 1개만 읽어옴
<input type="text" name="">, 선택박스, 라디오박스에서는 보통 이걸 사용함
체크박스로 선택한 값을 읽어올 때는 체크된 것중에 맨 앞에 위치한 값 딱 한 개만 넘어와서 2)의 함수를 사용해야 함.
2) getParameterValues("name속성의 값"): 반환 타입은 String 배열,
체크박스로 선택한 여러개의 값들을 모두 읽어올 때 유용함.
그렇다고 <input type="text" name="">, 선택박스, 라디오박스에 대해 사용 못하는게 아님. 이땐 배열의 크기가 1인 것이 반환됨
3) getParameterNamse(): 반환값은 Enumeration,
요청에 사용된 모든 파라미터의 이름들을 담고있으며 하나씩 꺼내쓸 수 있음.
서로 다른 개수를 가지는 데이터를 한 번에 다룰 때 사용되며, 2)의 함수와 같이 사용되는게 일반적이다.
예제1. request의 getParameter()
페이지1
페이지2
예제2. request의 getParameter() + 정수형 변환
페이지1
페이지2
예제3. request의 getParameter(), getParameterValues()
페이지1
페이지2
예제4. request의 getParameterNames(), getParameterValues()
* form에서 가져온, 처리해야할 변수들이 많을경우 사용하면 좋은 방법이다.
페이지1
'K-DigitalTraining 강의 > 8. JSP' 카테고리의 다른 글
[9주차] 7. JSP의 내장객체 'response' (0) | 2022.07.12 |
---|---|
[9주차] 6. <form> 요소에서 action 요청방법 2가지(get / post)*** (0) | 2022.07.12 |
[9주차] 4.JSP의 내장객체 'out', JSP에서 가능한 2가지 스타일의 코딩방식 (0) | 2022.07.12 |
[9주차] 3. JSP 태그 중에서 <%@ include %> 지시어, 다른파일의 코드를 코함하고 싶을 때 (0) | 2022.07.12 |
[9주차] 2. JSP의 일반 태그들 사용 용도 (0) | 2022.07.12 |