๐ฌ ์ฝ๋ >>
โ index.jsp (ํ์ฌ ํ์ผ : ํด๋ผ์ด์ธํธ์ ๋ฐ์ดํฐ๋ฅผ form์ผ๋ก ์ ๋ ฅ๋ฐ๋ ๊ณณ)
<form action="http://localhost:8090/chap02/form/order.jsp">
<select name="drink">
<option value="Americano">์๋ฉ๋ฆฌ์นด๋
ธ</option>
<option value="GreenTea">๋
น์ฐจ</option>
<option value="RedTea">ํ์ฐจ</option>
<option value="Water">๋ฌผ</option>
</select>
<div>
<input type="checkbox" id="op1" name="drink-option" value="ice"/>
<label for="op1">์ผ์ ๋ง์ด</label> <br>
<input type="checkbox" id="op2" name="drink-option" value="syrup"/>
<label for="op2">์๋ฝ ์ถ๊ฐ</label> <br>
<input type="checkbox" id="op3" name="drink-option" value="shot"/>
<label for="op3">์ท ์ถ๊ฐ</label> <br>
</div>
<input type="number" name="qty" value="3" />
<input type="submit" />
</form>
โ order.jsp (๋ค๋ฅธ jspํ์ผ : ํ์ฌ ํ์ผ์์ form์ ํตํด ๋ฐ์ ๋ฐ์ดํฐ๋ฅผ ์์ฒญ๊ณผ ํจ๊ป ๋ฐ๋๋ค)
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<%
String drink = request.getParameter("drink");
String qty = request.getParameter("qty");
String[] drinkOptions = request.getParameterValues("drink-option"); // ๊ฐ์ด ์ฌ๋ฌ๊ฐ์ธ ๊ฒฝ์ฐ
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>์ฃผ๋ฌธ ํ์ธ ํ์ด์ง</title>
</head>
<body>
<h1>์ฃผ๋ฌธ ํ์ธ</h1>
<p><%=drink %> x <%=qty %></p><br>
์ ํํ ์ต์
:
<%
// ์๋ฌด ๊ฒ๋ ์ ํ์ ์ํ๋ ๊ฒฝ์ฐ null ๊ฐ์ด ๋ค์ด์ค๋ฏ๋ก
// null ์ฒดํฌ๋ฅผ ํ์ง ์๊ณ ์ฌ์ฉํ๋ฉด ์๋ฌ๊ฐ ๋ ์ ์๋ค
if(drinkOptions != null){ // drinkOptions๊ฐ null์ผ ๊ฒฝ์ฐ์ ๋ํ ์ฒ๋ฆฌ
for(String drinkOption : drinkOptions){
out.print(drinkOption + ", ");
}
}
%>
</body>
</html>
๐บ ์คํํ๋ฉด >>
โ
submit์ ๋๋ฅด๋ฉด >>
โ submit์ ๋๋ฅด๋ฉด form์ action์์ฑ์ ์ ์ url๋ค์ ์นํ์ ์ ์ก๋๋ค
๐ฌ ์ฝ๋ >>
โ jsp >>
<h3># Servlet์ผ๋ก ๋ฐ์ดํฐ์ ํจ๊ป ์์ฒญ ๋ณด๋ด๋ณด๊ธฐ</h3>
<form action="http://localhost:8090/chap02/form/order">
<select name="drink">
<option value="Americano">์๋ฉ๋ฆฌ์นด๋
ธ</option>
<option value="GreenTea">๋
น์ฐจ</option>
<option value="RedTea">ํ์ฐจ</option>
<option value="Water">๋ฌผ</option>
</select>
<div>
<input type="checkbox" id="sop1" name="drink-option" value="ice"/>
<label for="sop1">์ผ์ ๋ง์ด</label> <br>
<input type="checkbox" id="sop2" name="drink-option" value="syrup"/>
<label for="sop2">์๋ฝ ์ถ๊ฐ</label> <br>
<input type="checkbox" id="sop3" name="drink-option" value="shot"/>
<label for="sop3">์ท ์ถ๊ฐ</label> <br>
</div>
<input type="number" name="qty" value="3" />
<input type="submit" />
</form>
โ java(์๋ธ๋ฆฟ) >>
import java.io.IOException;
import java.util.Arrays;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/form/order")
public class OrderServlet extends HttpServlet{
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// ์๋ธ๋ฆฟ์์๋ ํ๋ผ๋ฏธํฐ๋ฅผ HttpServletRequest ์ธ์คํด์ค์์ ๊บผ๋ผ ์ ์๋ค
// (โป .jsp ํ์ผ์์๋ ํด๋น ์ธ์คํด์ค ๋ช
์ด request๋ก ๋ง๋ค์ด์ ธ ์์)
// jsp๋ 1์ฐจ๋ก ์๋ธ๋ฆฟํํ๋ก ๋ณํ๋๊ธฐ ๋๋ฌธ์ request๋ฅผ ๋ฐ๋ก ๋ง๋ค์ง ์๊ณ ๋ ์ฌ์ฉ ๊ฐ๋ฅํ๋ค
String name = req.getParameter("drink");
String qty = req.getParameter("qty");
String[] ops = req.getParameterValues("drink-option");
System.out.println("์ฃผ๋ฌธํ ๋ฉ๋ด " + name);
System.out.println("์ถ๊ฐ ์ต์
" + Arrays.toString(ops));
System.out.println("์ฃผ๋ฌธ ์๋์ " + qty + "๊ฐ ์
๋๋ค.");
}
}
๐บ ์คํํ๋ฉด >>
โ
submit์ ๋๋ฅด๋ฉด >>
โ submit์ ๋๋ฅด๋ฉด form์ action์์ฑ์ ์ ์ url๋ค์ ์นํ์ ์ ์ก๋๋ค