<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<!--
데이터 전송방식
1. Get
- 데이터를 쿼리 스트링 방식으로 보낸다.
- 패킷의 header 영역에 데이터를 담음
- 보안이 약함
- url 최대길이만큼만 전송가능
- 데이터 꺼내는 속도가 좀 더 빠름
2. Post
- 패킷의 Body에 담아서 보낸다.
- 상대적으로 보안이 강함
- 용량제한이 없음
form 태그의 method 속성을 이용해서 선택
get방식이 기본값
-->
<form action="ex09makemul" method="post">
<span>색상선택</span>
<input type="color" name="color"> <br>
<input type="number" name="num1"> 단 부터
<input type="number" name="num2"> 단 까지 구구단 출력
<input type="submit" value="전송">
</form>
</body>
</html>
import java.io.IOException;
import java.io.PrintWriter;
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("/ex09makemul")
public class ex09makemul extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String color = request.getParameter("color");
String num1 = request.getParameter("num1");
String num2 = request.getParameter("num2");
int n1 = Integer.parseInt(num1);
int n2 = Integer.parseInt(num2);
// 색깔, 몇단부터, 몇단까지 --> 수집
// table 응답(배경색이 입력받은 색)
// 응답 형식 지정
response.setContentType("text/html; encoding=utf-8");
// PrinterWriter 객체 생성
PrintWriter out = response.getWriter();
out.print("<html>");
out.print("<head> </head>");
out.print("<body>");
out.print("<table border='1' bgcolor = '"+color+"'>");
for(int i = n1; i<n2+1; i++) {
out.print("<tr>");
for(int j= 1; j<10; j++) {
out.print("<td>"+i+"*"+j+"="+i*j);
}
out.print("</tr>");
}
out.print("</table>");
out.print("</body>");
out.print("</html>");
}
}
html 데이터 값 전송
결과화면
'Java > JSP&Servlet' 카테고리의 다른 글
[JSP] 두 수의 합과 1 ~ 100까지의 합 출력 (0) | 2022.05.15 |
---|---|
[Servlet] 회원가입 (0) | 2022.05.13 |
[Servlet] 구구단 출력 (0) | 2022.05.13 |
[Servlet] 배경 색 바꾸기 (0) | 2022.05.13 |
[Servlet] 배경 색 값 전달받기 (0) | 2022.05.12 |