CalculatorBean————————————————————————————————————————————

public class CalculatorBean {
    private String firstNum;
    private String sencondNum;
    private String operator;
    private Double result=0.0;
    
    public Double getResult() {
        return result;
    }
    public void setResult(Double result) {
        this.result = result;
    }
    public String getFirstNum() {
        return firstNum;
    }
    public void setFirstNum(String firstNum) {
        this.firstNum = firstNum;
    }
    public String getSencondNum() {
        return sencondNum;
    }
    public void setSencondNum(String sencondNum) {
        this.sencondNum = sencondNum;
    }
    public String getOperator() {
        return operator;
    }
    public void setOperator(String operator) {
        this.operator = operator;
    }
    public void calculate(){
        Double fisrt =Double.valueOf(firstNum);
        Double sencond =Double.valueOf(sencondNum);
        if("+".equals(operator)){
            this.result=fisrt+sencond;
        }else if("-".equals(operator)){
            this.result=fisrt-sencond;
        }else if("*".equals(operator)){
            this.result=fisrt*sencond;
        }else if("/".equals(operator)){
            this.result=fisrt/sencond;
        }
    }
    }

——————————————————————————————————————————————————————

import java.io.IOException;

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 javax.servlet.http.HttpSession;

import com.lovo.javaBean.CalculatorBean;

/**
 * Servlet implementation class CalculatorServlet
 */
@WebServlet("/CalculatorServlet.do")
public class CalculatorServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public CalculatorServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

/**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doPost(request, response);
    }

/**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        request.setCharacterEncoding("UTF-8");
        //获取表单数据
        String num1=request.getParameter("num1");
        String num2=request.getParameter("num2");
        String zifu= request.getParameter("zifu");
        
        CalculatorBean calculatorBean= new CalculatorBean();
        
        calculatorBean.setFirstNum(num1);
        calculatorBean.setSencondNum(num2);
        calculatorBean.setOperator(zifu);
        
        
        calculatorBean.calculate();
        //将JavaBean对象存放到Session对象中
        HttpSession session = request.getSession();
        session.setAttribute("calculatorBean", calculatorBean);
        
        //控制页面转发
        request.getRequestDispatcher("newCal.jsp").forward(request, response);
    }

}

————————————————————————————————————————————————————

<%@page import="com.lovo.javaBean.CalculatorBean"%>
<%@ page language= "java" contentType="text/html;charset=UTF-8" %>
<html>
    <head>
        <meta charset="utf-8">
        <title>计算器</title>
    </head>
    <body>
    <hr>
    <%
    CalculatorBean calculatorBean = (CalculatorBean)session.getAttribute("calculatorBean");
    if(calculatorBean!=null){
        out.println(calculatorBean.getFirstNum()+calculatorBean.getOperator()+calculatorBean.getSencondNum()+"="+calculatorBean.getResult());
    }
    %>
    <form action="CalculatorServlet.do" method="post">
        <table border = 1 align="center">
        <tr>
         <td>操作数1:<input type="text" name="num1"></td>    
        </tr>
        <tr>
        <td>字符:
                 <select name="zifu" id="">
                    <option value="+">+</option>
                    <option value="-">-</option>
                    <option value="*">*</option>
                    <option value="/">/</option>
                </select>
            </td>
        </tr>    
        <tr>
         <td>操作数2:<input type="text" name="num2"></td>    
        </tr>
        <tr>    
         <td colspan="2"> <input type="submit" value="结果"></td>
        </tr>
        </table>
        </form>
    </body>
</html>

JSP开发模式2(计算器)的更多相关文章

  1. JSP内置标签 JSP中JavaBean标签 JSP开发模式 EL和JSTL快速入门

    2 JSP内置标签(美化+业务逻辑)   1)为了取代<%%>脚本形式,使用JSP标签/JSP动作,目的:与JSP页面的美化,即JSP面页都是由标签组成,不再有其它的内容   2)JSP内 ...

  2. JSP运行过程 JSP脚本 静态动态包含 jsp指令 jsp内置对象jsp四大作用域 jsp动作元素 EL表达式 JSTL 设计模式 JSP开发模式 EL内置对象

    Day38 JSP JSP的运行过程具体如下: (1)客户端发出请求,请求访问JSP文件. (2)JSP容器先将JSP文件转换成一个Java源文件(Java Servlet源程序),在转换过程中,如果 ...

  3. 十五 JSP开发模式&MVC设计模式

    JSP开发模式: JavaBean + JSP  : 缺点:页面代码过多,不利于维护,JSP页面代码变得臃肿 Servlet + JavaBean + JSP :MVC设计模式 M:model   模 ...

  4. Tip: JSP开发模式

    SUN公司推出JSP技术后,同时也推荐了两种web应用程序的开发模式,一种是JSP+JavaBean模式,一种是Servlet+JSP+JavaBean模式. JSP+JavaBean模式适合开发业务 ...

  5. JavaEE——JSP开发模式(model1)

    model1开发模式 工作流程: ①浏览器请求,JSP页面接收 ②JSP根据请求和JavaBean进行交互 ③JavaBean进行业务处理,JDBC操纵数据库 ④JSP将请求结果返回浏览器页面 利用m ...

  6. jsp开发模式和web计算器案例

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

  7. JSP开发模式2_JSP/Servlet/JavaBean(简单注册功能)

    import java.util.regex.Matcher;import java.util.regex.Pattern; public class RegisterBean {    privat ...

  8. JSP开发模式1(简单注册功能)

    ———————————————————————————————————————————————— import java.util.regex.Matcher;import java.util.reg ...

  9. JavaBean+jsp开发模式 --结合form表单 实例

    1.创建form表单 <%@ page language="java" contentType="text/html; charset=UTF-8" pa ...

随机推荐

  1. javascript 多线程Web Worker不引用外部js文件的方法

    最近在Android开发中 Webview通过调用JavascriptInterface的方式与App交互 在交互的过程中,有些App上的操作时间会比较长,Web中调用的话会造成程序假死的情况 于是想 ...

  2. get_list_or_404(klass, *args, **kwargs)和get_object_or_404(klass, *args, **kwargs)区别

    get_object_or_404() 是通过调用get()方法从model管理器上获取数据, 如果对象不存在,它会报Http404的异常,而不是model的 DoseNotExist异常. get_ ...

  3. cordova-screenshot

    The Screenshot plugin allows your application to take screenshots of the current screen and save the ...

  4. 转(zip文件格式说明)

    zip文件由三部分组成:压缩的文件内容源数据.压缩的目录源数据.目录结束标识结构 1. 压缩的文件内容源数据: 记录着压缩的所有文件的内容信息,其数据组织结构是对于每个文件都由file header ...

  5. js输出到控制台

    console.log(object[, object, ...])在控制台输出一条消息.如果有多个参数,输出时会用空格隔开这些参数. 第一个参数可以是一个包含格式化占位符输出的字符串,例如: con ...

  6. 静态static

    静态使用注意: 1.静态方法只能访问静态成员(方法和变量).非静态方法既可以访问静态也可以访问非静态. 2.静态方法中可以定义this,super关键字.因为静态优先于对象存在. 3. 主函数是静态的 ...

  7. 《Unix/Linux网络日志分析与流量监控》获2015年度最受读者喜爱的IT图书奖

    <Unix/Linux网络日志分析与流量监控>获2015年度最受读者喜爱的IT图书奖.刊登在<中华读书报>( 2015年01月28日 19 版) 我的2015年新作刊登在< ...

  8. java后台访问接口

    // 发送url地址获取信息 public static String sendPost(String jsonStr, String path) { String msg = "" ...

  9. 19.dnw打不开

    用dnw.exe烧写文件时,突然出现电脑死机,重启后,dnw就打不开了,dnw.ini的原因,该文件在c盘目录下,只需要删除它,就可以继续使用dnw了.

  10. Appium常见问题(持续更新)

    1.Original error: Could not parse activity from dumpsys 命令行:adb shell  dumpsys cpuinfo  报:service du ...