본문 바로가기
JSP 웹프로그래밍

JSP : GET방식으로 구구단 출력 실습

by haheehee 2023. 1. 3.
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="utf-8">
<title>login page</title>
<style>
* {
	margin: 10px;
	text-align: center;
}
</style>
</head>
<body>
	<form name="frmLogin" method="get" action="/pro01/multiplicationTable" encType="utf-8">
		<h2>출력할 구구단의 수를 지정해 주세요.</h2>
		출력할 구구단 : <input type="text" name="mult_num"><br>
		<input type="submit" value="구구단 출력">
		<input type="reset" value="다시 입력">
	</form>
</body>
</html>

html 파일

 

<form>태그의 method 속성값은 "get"

action 속성값은 해당 서블릿 파일의 경로

인코딩타입값은 encType="utf-8" 이다.

 

package test;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletConfig;
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("/multiplicationTable")
public class MultiplicationTable extends HttpServlet {

	public void init(ServletConfig config) throws ServletException {
		System.out.println("init 메서드 호출");
	}

	public void destroy() {
		System.out.println("destroy 메서드 호출");
	}

	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		request.setCharacterEncoding("utf-8");
		response.setContentType("text/html;charset=utf-8");
		PrintWriter out = response.getWriter();
		String num = request.getParameter("mult_num");

		int num_int = Integer.parseInt(num);

		out.print("<html>");
		out.print("<body>");
		
		out.print("<table style='border: 1px solid black; width: 50%; height: 40px; margin: 5px; text-align: center;'>");
		out.print("<tr>");
		out.print("<th colspan='2' style='border: 1px solid black; height: 40px; background-color: #66CDAA;'>");
		out.print(num + "단 출력");
		out.print("</th>");
		out.print("</tr>");
		for (int multi_n = 1; multi_n < 10; multi_n++) {
			out.print("<tr>");
			out.print("<td style='border: 0.5px solid gray; width: 50%;'>");
			out.println(num + " X " + multi_n);
			out.print("</td>");
			out.print("<td style='border: 0.5px solid gray; width: 50%;'>");
			out.println(num_int * multi_n);
			out.print("</td>");
			out.print("</tr>");
		}
		out.print("</table>");
		out.print("</html>");
		out.print("</body>");
	}
}

Servlet 서블릿 파일

 

테이블 형식으로 출력해주었다. 

원하는 구구단 값을 입력해주면

해당 구구단이 테이블에 출력된다.

 

 

초기화면

6단 입력

 

구구단이 출력된다.

댓글