大学jsp实验4include,forword
一、实验目的与要求
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的更多相关文章
- 大学jsp实验七--JavaBean在JSP中的应用
值bean的应用 (1)若有如下图所示的两个JSP页面,在第一个的页面的表单中填写相应内容,提交后再显示用户的提交信息.使用JavaBean的方式实现上述效果,请写出相应的代码. bean文件:Tes ...
- 大学jsp实验3include指令的使用
1.include指令的使用 (1)编写一个名为includeCopyRight.jsp的页面,页面的浏览效果如下: 要求“2016”这个值可以实现动态更新.请写出页面代码: <%@ page ...
- 大学jsp实验5request,response
1.request对象的使用 (1)编写一个包含有表单的JSP页面form.jsp,其中包含可以输入姓名和出生地的文本框,提交表单后在另一个页面中显示用户提交的姓名和出生地.请写出相应代码: form ...
- 大学jsp实验6session
1.session对象的使用 (1)设计一个简单的在线问卷调查程序,共有3个页面,分别是one.jsp.two.jsp.three.jsp. 其中,shiyan6_1_one.jsp页面效果如下图所示 ...
- jsp实验一
1.熟悉MyEclipse开发环境,熟悉菜单,修改代码的字体和显示行号. 2.动手做第一个输出hello World的实例. 3.定义一个jsp页面,在其中定义个变量,该变量随机产生,数据范围是[0- ...
- jsp实验二
1.编写一个简单的留言薄,写入留言提交后,显示留言内容 2.编写一个实现页面计数的计数器.思考,如果要求当刷新页面时,不增加计数. 3.编写一个简易购物车,实现向购物车添加商品.思考,如果增加清空购物 ...
- ssh三大框架集成后,jsp中采用forword标签提交时会报错的解决方案
最近这两天心烦,所以没事就做做三大框架,对于今天遇到了一个烦心的事!或许有很多开发人员对于web.xml拦截器的认识不清,出现了这样的情况 <filter> <filter-name ...
- JSP实验报告
- 【大学物理实验】01 单摆测重力加速度 的 g 计算代码
单摆测重力加速度 传统摆 (代码没保存,就截了个图) 研究单摆周期与摆长之间的关系 (依旧是g的计算) 我还不太会数据拟合
随机推荐
- WCF系列教程之消息交换模式之请求与答复模式(Request/Reply)
1.使用WCF请求与答复模式须知 (1).客户端调用WCF服务端需要等待服务端的返回,即使返回类型是void (2).相比Duplex来讲,这种模式强调的是客户端的被动接受,也就是说客户端接受到响应后 ...
- Final Destination II -- 矩阵快速幂模板题
求f[n]=f[n-1]+f[n-2]+f[n-3] 我们知道 f[n] f[n-1] f[n-2] f[n-1] f[n-2] f[n-3] 1 1 ...
- 容器化-Docker实战
导读:本文系统性介绍Docker安装.Docker组件.Docker命令.Dockerfile语法和Docker应用,通过上述介绍使我们已经对docker基本操作有一定了解. 一.前言 本文将系统性的 ...
- spring实例入门
首先是bean文件: package onlyfun.caterpillar; public class HelloBean { private String helloWord = " ...
- [2017BUAA软工助教]个人项目准备工作
BUAA软工个人项目准备工作 零.注册Github个人账号(你不会没有吧..) 这是Git的使用教程: http://www.cnblogs.com/schaepher/p/5561193.html ...
- mybatis之批量插入
一.导入功能优化 普通for循环,对于导入大量数据时非常耗时.可以通过Mybatis的批量插入功能提高效率.每批次导入的数据不能太多,否则会报错.通过测试发现,每批次200条为宜. 测试结果: 开启事 ...
- Java 常见编码格式——URL、Base64
数据编码 我们对数据进行编码是因为在某些情况下,不能直接传输中文字符或者其他字符,比如在设置http协议的头部信息或者cookie时,如果value有中文字符,那么就需要将中文字符使用某种编码方式进行 ...
- WCF使用相关
1.不显示WCF服务主机 在WCF项目属性中的WCF选项卡总关闭下图的选项 2.在其他项目中承载WCF服务 其他加载的操作一致,需要把WCF的endpoint和behavior节点复制到 启动服务的那 ...
- telnet总结
telnet是经常使用的客户端链接工具,总结一下常用的telnet的使用方法 1) 连接 telnet //链接swoole 2)退出当前连接 ctrl + ] 回车 3)查看常用的一些命令 ? 回车 ...
- jmeter5.0生成html报告 快速入门
JMeter性能测试5.0时代之-多维度的图形化HTML报告 快速入门 1.确认基本配置 在jmeter.properties或者user.properties确认如下配置项: jmeter.save ...