注意==与equals的区别。
实现效果:
computerServlet类:
package com.zhouyajuan.servlet;
import com.zhouyajuan.tool.calTool;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
public class ComputerServlet extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
req.setCharacterEncoding("UTF-8");
resp.setContentType("text/html;charset=UTF-8");
String num1=req.getParameter("num1");
String operator=req.getParameter("operator");
String num2=req.getParameter("num2");
String res=null;
if(num1!=null&&num2!=null){
res= calTool.calTwoNumOperator(num1,operator,num2);
}
System.out.println(operator);
String result1=("+".equals(operator))?("selected='selected'"):("");
String result2=("-".equals(operator))?("selected='selected'"):("");
String result3=("*".equals(operator))?("selected='selected'"):("");
String result4=("/".equals(operator))?("selected='selected'"):("");
System.out.println("+".equals(operator)+"==============="+(operator=="+"));
System.out.println(result1+"=="+result2+"==="+result3+"====="+result4);
PrintWriter ow=resp.getWriter();
ow.println("<form action='cal' method='post'>");
ow.println("<input type='text' name='num1' value='"+num1+"'/>");
ow.println("<select name='operator' >");
ow.println("<option value='+' "+result1+">+</option>" );
ow.println("<option value='-' "+result2+">-</option>");
ow.println("<option value='*' "+result3+">*</option>");
ow.println("<option value='/' "+result4+">/</option>");
ow.println("</select>");
ow.println("<input type='text' name='num2' value='"+num2+"'/>");
ow.println("<input type='submit' value='='/>");
ow.println("<input type='text' name='res' value='"+res+"'/>");
ow.println("</form>");
}
}
calTool类:
package com.zhouyajuan.tool;
public class calTool {
public static String calTwoNumOperator(String num1,String operator,String num2){
//Integer.parseInt(num1);
Integer onenum= Integer.parseInt(num1);
System.out.println(onenum+"==============================");
Integer twonum= Integer.parseInt(num2);
System.out.println(twonum+"==============================");
Integer res=0;
res=onenum+twonum;
System.out.println(res);
if("+".equals(operator)){
System.out.println(onenum+twonum);
return String.valueOf(onenum+twonum);
}else if("-".equals(operator)){
return String.valueOf(onenum-twonum);
}else if("*".equals(operator)){
return String.valueOf(onenum*twonum);
}else{
return String.valueOf(onenum/twonum);
}
}
}
web.xml配置:
<servlet>
<servlet-name>computerServlet</servlet-name>
<servlet-class>com.zhouyajuan.servlet.ComputerServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>computerServlet</servlet-name>
<url-pattern>/cal</url-pattern>
</servlet-mapping>