* 본 글은 [뉴렉처]의 Servlet&JSP 프로그래밍 강의를 듣고 정리한 글입니다.
2020 Servlet&JSP 프로그래밍
www.youtube.com
사용자 입력: 사용자로부터 입력받은 값으로 GET 요청
- 고정된 값이 아니라 사용자로부터 입력받은 값을 이용
사용자로부터 반복횟수 입력받기
- 위의 과정을 실행하면,
- 입력폼에 사용자가 값을 입력하고 출력 버튼 클릭 > hello?cnt=3 이라는 쿼리스트링이 GET 요청으로 서버에 전달 > 서버에서는 쿼리 값에 맞게 문서를 클라이언트에 응답
- 사용자로부터 반복횟수를 입력받으려면 입력폼을 준비해야 함
- 해당 폼의 입력 칸에 사용자가 값을 입력하고 버튼을 클릭 = Get 요청
- 입력되는 박스의 속성이 입력되는 값을 실어나르는 키워드를 책임짐
- 입력되는 박스 내부: name=”cnt”
HTML의 <form>태그와 <input>태그
- <form>태그: 사용자로부터 입력을 받을 수 있는 HTLM 입력 폼(form)을 정의
- <form>태그 내부에 들어갈 수 있는 태그들: <button>, <fieldset>, <input>, <label>, <option>, <optgroup>, <select>, <textarea>
- action 속성의 값으로 서블릿의 매핑 주소를 작성
- <input>태그: 사용자로부터 입력받을 수 있는 입력 필드(input field)를 정의. <form>태그 내부에 사용
- 빈 태그(empty tag)이며, 속성만을 포함
- <label> 요소를 사용하면 <input> 요소의 라벨(label)을 정의할 수 있음
- type 속성의 값으로는 text, submit 등이 있음
사용자로부터 반복횟수를 입력받는 코드
- WebContent에 hi.html 파일 생성해 코드 작성
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<div>
<form action="hi">
<div>
<label>"안녕하세요"를 몇 번 듣고 싶으세요?</label>
</div>
<div>
<input type="text" name="cnt"/>
<input type=submit value="출력"/>
</div>
</form>
</div>
</body>
</html>
- 해당 HTML과 서블릿이 상호작용하는 과정
- 1) 사용자가 text 입력창에 값을 입력하고 submit 버튼 누름
- 2) <form>태그의 hi에 요청이 전달됨
- 3) 브라우저는 <form>태그에 입력된 속성 action의 값 hi(서블릿에선 매핑주소임)를 보고 URL을 작성
- 4) <input>태그의 속성 name의 값이 존재한다면 그 값을 가져와 URL 끝에 쿼리를 작성하고 그 쿼리의 값은 사용자가 입력한 값임
- *<form>태그가 없다면 서블릿의 매핑주소도 없으니까 URL도 생성되지 않고 쿼리스트링도 없음
- 결과
'☕ Java 웹 프로그래밍 > Servlet & JSP' 카테고리의 다른 글
[Servlet&JSP] 사용자 입력: 한글 입력 문제 (2) | 2023.05.24 |
---|---|
[Servlet&JSP] 사용자 입력: 입력할 내용이 많은 경우는 POST 요청 (2) | 2023.05.24 |
[Servlet&JSP] 사용자 입력: 기본 값 사용하기 (0) | 2023.05.24 |
[Servlet&JSP] 사용자 입력: GET 요청과 쿼리스트링 (0) | 2023.05.24 |
[Servlet&JSP] 한글로 된 문서의 컨텐츠 형식 지정하기 (0) | 2023.05.24 |