package per.mjn._08_cal;
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("/cal")
public class CalServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
req.setCharacterEncoding("UTF-8");
resp.setContentType("text/html;charset=utf-8");
PrintWriter out = resp.getWriter();
// -----------------------------------
// 2. 接收表单中的数据
String sNum1 = req.getParameter("num1");
String op = req.getParameter("op");
String sNum2 = req.getParameter("num2");
String result = "";
if(hasLength(sNum1) && hasLength(sNum2)) {
Integer num1 = Integer.valueOf(sNum1);
Integer num2 = Integer.valueOf(sNum2);
if("+".equals(op)) {
result = num1 + num2 + "";
}
else if("-".equals(op)) {
result = num1 - num2 + "";
}
else if("*".equals(op)) {
result = num1 * num2 + "";
}
else if("/".equals(op)) {
result = num1 / num2 + "";
}
}
// System.out.println(sNum1);
// System.out.println(op);
// System.out.println(sNum2);
// 1. 输出一个计算器的界面
out.print("<form action='/day3/cal' method='post'>");
out.print("<input type='number' name='num1' value='" + sNum1 + "'/>");
out.print("<select name='op'>");
out.print("<option>+</option>");
out.print("<option>-</option>");
out.print("<option>*</option>");
out.print("<option>/</option>");
out.print("</select>");
out.print("<input type='number' name='num2' value='" + sNum2 + "'/>");
out.print("<input type='submit' value=' = '/>");
out.print("<input type='text' value='" + result + "' disabled/>");
}
private boolean hasLength(String str) {
return str != null && !"".equals(str.trim());
}
}
<!DOCTYPE html>
<html>
<head>
<meta charset='UTF-8'>
<title>Insert title here</title>
</head>
<body>
<form action='' method='post'>
<input type='number' name='num1'/>
<select name='op'>
<option>+</option>
<option>-</option>
<option>*</option>
<option>/</option>
</select>
<input type='number' name='num2'/>
<input type='submit' value=' = '/>
<input type='text' value='' disabled/>
</form>
</body>
</html>