、实验目的与要求

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. 十九、多文件上传(ajaxFileupload实现多文件上传功能)

    来源于https://www.jb51.net/article/128647.htm 打开google 搜索"ajaxFileupload' ‘多文件上传"可以搜到许许多多类似的, ...

  2. 自定义threading.local

    1.threading相关. # Author:Jesi # Time : 2018/12/28 14:21 import threading import time from threading i ...

  3. 多线程系列之二:Single Thread Execution 模式

    一,什么是SingleThreadExecution模式?同一时间内只能让一个线程执行处理 二,例子 1.不安全的情况 用程序模拟 三个人频繁地通过一个只允许一个人经过的门.当人通过时,统计人数便会增 ...

  4. 基于CRM跟进(活动)记录中关键字识别的客户跟进加权值的成单概率算法

    1.提取销售人员的跟进记录,分析其中的骂人文字(负面情绪),将有负面情绪的客户的跟进排期,进行降权(权重)操作.重点跟进加权值较高的客户. 执行办法: 将销售与客户沟通的语音:电话,微信,QQ,通过调 ...

  5. b,B,KB,MB,GB,TB,PB,EB,ZB,YB,BB,NB,DB的含义,之间的关系

    1bit=1位2进制信息 1B (byte 字节)1KB(Kilobyte 千字节)=2(10)B=1024B=2(10)B: 1MB(Megabyte 兆字节)=2(10)KB=1024KB=2(2 ...

  6. Java中的break,continue关于标签的用法(转载)

    Java的控制循环结构中是没有关键字goto的,这种做法有它的好处,它提高了程序流程控制的可读性,但是也有不好的地方,它降低了程序流程控制的灵活性,所以说,“上帝是公平的”.所以,Java为了弥补这方 ...

  7. 【转帖】远程显示(操作) 服务器 GUI 程序(图形化界面) (基于 X11 Forwarding + Centos + MobaXterm)

    远程显示(操作) 服务器 GUI 程序(图形化界面) (基于 X11 Forwarding + Centos + MobaXterm) https://zhuanlan.zhihu.com/p/310 ...

  8. VUE项目问题之:去掉url中的#/

    一.问题 使用VUE路由,项目的url总是带有锚点,如下: http://localhost:8082/#/ 二.解决 修改路由文件中 index.js 文件,即 src --> router ...

  9. w3c JS测试

    到W3c的js测试里面溜达了一圈: 做错了几道题: 外部脚本必须包含<script>标签吗? 否!! 这里的外部脚本是指xx.js这个文件,在文件中写js代码是不需要包含script标签的 ...

  10. Dart语法基础

    hello world // Define a function. printNumber(num aNumber) { print('The number is $aNumber.'); // Pr ...