JavaJSPServlet Bean计算器

JavaJSPServlet Bean计算器,java,jsp,servlets,model-view-controller,javabeans,Java,Jsp,Servlets,Model View Controller,Javabeans,我试着用它来写一个计算器 现在它工作得很好。(在你的帮助下!) 现在我想用MVC编写它。 所以我有一个JSP: <?xml version="1.0" encoding="UTF-8" ?> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transit

我试着用它来写一个计算器 现在它工作得很好。(在你的帮助下!) 现在我想用MVC编写它。 所以我有一个JSP:

<?xml version="1.0" encoding="UTF-8" ?>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Hello</title>
</head>
<body>
<form action="Process" method="post">
    Enter a number: <input type="text" name="num1" />
    <input type="text" name="operand" type="submit "value="+" />
    <input type="text" name="operand" type="submit "value="-" />
    <input type="text" name="operand" type="submit "value="*" />
    <input type="text" name="operand" type="submit "value="/" />
    Enter a number: <input type="text" name="num2" />
    <input type="submit" name="submit" value="OK" /> 
</form>
</body>
</html>
以及JavaBean类:

package model;

import java.io.Serializable;

public class Calc implements Serializable{
private static final long serialVersionUID = 1L;

private int num1;
private int num2;
private int result;
private String operand;

public Calc() {
    super();
}

public Calc(int num1, int num2, int result, String operand) {
    super();
    this.num1 = num1;
    this.num2 = num2;
    this.result = result;
    this.operand = operand;
}

public int getNum1() {
    return num1;
}

public void setNum1(int num1) {
    this.num1 = num1;
}

public int getNum2() {
    return num2;
}

public void setNum2(int num2) {
    this.num2 = num2;
}

public int getResult() {
    return result;
}

public void setResult(int result) {

    if (operand.equals("+")) {
    result = num11 + num22;
    } else if (operand.equals("-")){
    result = num11 - num22;
    } else if (operand.equals("*")){
    result = num11 * num22;
    } else if (operand.equals("/")){
    result = num11 / num22;
    this.result = result;
}

public String getOperand() {
    return operand;
}

public void setOperand(String operand) {
    this.operand = operand;
}}
这就是结果: 它在结果字段中返回0

谢谢你的帮助!

尝试将输入标记更改为带有选项的选择标记。像这样的

<select id="operand" name="operand" >
  <option value="+">+</option>
  <option value="-">-</option>
  <option value="*">*</option>
  <option value="%">%</option>
</select>

+
-
*
%

有时JSP会混淆,因为它们的名称完全相同。

有什么问题?
输入一个数字:
最好这样写:
输入一个数字
那么
Calc
类呢。
action=“Process”
您也在哪里发送数据,ur servlet的url模式为
/servlet
,很抱歉,为了更好地理解,我将代码从德语翻译为英语,但是我没有翻译名称。
<select id="operand" name="operand" >
  <option value="+">+</option>
  <option value="-">-</option>
  <option value="*">*</option>
  <option value="%">%</option>
</select>