javaweb之jsp+javabean开发模式的web计算器
2014-03-16 23:57
429 查看
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>计算器</title> <style type="text/css"> body{ margin:0px; padding:0px; text-align: center } form{ margin-left:500px; } </style> </head> <body> <jsp:useBean id="calculatorBean" class="test.domain.CalculatorBean"/> <jsp:setProperty name="calculatorBean" property="*" /> <% try { calculatorBean.calculate(); }catch(Exception e) { out.write(e.getMessage()); } %> <br/>-----------------------------------------------------<br/> 计算结果是: <jsp:getProperty name="calculatorBean" property="firstNum" /> <jsp:getProperty name="calculatorBean" property="operator" /> <jsp:getProperty name="calculatorBean" property="secondNum" /> = <jsp:getProperty name="calculatorBean" property="result" /> <br/>-----------------------------------------------------<br/> <br/> <form action="/day09/calculator.jsp" method="post"> <table width="40%" border="1"> <tr> <td colspan="2">简单的计算器</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="2"><input type="submit" value="计算"/></td> </tr> </table> </form> </body> </html>
package test.domain; import java.math.BigDecimal; //封装计算器数据的bean public class CalculatorBean { private String firstNum = "0"; private char operator = '+'; private String secondNum = "0"; private String result; public String getFirstNum() { return firstNum; } public void setFirstNum(String firstNum) { this.firstNum = firstNum; } public char getOperator() { return operator; } public void setOperator(char operator) { this.operator = operator; } public String getSecondNum() { return secondNum; } public void setSecondNum(String secondNum) { this.secondNum = secondNum; } 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("被除数为0"); } this.result = first.divide(second, 20, BigDecimal.ROUND_HALF_UP).toString(); break; } default: throw new RuntimeException("运算符只能是+-*/"); } } }
相关文章推荐
- Java Web开发模式一(JSP+JavaBean)
- JavaWeb -- JSP+JavaBean模式
- JavaWeb -- JSP+JavaBean模式
- JavaWeb开发模式二:JSP+Servlet+JavaBean
- JavaWeb_08_jsp_简单计算器(jsp+javaBean模式)
- web开发模式_servlet+jsp+javabean+3层结构
- JAVAWEB开发模式之JSP的几种开发模式、处理Cookie中文乱码
- 传智播客Java web之 JSP开发模式
- model1(jsp+javaBean)和model2(jsp+servlet+javaBean+MVC)开发模式优缺点
- java程序员第十四课 -JSP技术、JavaBean知识和EL表达式(重点)-JSP的开发模式,注册和登陆的案例
- 【JavaWeb】Jsp开发模式和JavaWeb经典三层结构
- JavaWeb开发模式1:JSP+JavaBean
- Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发之09.JDBC DAO设计模式
- Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发之10.Web_工程结构 推荐
- 对基于Servlet+JSP+JavaBean开发模式的用户登录注册的升级
- JSP网页异常问题!!!! 急问!!! - Java / Web 开发
- MVC完成转账(JSP开发模式、反射、JAVABEAN、事物)
- Java Web知识点总结——JavaBean在JSP中的使用
- Servlet+JSP+JavaBean开发模式
- 深入分析JavaWeb 18 -- JavaWeb的两种常用开发模式