본문 바로가기
뒤끝 (Back-End)

[JSP] 폼 태그

728x90

폼태그의 동작 원리

폼 양식을 통해 클라이언트에서 입력된 데이터는 한꺼번에 웹 서버로 전송

웹 서버는 JSP 웹 컨테이너에게 전송된 데이터를 전달하여 처리 의뢰

<form action="파일 또는 URL" method="get 또는 post">
	<input 속성1="값1" 속성2="값2">
    	<select> </select>
    	<textarea> </textarea>
</form>
속성 의미
action 폼 데이터를 전송할 서버 쪽 스크립트 파일 또는 URL을 지정
method 폼 데이터가 전송되는 HTTP 방식(GET or POST)을 지정
name 폼을 식별하기 위한 이름을 지정
target action 속성에서 지정한 스크립트 파일을 현재 창이 아닌 다른 위치에서 열도록 지정
enctype 폼을 전송하는 컨텐츠의 인터넷 표준 포맷인 MIME 유형을 지정
accept-charset 폼 전송에 사용할 문자 인코딩을 지정

 


데이터 전송 방식

GET 방식 : 폼 태그 method="get"으로 선언

  • GET 방식은 웹 서버로부터 정보를 조회하기 위해 설계된 메소드
  • 요청할 때 필요한 데이터를 Body에 담지 않고 Header만 쿼리스트링을 통해 전송
    • 쿼리스트링 : URL 주소 끝에 ?와 함께 이름과 값으로 쌍을 이루는 요청 파라미터
    • GET 전송 과정에서 요청 파라미터가 여러 개일 경우 &로 연결함
    • ex) www.naver.kr/resouces?name1=value1&name2=value2

POST 방식 : 폼 태그 method="post"으로 선언

  • 데이터를 HTTP 메시지의 Body에 담아 전송
  • Body 영역 데이터 타입을 Header Content-Type에 명시해야 함
Content-Type:application/json; charset=UTF-8	//Header 영역
...
{	//Body 영역
	"name1":"value1",
    	"name2":"value2",
}

 


input 태그 : 종료 태그 없이 단독으로 사용

속성 속성값 의미
type text 기본 한 줄로 텍스트를 입력할 때 사용
radio 라디오 버튼으로 열거된 항목 중 하나만 선택할 때 사용, checked 사용
checkbox 체크 박스로 열거된 항목 중 다중 선택할 때 사용 , checked 사용
password 입력한 암호를 보안을 위해 대체 문자로 보여줄 때 사용
hidden 화면에 보이지 않게 숨겨서 값을 전송할 때 사용
file 파일 업로드를 위해 파일을 선택할 때 사용
button 버튼을 출력할 때 사용
submit 폼에 입력된 값을 한 번에 웹 서버로 전송할 때 사용
reset 폼에 입력된 값을 모두 초기화할 때 사용
name 텍스트 입력 양식을 식별하기 위해 이름을 설정
value 텍스트 입력 양식의 초기값을 설정
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
	<meta charset="UTF-8">
	<title> 로그인 화면 </title>
</head>
<body>
	Home > Login
	<hr>
    // action="#" : 자기자신
	<form action="#" method="get">
		ID : <br> 
			<input type="text" name="id"><br><br>
            // type : 클라이언트에게 보여주는 것
            // name : 서버에게 보여주는 것
		PASSWORD : <br>
		<input type="password" name="passwd"><br><br>
		&nbsp; <input type="submit" value=" Login "> &nbsp;
		<input type="reset" value=" Cancel ">
	</form>
</body>
</html>

?id=zen&passwd=123456#


select 태그 : 폼 태그 안에서 사용되며 여러 개의 항목이 나타나는 콤보 박스를 만들 때 사용, option 태그로 선택할 값 지정

태그 속성 속성값 의미
select name 텍스트 콤보 박스의 이름을 설정
size 숫자 한 번에 표시할 항목의 개수 설정
multiple   ctrl키를 눌러 다중 항목 선택할 수 있도록 설정
option value 텍스트 항목의 값을 설정
selected   여러 항목 중 기본값으로 지정하려는 항목 설정
disabled   해당 항목을 비활성화 상태로 설정
<body>
	Home > Language
	<hr>
	<form action="#" method="get">
		<fieldset style="width:150px">
			<legend> 언어 선택 </legend><p>
            // size 설정 시 펼쳐져서 보여짐
            // multiple : 다중선택
				<select name="language" size=6 multiple>
					<option value="choice"> === 선택 === </option>
					<option value="korean" selected> 한국어 </option> // 한국어 기본 선택됨
					<option value="english"> 영어 </option>
					<option value="chinese"> 중국어 </option>
					<option value="japanese"> 일본어 </option>
					<option value="spanish"> 스페인어 </option>
				</select>
		</fieldset>
	</form>
</body>

?language=korean

 

optgroup : 콤보 박스의 항목들을 대상으로 그룹화

<optgroup label="본인 국적">
	<option value="korean"> 대한민국 </option>
	<option value="USA"> 미국 </option>
</optgroup>

 


textarea 태그 : 여러 줄의 텍스트를 입력할 수 있는 태그, 텍스트 영역에서 사용된 태그와 띄어쓰기 등의 옵션은 모두 그대로 저장됨

<textarea cols="너비값" rows="높이값">
</textarea>

 

728x90

'뒤끝 (Back-End)' 카테고리의 다른 글

[JSP] 액션 태그  (0) 2024.10.18
[JSP] request 내장 객체  (5) 2024.10.16
[JSP] JSP의 동작 구조  (1) 2024.10.14
[JSP] 하이퍼 링크 & 테이블 태그  (0) 2024.10.14
[JSP] 절대 경로와 상대 경로  (1) 2024.10.09