、实验目的与要求

1、掌握常用JSP动作标记的使用。

二、实验内容

1、include动作标记的使用

编写一个名为shiyan4_1.jsp的JSP页面,页面内容自定,但要求使用include动作标记将在实验三中编写的includeCopyRight.jsp文件包含进该页面。

请写出相应代码:

 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>实验4-1</title>
</head>
<body> <% out.print("java代码部分"); %>
<jsp:include page="../shiyan_3/includeCopyRight.jsp"/>
</body>
</html>

编写三个JSP页面:main.jsp、circle.jsp和ladder.jsp,将三个JSP页面保存在同一个WEB服务目录中。main.jsp使用include动作标记加载cricle.jsp和ladder.jsp页面。

circle.jsp页面可以计算并显示圆的面积,ladder.jsp页面可以计算并显示梯形的面积。当cricle.jsp和ladder.jsp被加载时获取main.jsp页面include动作标记的param子标记提供的圆的半径以及梯形的上底、下底和高的值。

请写出相应代码:

main.jsp:

 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>main</title>
</head>
<body>
<%
double r = 2.00;
double up = 3.00, down = 6.00, hi = 4.00;
%>
<jsp:include page="circle.jsp">
<jsp:param name="banjing" value="<%=r%>"/>
</jsp:include>
<br/>
<jsp:include page="ladder.jsp">
<jsp:param name="sideup" value="<%=up%>"/>
<jsp:param name="sidedown" value="<%=down%>"/>
<jsp:param name="sidehi" value="<%=hi%>"/>
</jsp:include> </body>
</html>

circle.jsp:

 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>circle</title>
</head>
<body>
<%!
public String getCircleArea(double r){
if(r>0){
double cArea = r*r*3.1415926;
return ""+cArea;
}
else{
return ("输入错误");
} }
%>
<%
String banjing = request.getParameter("banjing");
double r = Double.parseDouble(banjing);
%>
圆的边长为:<%=r%>,面积为:<%=getCircleArea(r)%> </body>
</html>

ladder.jsp:

 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>ladder</title>
</head>
<body>
<%!
public String getLadderArea(double u,double d,double h){
if(u>0 && d>0 && h>0){
double lArea = 0.5*(u+d)*h;
return ""+lArea;
}
else{
return ("输入错误");
} }
%>
<%
String sideup = request.getParameter("sideup");
double up = Double.parseDouble(sideup);
String sidedown = request.getParameter("sidedown");
double down = Double.parseDouble(sidedown);
String sidehi = request.getParameter("sidehi");
double hi = Double.parseDouble(sidehi);
%>
梯形的上下低为:<%=up%>,<%=down%>,高为:<%=hi%>,面积为:<%=getLadderArea(up,down,hi)%> </body>
</html>

2、forword动作标记的使用

编写shiyan4_2.jsp、page1.jsp、page2.jsp和page3.jsp四个JSP文件,当请求shiyan4_2.jsp页面后,该页面会产生一个0~3(不包含3)的随机整数,若这个随机数是0,则将请求转发给page1.jsp页面;若这个随机数是1,则将请求转发给page2.jsp页面;若这个随机数是2,则将请求转发给page3.jsp页面。page1.jsp、page2.jsp和page3.jsp三个页面只显示“这是第n个随机页”(n=1或2或3)一句话。请写出相应代码:

shiyan4_2.jsp:

 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>实验4</title>
</head>
<body>
<%
int n;
int number = (int) (Math.random() * 3);
if (number == 0) {
n = number + 1;
%>
<jsp:forward page="page1.jsp">
<jsp:param name="page1" value="<%=n%>"/>
</jsp:forward>
<%
}
if (number == 1) {
n = number + 1;
%>
<jsp:forward page="page2.jsp">
<jsp:param name="page2" value="<%=n%>"/>
</jsp:forward>
<%
}
if (number == 2) {
n = number + 1;
%>
<jsp:forward page="page3.jsp">
<jsp:param name="page3" value="<%=n%>"/>
</jsp:forward>
<%
}
%> </body>
</html>

page1.jsp:

 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>page1</title>
</head>
<body> 这是第<%=request.getParameter("page1")%>个页面的随机页 </body>
</html>

page2.jsp:

 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>page2</title>
</head>
<body> 这是第<%=request.getParameter("page2")%>个页面的随机页 </body>
</html>

page3.jsp:

 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>page3</title>
</head>
<body> 这是第<%=request.getParameter("page3")%>个页面的随机页 </body>
</html>

大学jsp实验4include,forword的更多相关文章

  1. 大学jsp实验七--JavaBean在JSP中的应用

    值bean的应用 (1)若有如下图所示的两个JSP页面,在第一个的页面的表单中填写相应内容,提交后再显示用户的提交信息.使用JavaBean的方式实现上述效果,请写出相应的代码. bean文件:Tes ...

  2. 大学jsp实验3include指令的使用

    1.include指令的使用 (1)编写一个名为includeCopyRight.jsp的页面,页面的浏览效果如下: 要求“2016”这个值可以实现动态更新.请写出页面代码: <%@ page ...

  3. 大学jsp实验5request,response

    1.request对象的使用 (1)编写一个包含有表单的JSP页面form.jsp,其中包含可以输入姓名和出生地的文本框,提交表单后在另一个页面中显示用户提交的姓名和出生地.请写出相应代码: form ...

  4. 大学jsp实验6session

    1.session对象的使用 (1)设计一个简单的在线问卷调查程序,共有3个页面,分别是one.jsp.two.jsp.three.jsp. 其中,shiyan6_1_one.jsp页面效果如下图所示 ...

  5. jsp实验一

    1.熟悉MyEclipse开发环境,熟悉菜单,修改代码的字体和显示行号. 2.动手做第一个输出hello World的实例. 3.定义一个jsp页面,在其中定义个变量,该变量随机产生,数据范围是[0- ...

  6. jsp实验二

    1.编写一个简单的留言薄,写入留言提交后,显示留言内容 2.编写一个实现页面计数的计数器.思考,如果要求当刷新页面时,不增加计数. 3.编写一个简易购物车,实现向购物车添加商品.思考,如果增加清空购物 ...

  7. ssh三大框架集成后,jsp中采用forword标签提交时会报错的解决方案

    最近这两天心烦,所以没事就做做三大框架,对于今天遇到了一个烦心的事!或许有很多开发人员对于web.xml拦截器的认识不清,出现了这样的情况 <filter> <filter-name ...

  8. JSP实验报告

  9. 【大学物理实验】01 单摆测重力加速度 的 g 计算代码

    单摆测重力加速度 传统摆 (代码没保存,就截了个图) 研究单摆周期与摆长之间的关系 (依旧是g的计算) 我还不太会数据拟合

随机推荐

  1. 设置placeholder无效解决办法

    一.设置placeholder的方法 placeholder属性用来设置控件内部的提示信息 <input type="text" placeholder="请输入用 ...

  2. Appium+Python3+iOS定位元素

    前言: 最近在做IOS自动化测试,IOS的Appium环境都配置OK,执行起来真的慢,慢到怀疑人生,那么今天就来总结一下IOS定位方式和各个定位方式的速度排序. 据我观察,按查找元素的顺序速度,从快到 ...

  3. 用友云开放平台之API网关

    本文介绍选择API网关应考虑的几方面内容,API网关在微服务框架中的作用,API网关如何选型,用友云开放平台的API网关可以做什么. 随着互联网的快速发展,当前已步入移动互联.物联网时代.企业内部系统 ...

  4. p68理想的性质

    1.如何由2.2.4推出后面的结论? 2.为什么A可以等于R? 3.如何证明3? π:R->R/M套用定理2.2.4(2)和(1) R2是R/M,I是R/M的理想也就是R2的理想,所以f^(-1 ...

  5. ubuntu安装chkconfig.deb系统服务管理工具

    chkconfig简介:chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息. 参数用法:   --add 增加所指定的系统服务,让chkconfig指令得以管理它,并同时在系统 ...

  6. 6 基于Servlet 的分页

    实现上图的分页功能,每页显示3条数据,每页显示3页供用户访问,点击左右双箭头时,可以跳转至上一个或者下一个大页,如点击右双箭头显示如下: 1 连接数据库的工具类 package com.latiny. ...

  7. Day 5-6 反射和内置方法之item系列

    python面向对象中的反射:通过字符串的形式操作对象相关的属性.python中的一切事物都是对象(都可以使用反射) #!_*_ coding:utf-8 _*_ class People: def ...

  8. python爬虫scrapy之rules的基本使用

    Link Extractors Link Extractors 是那些目的仅仅是从网页(scrapy.http.Response 对象)中抽取最终将会被follow链接的对象。 Scrapy默认提供2 ...

  9. Postman & API

    Postman & API https://www.getpostman.com/ https://www.getpostman.com/downloads/ Postman Canary h ...

  10. static关键字的用法

    静态变量和静态方法 static关键字的基本用法: 1.修饰变量:被static修饰的变量属于类变量,可以用类名.变量名来引用,而不用直接new一个对象来引用. 2.修饰方法:被static修饰的方法 ...