zoukankan      html  css  js  c++  java
  • 2017.11.21 基于JSP+Servlet+JavaBean实现复数运算(二)

    代码的实现

    最基本的MVC模式

    //input.jsp 输入界面

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
       <title>提交数据页面</title>
      </head>
      
      <body>
        <form action="/servlet/CaculateServlet" method="post">
        	请输入第一个复数的实部:<input type="text" name="r1"/><br>
        	请输入第一个复数的虚部:<input type="text" name="i1"/><br>
        	选择运算类型:
        	<select name="oper">
        		<option>+</option>
        		<option>-</option>
        		<option>*</option>
        		<option>/</option>
        	</select><br><br>
        	请输入第二个复数的实部:<input type="text" name="r2"/><br>
        	请输入第二个复数的虚部:<input type="text" name="i2"/><br>
        	<input type="submit" value="计算"/>
        </form>
      </body>
    </html>
    

    //CaculateServlet servlet类

    package servlets;
    import java.io.IOException;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import beans.Complex;
    public class CaculateServlet extends HttpServlet {
    	private static final long serialVersionUID = 1L;
    	public CaculateServlet() {
    		super();
    	}
    	public void destroy() {
    		super.destroy(); // Just puts "destroy" string in log
    		// Put your code here
    	}
    
    	public void doPost(HttpServletRequest request, HttpServletResponse response)
    			throws ServletException, IOException {
    			
    		double r1=Double.parseDouble(request.getParameter("r1"));
    		double i1=Double.parseDouble(request.getParameter("i1"));
    		String oper=request.getParameter("oper");//接受单选下拉框
    		double r2=Double.parseDouble(request.getParameter("r2"));
    		double i2=Double.parseDouble(request.getParameter("i2"));
    		String result="";
    				Complex c1=new Complex(r1,i1);  //创建对象
    				Complex c2=new Complex(r2,i2);
    			if("+".equals(oper))
    				result=c1.add(c2).info();
    			else if("-".equals(oper))
    				result=c1.sub(c2).info();
    			else if("*".equals(oper))
    				result=c1.mul(c2).info();
    			else 
    				result=c1.div(c2).info();
    			
    			request.setAttribute("outputMassage", result); //保存输出结果到outMessage对象中
    			request.getRequestDispatcher("/output.jsp").forward(request, response);
    			//转向JSP页面
    	}
    	public void doGet(HttpServletRequest request,HttpServletResponse response)
    		throws ServletException,IOException{
    			doPost(request,response);	
    	}
    }
    
    

    //output.jsp 输出结果页面

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>   
        <title>显示结果页面</title>
      </head>
      <body>
        <%=request.getAttribute("outMeaasge") %>
      </body>
    </html>
    
  • 相关阅读:
    红蓝对抗之Windows内网渗透
    [框架漏洞]Thinkphp系列漏洞【截至2020-07-20】
    xss
    OWASP TOP 10 详解
    关于URL编码/javascript/js url 编码/url的三个js编码函数escape(),encodeURI(),encodeURIComponent()
    用C#实现的几种常用数据校验方法整理(CRC校验;LRC校验;BCC校验;累加和校验)
    批处理(.bat)简单应用实例
    线状地物图斑化全流程作业(使用ArcMap软件)
    VS Code Remote配置
    二分查找
  • 原文地址:https://www.cnblogs.com/qichunlin/p/7875790.html
Copyright © 2011-2022 走看看