、实验目的与要求

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. i++ 相比 ++i 哪个更高效?为什么?

    ++i的效率高些,++i在运算过程中不产生临时对象,返回的就是i,是个左值,类似++i=1这样的表达式是合法的,而i++在运算的过程中会产生临时对象,返回的是零时对象的值,是个右值,像i++=1这样的 ...

  2. 关于R语言中dnorm,pnorm,qnorm,rnorm的用法

    dnorm,pnorm,qnorm,rnorm的表达式: 其中x和q是由数值型变量构成的向量,p是由概率构成的向量,n是随机产生的个数 mean是要计算正态分布的均值,缺省值为0,sd是计算正态分布的 ...

  3. 软件工程(FZU2015) 赛季得分榜,第三回合

    SE_FZU目录:1 2 3 4 5 6 7 8 9 10 11 12 13 积分规则 积分制: 作业为10分制,练习为3分制:alpha30分: 团队项目分=团队得分+个人贡献分 个人贡献分: 个人 ...

  4. asp.net mvc 三种过滤器

    前几天面试遇到这个问题,发现不是很了解,学习了下,这里记录下来 经常需要将用户的操作记录到日志中,或者是验证用户是否登录了网站, 面对这样的需求,以前的操作是自定义一个统一的全局方法,然后做处理, 在 ...

  5. Oracle 同义词(Synonym)

    同义词(Synonym)是表.索引.视图等模式对象的一个别名.通过模式对象创建同义词,可以隐藏对象的实际名称和所有者信息,隐藏分布式数据库中远程对象的设置信息,由此为对象提提供一定的安全性保证.同义词 ...

  6. spring AOP源码分析(一)

    对于springAOP的源码分析,我打算分三部分来讲解:1.配置文件的解析,解析为BeanDefination和其他信息然后注册到BeanFactory中:2.为目标对象配置增强行为以及代理对象的生成 ...

  7. Angular ngRepea

    <!DOCTYPE html><html ng-app><head lang="en"> <meta charset="UTF- ...

  8. CLOUD物料列表查询的一份跟踪

    SELECT * FROM (SELECT t0.FNUMBER fnumber, t0_L.FNAME fname, t0_L.FSPECIFICATION fspecification, t0.F ...

  9. 如何在网页中用echarts图表插件做出静态呈现效果

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  10. 使用PHP进行SOCKET编程

    一.SOCKET原理图 二.SOCKET常用函数 1.创建socket函数: resource socket_create ( int $domain , int $type , int $proto ...