这是我写的Bean,但是对应的Cal.jsp总是出错,求哥哥姐姐们帮忙
package com;
public class Cal1 {
private String text1;
private String text2;
private String[] select;
private String s;
private int a=Integer.parseInt(text1);
private int b=Integer.parseInt(text2);

public Cal1(){}
public void setText1(String text1) {
this.text1 = text1;
}
public String getText1() {
return text1;
}
public void setText2(String text2) {
this.text2 = text2;
}
public String getText2() {
return text2;
}
public void setSelect(String[] select){
for(int i=0;i<select.length;i++)
this.s = select[i];
}
public String[] getSelect() {
return select;
}
public void setAdd(int a,int b){
this.a=a;
this.b=b;
}
public int getAdd(){
if(s.equals("+"))
{return a+b;}
if(s.equals("-"))
{return a-b;}
 if(s.equals("*"))
{return a*b;}
if(s.equals("/"))
{return a/b;}
return 0; 
}  
}

解决方案 »

  1.   

    这样写jsp文件:
    calculate.jsp
    <%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
    <jsp:useBean id="calculator" scope="request" class="com.SimpleCalculator">
    <jsp:setProperty name="calculator" property="*"/>
    </jsp:useBean>
    <html>
    <head>
    <title>Untitled Document</title>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    </head>
    <body>
    <hr>
    计算结果:<% 
    try
    {calculator.calculate();
    out.println(calculator.getFirst()+calculator.getOperator()+calculator.getSecond()+"="+calculator.getResult());
    }
    catch(Exception e)
    {
    out.println(e.getMessage());
    }
    %>
    <hr>
    <form action="calculate.jsp" method=get>
    <table width="75%" border="1" bordercolor="#003300">
      <tr bgcolor="#999999">
        <td colspan="2">简单的计数器</td>
      </tr>  
      <tr>
        <td>第一个参数</td>
        <td><input type=text name="first"></td>
      </tr>
     <tr>
        <td>操作符</td>
        <td><select name="operator">
             <option value="+">+</option>
    <option value="-">-</option>
    <option value="*">*</option>
    <option value="/">/</option>
        </select>
    </td>
      </tr>
      <tr>
        <td>第二个参数</td>
        <td><input type=text name="second"></td>
      </tr>
      <tr>   
        <td colspan="2" bgcolor="#CCCCCC"><input type=submit value=计算></td>
      </tr>
    </table>
    </form>
    </body>
    </html>
    下面是java文件:
      

  2.   

    SimpleCalculator.java
    package com;
    public class SimpleCalculator
    {
    //属性声明
    private String first;//第一个操作数
    private String second;//第二个操作数
    private double result;//操作结果
    private String operator;//操作符

    /**
     *以下是一些属性方法
     */
    public void setFirst(String first)
    {
    this.first=first;
    }
    public void setSecond(String second)
    {
    this.second=second;
    }
    public void setOperator(String operator)
    {
    this.operator=operator;
    }
    public String getFirst()
    {
    return this.first;
    }
    public String getSecond()
    {
    return this.second;
    }
    public String getOperator()
    {
    return this.operator;
    }

    //获得计算结果
    public double getResult()
    {
    return this.result;
    }

    /**
     *根据不同的操作符进行计算
     */
    public void calculate()
    {
    double one=Double.parseDouble(first);
    double two=Double.parseDouble(second);
    try
    {
              if(operator.equals("+")) result=one+two;
              else if(operator.equals("-"))result=one-two;
    else if(operator.equals("*"))result=one*two;
    else if(operator.equals("/"))result=one/two;          
          }
          catch(Exception e)
          {
           System.out.println(e);
          }
           
          }
    }