HTML 코드
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>계산기 - 3</title>
</head>
<body>
<h1>계산기</h1>
<hr>
<form method="post" action="/프로젝트명/CalcServlet2"> <!-- 사용자의 입력값을 CalcServLiet2를 통해 전달하여 수행 -->
<input type="text" name="num1"> <select name="op"> <!-- name을 CalcServLiet2와 같게 써야함!! -->
<option>+</option>
<option>-</option>
<option>x</option>
<option>/</option>
</select> <input type="text" name="num2"> <input type="submit"
value="계산 결과보기">
</form>
</body>
</html>
Servlet 코드
package test;
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;
/**
* Servlet implementation class CalcServlet2
*/
@WebServlet("/CalcServlet2")
public class CalcServlet2 extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public CalcServlet2() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request,response);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
int num1 = Integer.parseInt(request.getParameter("num1")); // num1의 요청값을 형변환하여 num1에 변수선언
int num2 = Integer.parseInt(request.getParameter("num2")); // num2의 요청값을 형변환하여 num2에 변수선언
String op = request.getParameter("op"); // op는 string 타입이기 때문에 형변환 필요X
Calc calc=new Calc(num1,num2,op); // 들어온 값들을 갖고있을 객체생성
int result=calc.getResult(); // 결과를 담을 변수선언
PrintWriter out=response.getWriter(); // request에 대한 response로 화면에 print 하기 위해 사용
out.println("<HTML>");
out.println("<HEAD><TITLE>Calc - 4 Result </TITLE></HEAD>");
out.println("<BODY><H1>RESULT PAGE</H1>");
out.println("<HR>");
out.println(num1+" "+op+" "+num2+" = "+result); // 각각의 변수와 OP를 이용해 계산하고 결과
out.println("</BODY>");
out.println("</HTML>");
}
}
'개발자노트 > 웹' 카테고리의 다른 글
HTML - JSP - include 지시어 (0) | 2022.08.02 |
---|---|
HTML - JSP 에러 처리 페이지 ( 예외처리 ) (0) | 2022.08.02 |
JSP - Bean 설명과 request 객체설명, 이를 이용한 계산기 예제 (0) | 2022.08.01 |
JSP - JSP만을 이용한 계산기 예제1 + ( HTTP 상태 500 - 내부 서버 오류) (GET,POST) (0) | 2022.08.01 |
JSP - import, JSP 주석, JAVA를 HTML에서 사용하기 (0) | 2022.08.01 |