JSP:利用MVC实现三角形、梯形面积计算

3 篇文章 0 订阅
3 篇文章 0 订阅

利用MVC实现三角形、梯形面积计算

  注:博客说明,本博客主要介绍jsp实现MVC模式的一个简单的例子。
  通过对图形的计算,实现MVC,加深对MVC的理解。

一.主要内容

  1. 设计一个Web应用,该Web应用提供两个JSP页面,inputData.jsp页面使得用户可以输入三角形三边和梯形的上底、下底和高;showResult.jsp负责显示三角形和梯形的面积。
  2. Web应用提供一个名字为computerArea的Servlet对象(Servlet类名为AreaServlet),computerArea负责接收inputData.jsp页面中传递过来的参数,并负责计算三角形和梯形的面积,所有的数据都存储在Area.java这个JavaBean中。

二.实现步骤

  1. 编辑两个jsp页面,作为输入和输出的页面,设计的方式可以根据自己的喜好设计。输入的页面包括,图形的选择,图形的三个边的长度和提交按钮;输出界面包括计算的图形和计算面积的结果;然后将输入的结果提交给相应的servlet。

  2. 编写Javabean,作为图形的模式,包含的属性有图形的类型,图形的三个边的长度,以及计算的结果;包含的方法是由代码生成的各个属性的get和set函数。

  3. 编写servlet,作为提交数据的处理类,在这个类的函数中包含处理提交数据和返回结果的方法的实现,在存储数据的方式,可以采取request或者session,笔者采用了session。编写完servlet莫忘了要在web.xml配置相关属性,访问方式,以及在相应的jsp页面的提交,需要根据配置设置。实现关键的代码如下:

try{  
			 //1. 获取的数据;
			double a = Double.parseDouble(req.getParameter("n1"));
			double b = Double.parseDouble(req.getParameter("n2"));
			double c = Double.parseDouble(req.getParameter("n3"));
			String str = req.getParameter("tuxing");
			String strModel="";
			
			//2.计算面积;
			double area = 0;
			if(str.equals("sanjiao"))
			{
				strModel="三角形";
				double p=0;
				p=(a+b+c)/2.0;
				area=Math.sqrt(p*(p-a)*(p-b)*(p-c));
			}
			else
			{
				strModel="梯形";
				area=(a+b)*c/2;
			}
			
			//3.创建JavaBean,并赋值,保存到session对象中;;
			AreaBean aBean = new AreaBean();
			aBean.setA(a);
			aBean.setB(b);
			aBean.setC(c);
			aBean.setModel(strModel);
			aBean.setResult(area);
			HttpSession session = req.getSession(true);//获取session对象;
			session.setAttribute("ABean", aBean);//保存在session对象中;
			
			//4.重定向;
			resp.sendRedirect("showResult.jsp");//重定向到输出界面:
			
			
		    }
		catch(NumberFormatException e){
			resp.sendRedirect("inputData.jsp");//输入错误,返回初始界面:     
		} 
  1. 关于结果页面的jsp获取session内置对象。
<jsp:useBean id="ABean" type="beans.AreaBean" scope="session" 
</jsp:useBean>
<jsp:getProperty property="model" name="ABean"/>计算面积:<jsp:getProperty property="result" name="ABean"/>

三.实验截图

  1. 计算三角形面积,输入如图1,输出结果如图2。
    图1 三角形数据输入
    图1 三角形数据输入
    图2 三角形面积的计算结果
    图2 三角形面积的计算结果

  2. 计算梯形,数据的输入如图3,输出面积如图4.
    图3 梯形数据的输入
    图3 梯形数据的输入
    图4 梯形面积的输出
    图4 梯形面积的输出

四.结果反思

     jsp的MVC模式,利用jsp+Javabean+servlet,实现网页的页面设计,数据模式
 和数据的处理,使得网页的设计结构更加清楚,可读性更强,以及各部分的关系也更
 好的分开,有利于网页的大规模开发。通过简单的面积计算的模拟,也可以看得出jsp
 的MVC模式处理的优点,各部分的功能更加独立。
    在设计的过程中,首先要明确自己的设计的内容,实现步骤,才能比较快速准确
 的设计,少一些逻辑上的错误。

注:eclipse的项目链接:
https://pan.baidu.com/s/1CryLLOcN5DbMsHy3ZVHU3Q&shfl=sharepset

实 验 报 告 课程名称 Java Web技术 实验项目 实验4 JavaBean与Servlet 实验仪器 实验4 JavaBean与Servlet 一、实验目的 1. 掌握编写JavaBean的规范,学会如何在JSP中使用JavaBean。 2. 掌握编写Servlet的规范,学会如何配置Servlet,如何在JSP中使用Servlet 3. 掌握JSP、JavaBean和Servlet综合应用的基本原则 二、实验要求 创建一个WEB应用,综合利用JSP、JavaBean和Servlet技术实现用户登录(注册功能 选做)。程序至少包含:一个登录页面login.jsp一个欢迎页面hello.jsp一个serv let和一个bean。使用实验3中创建的数据库和表t_user,完成如下要求: 1. 用户在login.jsp输入用户名和密码,数据提交给servlet。 2. 设计Bean,封装数据库表t_user(实验3中创建的)中一个用户的所有信息。 3. servlet完成用户身份验证(通过从表中条件检索来验证)。如果用户合法,将该用户 所有的信息放入上述bean的实例中,并存入session,转到hello.jsp;否则转到err or.jsp 4. hello.jsp从session中取出用户信息并显示。 5. error.jsp显示错误信息"用户名或密码错误!",该页面中包含回到login.jsp的链接。 实验结果 1. login.jsp存放的物理位置在F:\workspace\shiyan4\WebContent\login.jsp 。源码如下: <%@ page contentType="text/html;charset=utf-8" language="java"%> <html> <head> <title>用户登陆</title> </head> <body> <form action="/shiyan4/Servlet" method=Get name=form> <table> <tr> <td>用户名:</td> <td><input type="text" name="username"></td> </tr> <tr> <td>密码:</td> <td><input type="password" name="password"></td> <td><input type="submit" name="Login" value="登陆"></td> </tr> </table> </form> </body> </html> 2. bean的名称为information ,物理存放位置在 F:\workspace\shiyan4\src\shiyan4\information.java。源码如下: package shiyan4; public class information { String username =null; String password=null; public String getname() { try { byte b[]=username.getBytes("ISO-8859-1"); username=new String(b); return username; } catch(Exception e) { return username; } } public String getpsw() { try{ byte c[]=password.getBytes("ISO-8859-1"); password=new String(c); return password; } catch(Exception e) { return password; } } public void setname(String newname) { username=newname; } public void setpsw(String newpsw) { password=newpsw; } } 3. Servlet名称为 Servlet ,物理存放位置为F:\workspace\shiyan4\src\shiyan4\Servlet.java 。 在web.xml中对上述Servlet进行配置的代码为: <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ja
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值