폼 처리
form은 사용자가 웹 브라우저를 통해 입력된 모든 테이터를 한 번에 웹 서버로 전송하는 양식이다.
전송된 form은 파라미터 또는 전달값 이라고 하며, request 객체에 저장된다.
form을 구성하는 태그로는
form, input, select, textarea가 있으며, 역할은 HTML과 동일하다.
form 태그
form 태그는 사용자가 다양한 정보를 입력하고 서로 전달할 때 사용하는 태그이다.
form 태그 속성
action : 폼 데이터를 받아 처리하는 웹 페이지의 URL을 설정한다.
method : 폼 데이터가 전송되는 HTTP 방식을 설정한다.
name : 폼을 식별하기 위한 이름을 설정한다.(key)
target : 폼 처리 결과의 응답을 실행할 프레임을 설정한다.
enctype : 폼을 전송하는 콘텐츠 MIME 유형을 설정한다.
accept-charset : 폼 전송에 사용할 문자 인코딩을 설정한다.
GET 방식과 POST 방식의 차이
GET 방식은 이름과 값의 형태로 URL에 포함되서 전송되기 때문에 속도는 빠르지만 보안에 취약하고
POST 방식은 HTTP 헤더속에 감춰져서 전송되기 때문에 느리지만 보안이 뛰어나다.
그 외에도 form과 관련된 태그는 input, select, textarea등이 있다.
HTML과 동일하기 때문에 크게 어렵지 않다.
폼 데이터 처리
클라이언트로부터 요청을 받으면 파라미터를 request 객체에 저장하고 서버에서 getParameter를 이용해서 받는다.
String 변수 = request.getParameter("파라미터 이름");
위의 코드는 request로 부터 파라미터를 가져와서 변수에 저장하는 역할을 한다.
이와 동일하게 웹 페이지에서 클라이언트가 <a>태그 또는 <form>태그에 입력하고 submit을 누르면 request로 파라미터가 전달되고 getParameter를 이용해 꺼낼수 있다.
그렇기 때문에 form 태그를 이용해 form 태그에 있는 text박스, radio버튼, checkbox등의 값 또한 파라미터로써 가져올수가 있다.
또한 checkbox 처럼 한번에 여러개를 체크해서 보내는 경우에는 name을 같게하여 배열로써 받아서 for문을 이용해서 순회하면서 출력할수 있다.
전송받은 파라미터의 key를 안다면 getParameter("key")를 이용해서 쉽게 데이터를 빼낼수 있지만 key를 모를경우에는 getParameterNames()를 통해 모든 입력 양식의 요청 파라미터를 가져와서
Enumeration 객체의 hasMoreElements()를 통해 커서를 이동하고, 다음이 있으면 true를 반환
nextElement()를 이용해 출력해내면 키를 모르더라도 모든 파라미터를 출력할수 있다.
'프로그래밍 공부' 카테고리의 다른 글
2025.02.14 JSP 공부 (0) | 2025.02.14 |
---|---|
2025.02.13 JSP 공부 (0) | 2025.02.13 |
2025.02.11 JSP 공부 (0) | 2025.02.11 |
2025.02.10 JSP 공부 (0) | 2025.02.10 |
2025.02.07 JSP 공부 (0) | 2025.02.07 |