[JSP] getParameter(), getParameterValues()를 이용한 학생 정보 입력 값 전달
TO Do.
- 학생 정보 테이블 작성하는 페이지에서 학생 정보 값 넘기기
- student.jsp에 학생 정보 출력하기
- checkBox를 여러 개 선택해서 getParameterValues로 여러 값 전달하기
목표: student.jsp에 학생 정보 출력하기
1. student.jsp
먼저 학생 정보를 입력하기 위해 <table> 태그를 이용해 학생 정보 입력하는 페이지를 만들자.
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
<!-- submit시 studentProc.jsp로 post 형식으로 값 전달 -->
<form action="studentProc.jsp" method="post">
<table border="1" style="width:800px;">
<th colspan="2"><h1>학생 정보</h1></th>
<tr>
<td >이름</td>
<td width="700px"><input type="text" name="name"></td>
</tr>
<tr>
<td>성별</td>
<td>
<input type="radio" name="sex" value="남자">남자
<input type="radio" name="sex" value="여자">여자
</td>
</tr>
<tr>
<td>전공</td>
<td>
<select name="major">
<option value="국문학과" selected>국문학과</option>
<option value="영문학과" >영문학과</option>
<option value="수학과" >수학과</option>
<option value="정치학과" >정치학과</option>
<option value="체육학과" >체육학과</option>
</select>
</td>
</tr>
<tr>
<td>취미</td>
<td>
<input type="checkbox" name="hobby" value="수영">수영
<input type="checkbox" name="hobby" value="여행">여행
<input type="checkbox" name="hobby" value="독서">독서
<input type="checkbox" name="hobby" value="영화감상">영화감상
</td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="submit" value="회원정보 보내기">
<input type="reset" value="다시 쓰기">
</td>
</tr>
</table>
</form>
</body>
</html>
|
cs |
student.jsp를 studentProc.jsp에 post 형식으로 보낼 것 이다.
파라미터
이름: name
성별: sex
전공: major
취미: hobby
다음과 같이 정보를 입력해보고 넘겨보자!
2. studentProc.jsp
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
<%!
String depart = ""; //전공을 담을 String 멤버변수
%>
<%
request.setCharacterEncoding("EUC-KR"); //인코딩 형식
//student.jsp에서 넘긴 값 저장
String name = request.getParameter("name");
String sex = request.getParameter("sex");
String major = request.getParameter("major");
String hobby[] = request.getParameterValues("hobby"); //checkBox의 여러 내용을 저장하기위해 getParameterValues 사용
// <select>태그의 전공에 따라 depart에 다르게 저장
if (major.equals("국문학과")) {
depart="국문학과";
} else if (major.equals("영문학과")){
depart="영문학과";
} else if (major.equals("수학과")){
depart="수학과";
} else if (major.equals("정치학과")){
depart="정치학과";
} else depart="체육학과";
%>
<table border="1" style="width:800px;">
<th colspan="2"><h1>학생 정보</h1></th>
<tr>
<td >이름</td>
<td width="700px"><%=name %></td>
</tr>
<tr>
<td>성별</td>
<td><%=sex %></td>
</tr>
<tr>
<td>전공</td>
<td><%=depart %></td>
</tr>
<tr>
<td>취미</td>
<td><% for(String s: hobby) out.print(s + " "); %>
</td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="submit" value="회원정보 보내기">
<input type="reset" value="다시 쓰기">
</td>
</tr>
</table>
</body>
</html>
|
cs |
20번째 줄에서 getParameterValues()를 하게 되면 배열로 이용해서 값을 여러 개 저장할 수 있다.!!
String hobby[] = request.getParameterValues("hobby");
그러고 나서, 배열로 저장한 것을 for-each 문으로 출력해주었다.
for(String s: hobby) out.print(s + " ");
<select> 태그 안에 있는 전공 값은 if문으로 major.equals로 비교해 선택한 전공이 나오게 조건문을 작성해주었다.
3. 함께 보면 좋은 글
'Language > └JSP | Servlet' 카테고리의 다른 글
[JSP] 이클립스에서 JDBC로 MySQL 연동하기 | Yoon's Dev (0) | 2021.05.12 |
---|---|
[Servlet] Servelt 서블릿 기초 문법, 클래스, 메서드, 라이프 사이클 | Yoon's Dev (0) | 2021.04.28 |
[JSP] JSP 기초문법 선언문(Declaration), 스크립트릿(Scriptlet), 표현식(Expression) | Yoon's Dev (0) | 2021.04.22 |
[JSP] getParameter()를 이용한 간단한 사칙연산 계산기 | Yoon's Dev (0) | 2021.04.14 |
[JSP] getParameter()를 이용하여 구구단 출력하기 | Yoon's Dev (4) | 2021.04.14 |