界面如下图所示
输入界面
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<link href="form.css" rel="stylesheet" type="text/css">
<style type="text/css">
label{
display:inline-block;
padding:3px 6px;
text-align:right;
width:200px;
vertical-align:top;
}
body{
background-repeat: no-repeat;
background-size: cover;
}
</style>
</head>
<body>
<br><br><br>
<div id="login">
<div id="form">
<form>
<p><a text-align="center"><font size="6" color="black"><b><i> 复数四则运算</i></b></font></a></p><br><br><br>
<font size="2" color="black">
<label >请输入第一个复数的实部:</label>
<input name="first1" class="name" type="text" id="first1" size="20" value="${param.id}"><br><br>
<label >请输入第一个复数的虚部:</label>
<input name="first2" class="name" type="text" id="first2" size="20" value="${param.id}"><br><br>
<label >请输入第二个复数的实部:</label>
<input name="second1" class="name" type="text" id="second1" size="20" value="${param.id}"><br><br>
<label >请输入第二个复数的虚部:</label>
<input name="second2" class="name" type="text" id="second2" size="20" value="${param.id}"><br><br>
<br>
<input formaction="AddServlet" type="submit" value="求和" >
<input formaction="SubServlet" type="submit" value="求差">
<input formaction="MulServlet" type="submit" value="求积">
<input formaction="DivServlet" type="submit" value="求商">
<input type="reset" value="重置">
<div id="mes">${result}</div><br>
</form>
</div>
</div>
</body>
</html>
Bean包
package Bean;
public class Complex {
public double shibu, xubu;
public Complex(double shibu, double xubu) {
super();
this.shibu = shibu;
this.xubu = xubu;
}
public Complex() {
super();
}
public double getShibu() {
return shibu;
}
public void setShibu(double shibu) {
this.shibu = shibu;
}
public double getXubu() {
return xubu;
}
public void setXubu(double xubu) {
this.xubu = xubu;
}
@Override
public String toString() {
if(xubu<0){
return shibu + "i " + xubu ;
}
else if(xubu>0){
return shibu + "i +" + xubu ;
}
else
return shibu + "i ";
}
public Complex Add(Complex A){
Complex res=new Complex();
res.setShibu(this.shibu+A.shibu);
res.setXubu(this.xubu+A.xubu);
return res;
}
public Complex Sub(Complex A){
Complex res=new Complex();
res.setShibu(this.shibu-A.shibu);
res.setXubu(this.xubu-A.xubu);
return res;
}
public Complex Mul(Complex A){
Complex res=new Complex();
res.setShibu(this.shibu*A.shibu);
res.setXubu(this.xubu*A.xubu);
return res;
}
public Complex Div(Complex A){
Complex res=new Complex();
res.setShibu(this.shibu/A.shibu);
res.setXubu(this.xubu/A.xubu);
return res;
}
}
Servlet包
AddServlet
package Servlet;
import java.io.IOException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import Bean.Complex;
/**
* Servlet implementation class AddServlet
*/
@WebServlet("/AddServlet")
public class AddServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public AddServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
String aaa=request.getParameter("first1");
double a=Double.parseDouble(request.getParameter("first1"));
double b=Double.parseDouble(request.getParameter("first2"));
double c=Double.parseDouble(request.getParameter("second1"));
double d=Double.parseDouble(request.getParameter("second2"));
/*System.out.print(aaa);*/
Complex A=new Complex(a,b);
Complex B=new Complex(c,d);
Complex C=A.Add(B);
String res="(" + A.toString() + ")" + "+(" + B.toString() +")=" +C.toString();
request.setAttribute("result", res);
RequestDispatcher rd=request.getRequestDispatcher("/input.jsp");
rd.forward(request, response);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
this.doGet(request, response);
}
}
SubServlet
package Servlet;
import java.io.IOException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import Bean.Complex;
/**
* Servlet implementation class SubServlet
*/
@WebServlet("/SubServlet")
public class SubServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public SubServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
String aaa=request.getParameter("first1");
double a=Double.parseDouble(request.getParameter("first1"));
double b=Double.parseDouble(request.getParameter("first2"));
double c=Double.parseDouble(request.getParameter("second1"));
double d=Double.parseDouble(request.getParameter("second2"));
/*System.out.print(aaa);*/
Complex A=new Complex(a,b);
Complex B=new Complex(c,d);
Complex C=A.Sub(B);
String res="(" + A.toString() + ")" + "-(" + B.toString() +")=" +C.toString();
request.setAttribute("result", res);
RequestDispatcher rd=request.getRequestDispatcher("/input.jsp");
rd.forward(request, response);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
this.doGet(request, response);
}
}
MulServlet
package Servlet;
import java.io.IOException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import Bean.Complex;
/**
* Servlet implementation class MulServlet
*/
@WebServlet("/MulServlet")
public class MulServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public MulServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
String aaa=request.getParameter("first1");
double a=Double.parseDouble(request.getParameter("first1"));
double b=Double.parseDouble(request.getParameter("first2"));
double c=Double.parseDouble(request.getParameter("second1"));
double d=Double.parseDouble(request.getParameter("second2"));
/*System.out.print(aaa);*/
Complex A=new Complex(a,b);
Complex B=new Complex(c,d);
Complex C=A.Mul(B);
String res="(" + A.toString() + ")" + "*(" + B.toString() +")=" +C.toString();
request.setAttribute("result", res);
RequestDispatcher rd=request.getRequestDispatcher("/input.jsp");
rd.forward(request, response);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
this.doGet(request, response);
}
}
DivServlet
package Servlet;
import java.io.IOException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import Bean.Complex;
/**
* Servlet implementation class DivServlet
*/
@WebServlet("/DivServlet")
public class DivServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public DivServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
String aaa=request.getParameter("first1");
double a=Double.parseDouble(request.getParameter("first1"));
double b=Double.parseDouble(request.getParameter("first2"));
double c=Double.parseDouble(request.getParameter("second1"));
double d=Double.parseDouble(request.getParameter("second2"));
/*System.out.print(aaa);*/
Complex A=new Complex(a,b);
Complex B=new Complex(c,d);
Complex C=A.Div(B);
String res="(" + A.toString() + ")" + "÷(" + B.toString() +")=" +C.toString();
request.setAttribute("result", res);
RequestDispatcher rd=request.getRequestDispatcher("/input.jsp");
rd.forward(request, response);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
this.doGet(request, response);
}
}