实验13 JavaBean(二)
实验13 JavaBean(二)
一、实验目的
1、了解MVC的原理
2、熟悉MVC实现的技术框架,即JSP+Servlet+JavaBean
3、掌握使用MVC框架搭建JSP项目
4、掌握AJAX异步数据请求的技巧
二、实验要求
1、使用MVC模式搭建JSP项目
2、提交实验报告,实验报告中附代码和运行结果以及实验心得
三、实验过程
1、请设计并实现下面的Web应用
有一个名为inputNumber.jsp的页面提供一个表单,用户可以通过表单输入两个数和运算符号提交给Servlet控制器;由名为ComputerBean.java生成的JavaBean负责存储运算数、运算符号和运算结果,由名为handleComputer的servlet控制器负责运算,将结果存储到JavaBean中,并负责请求JSP页面lookResult.jsp显示JavaBean中的数据。
inputNumber.jsp代码:
<p>输入运算数、选择运算符</p>
<form action="____(1)_______" method="post"><!—此处产生下拉运算符供用户选择 -->
<input type="text" name="numberOne" />
<____(2)________ name="operator">
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
</_____(2)___________>
<input type="text" name="numberTwo" /><br>
<input type="___(3)________" value="计算"/></form>
(1)handleCompute
(2)select
(3)select
ComputerBean.java代码
package Bean;
public class ComputerBean {
___(4)________ double num1,num2,result;
___(4)_______ String opt;
//此处省略部分setter和getter方法
public double optResult(String opt,double num1,double num2){
if(opt.equals("+")){ result=num1+num2; }
if(opt.equals("-")){ result=num1-num2; }
if(opt.equals("*")){ result=num1*num2; }
if(opt.equals("/")){ result=num1/num2; }
__________(5)__________________;
}}
(4)private
(5)return result
进一步完成handleCompute和lookResult.jsp代码
handleCompute
package servlet;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.servlet.http.HttpSession;
import javabean.ComputerBean;
import java.io.IOException;
@WebServlet(name = "handleCompute" )
public class handleCompute extends HttpServlet {
protected void service(HttpServletRequest request, HttpServletResponse response) throws IOException {
response.setContentType("text/html");
double number1 = Double.parseDouble(request.getParameter("numberOne"));
double number2 = Double.parseDouble(request.getParameter("numberTwo"));
String opt = request.getParameter("operator");
ComputerBean computer = new ComputerBean();
double result = computer.optResult(opt,number1,number2);
System.out.println(result);
HttpSession session = request.getSession();
session.setAttribute("result",result);
response.sendRedirect("lookResult.jsp");
}
}
lookResult.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
结果为${sessionScope.result}
</body>
</html>