JSP小实例--计算器

package cn.com.caculate;



import java.math.BigDecimal;



public class caculate {

	private String firstNum="0";

	private String secondNum="0";

	private char operator='+';

	private String result="0";

	public String getFirstNum() {

		return firstNum;

	}

	public void setFirstNum(String firstNum) {

		this.firstNum = firstNum;

	}

	public String getSecondNum() {

		return secondNum;

	}

	public void setSecondNum(String secondNum) {

		this.secondNum = secondNum;

	}

	

	public char getOperator() {

		return operator;

	}

	public void setOperator(char operator) {

		this.operator = operator;

	}

	public String getResult() {

		return result;

	}

	public void setResult(String result) {

		this.result = result;

	}

	public void calculate()

	{

		BigDecimal first=new BigDecimal(this.firstNum);

		BigDecimal second=new BigDecimal(this.secondNum);

		switch(this.operator)

		{

		case '+':

			this.result=first.add(second).toString();

			break;

		case '-':

			this.result=first.subtract(second).toString();

		

			break;

		case '*':

			this.result=first.multiply(second).toString();

			break;

		case '/':

			if(second.doubleValue()==0)

			{

				throw new RuntimeException("除零异常!");

			}

			this.result=first.divide(second, 20, BigDecimal.ROUND_HALF_UP).toString();

			break;

		default:

			throw new RuntimeException("操作有错误!");

		}

	}

}

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

  <head>

    <base href="<%=basePath%>">

    

    <title>My JSP 'calculator.jsp' starting page</title>

    

	<meta http-equiv="pragma" content="no-cache">

	<meta http-equiv="cache-control" content="no-cache">

	<meta http-equiv="expires" content="0">    

	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">

	<meta http-equiv="description" content="This is my page">

	<!--

	<link rel="stylesheet" type="text/css" href="styles.css">

	-->



  </head>

  

  <body style="text-align:center;">

  <jsp:useBean id="caculate" class="cn.com.caculate.caculate"></jsp:useBean>

  <jsp:setProperty name="caculate" property="*"/>

  <%

  try{

  	caculate.calculate();

   	}

   catch(Exception e){

   	

   	out.write(e.getMessage());

   }

   %>

   <br/>-----------------------------------------------------<br/>

   	计算结果是:

   <jsp:getProperty name="caculate" property="firstNum"/>

   <jsp:getProperty name="caculate" property="operator"/>

   <jsp:getProperty name="caculate" property="secondNum"/>

   =

   <jsp:getProperty name="caculate" property="result"/>

   <br/>-----------------------------------------------------<br/>

  <form action="calculator.jsp" method="post">

  	<table width="404" border="1">

  		<tr>

  			<td colspan="3">简单的计算器</td>

  		</tr>

  		<tr>

  			<td>第一个数</td>

  			<td>

  				<input type="text" name="firstNum"/>

  			</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="secondNum"/>

  				

  			</td>

  		</tr>

  		<tr>

  			<td colspan="3">

  				<input type="submit" value="计算"/>

  			</td>

  		</tr>

  	</table>

    </form>	

  </body>

</html>


你可能感兴趣的:(jsp)