版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
成绩
评阅人
评阅日期
计算机科学与技术系
实验报告
课程名称:JSP网络开发逐步进一步
实验名称:___________JSP基础实验_____________
班级.*********
学号:************
婵名・********
2023年12月20日
Javaweb应用编程基础实验报告
实验1:JSP基础实验
一、实验目的:
•熟悉HTML语法,理解和掌握JSP基本语法。
•初步掌握运用指令、脚本元素和动作元素,进行简朴的JSP和HTML混合编程的方
法和技术。
•理解对象概念,掌握application、session等对象的基本使用方法。
二、实验规定:
•理解WebServer,对的使用Apache的Tomeat建立JSPServer。
•编写程序完毕以下实验内容,通过手工和MyEc1ipse两种方式分别完毕JSP文
献的部署。
•上交实验报告电子文档。
三、实验内容:
1、编写一个JSP程序,计算10!,并显示出结果。规定先声明计算阶乘的方法,再调用
该方法,最后在页面上输出结果。(进阶规定:通过表单提交一个正整数,然后计算它的阶乘。)
2、在JSP页面中静态包含文献。规定程序包含两个文献,主文献静态包含一个可以计
算数据的算术平方根的页面。
3、动态包含页面并传递数据。规定程序包含两个文献,主文献加载次文献,并将随机
产生的0~1之间的数据传递给它,并且在页面上显示出来。(进阶规定:把动态包含改为
动态重定向,比较两者之间的区别。)
4、计算三角形的面积。规定由用户输入三角形的三条边,判断这三条边是
否能构成一个三角形,若能构成三角形,则输出三角形的面积。
5、编写一个简朴的网上商店,用application对象存放网上的商品清单和库存量,用s
ession对象存放用户的购买信息(用户名、商品名及购买数量),然后运用这些信息给用户
结账。
四、实验过程中碰到的问题及解决手段:
(1)一方面就是网页的布局设立,由于我对html不是很熟悉,所以在实验中的页面布局不是
很好看。只能说是尽量让界面看起来好看点吧,但是跟专业的比起来就差远了。我会网页美
工方面在下点功夫的,把界面做的好看点。
(2)就是乱码的问题,但是等我明白了javaweb编程时涉及的编码及出现乱码的因素后,
然后解决乱码,感觉还行了。下面我总结一下如何解决在javaweb编程时解决乱码的方法:
<1>、在post提交的表单中,在servlet中,设立请求和回应的编码。设立如下:
request.setCharacterEncoding("gb2312");
response.setContentType("text/html;charset=gb2312");
在jsp页面中,使用
<%@pagepageEncoding="utf—8"contentType="text/html;charset
=gb2312"%>
设立回应对象的编码,同样使用request.setCharacterEncoding("gb2312");
设立请求对象的编码。
<2>,在使用get提交的表单时,使用
Request.getParameter("paramName").getBytesf4ISO—8859—1","GB2
312”);
设立对请求对象中参数的解析编码。
<3>、使用过滤器来同一设立编码。
五、程序源代码:
问题1源代码:源文献:first.jsp
first.jsp
<%@page1anguage="java"import="java.util.pageEncoding=
nutf-8"%>
<!DOCTYPEHTMLPUBLICn-//W3C//DTDHTML4.01Transitiona1//EN',>
<html>
<head>
<tit1e>first</title>
<metahttp-equiv=r,pragmar,content=f,no-cache">
<metahttp-equiv=ncache-contro1"content="no-cache">
o<metahttp-equiv=nexpires"content="0n>
<metahttp-equiv="keywords"content="keywordlfkeyword2f
keyword3">
0cmetahttp-equiv="descriptJon"content="Thisismypage">
</head>
<body>
<divalign=ncenter">
〈MARQUEESCrollAmount=3direction=rightwidth=400hei
ght=40>
<FONTface=楷体_GB2312color=#888888size=6>完毕整数
阶乘运算的小例子</FONT>
</MARQUEE>
</div>
<br>
<br>
<br>
<br>
<%
if(request.getParameter("integervalue”)==null){
%>
<formacti0n="first,jsp"method="post">
<tab1ealign="center1'border="0"bgcolor="#999999”>
<tr>
<td> ;  ; ;请输入要完毕运算的整
数:</td〉
<td><inputtype="ext"name=flintegerVa1ue"size="
40"></td>
</tr>
<tr>
<td> </td>
<td> </td>
<tr>
<tr>
<td>  ; &nbs
p;Snbsp;
 ;  ; ; ;&nbs
p; Snbsp;
<inputtype=ureset"name=r,reset9'value="重填">
</td>
<td> ; ;
<inputtype="submitnname=r,submit"value="提交r,x/td>
<tr>
</table>
</form>
<%}
else{
intvalue=Integer.parselnt(request.getParameter("int
egerValue'*).trim());
intresult=l;
if(va1ue==0)result=0;
else(
for(inti=1;i<=va1ue;i++){
result=resu1t*i;
)
)
%>
<tablealign="center"border="0"bgcolor="#999999”>
<tr>
<td>&nbsP;  ; ; ;&n
bsp;<%=value%>!=</td>
<td><%=resuit>  ;&nbsP;
</td>
</tr>
</table>
<%}%>
</body>
</html>
问题2源代码:源文献:second.jspca1Area.jsp
second.jsp
<%@page1anguage="java"import="java.uti1.★npageEncoding
="utf-8rl%>
<!DOCTYPEHTMLPUBLICn-//W3C//DTDHTML4.01Transitional//ENn>
<html>
<head>
<tit1e>second</title>
<metahttp-eQuiv=rtpragmaf,content="no-cache">
<metahttp-equiv="cache-control"content=vno-cachelf>
o<metahttp-equiv="expires"content="0">
<metahttp—equiv=,rkeywordsvcontent="keywordJ,keywo
rd2fkeyword3">
o<metahttp-equiv=lrdescriptionricontent="Thisismypage">
</head>
<body>
<divalign="center1^
<FONT楷体_GB2312co1ov=U888888size=6>计算三角形面
积的小例子</FONT〉
</div>
<br>
<br>
<br>
<br>
<%
if(request.getParameter(naM)==nulllirequest.getPar
ameter(HbH)==null
IIrequest.getParameter(nc")==null){
%>
<formaction="second.Jspnmethod="post">
<tablealign="center"border="〃"bgcolor="#999999”>
<tr>
<tda1ign="right”〉 边a的长度为(m): &
nbsp; </td>
<td><inputtype="textnname="a"size=,r25"></td>
</tr>
<tr>
<tda1ign="right”> 边b的长度为(m):&nbs
p; </td>
<td><inputtype="text"name="b"size="25,r></1d>
</tr>
<tr>
<tdalign—right,r> 边c的长度为(m): ;&n
bsP;&nbsP;</td>
<td><inputtype=ntextrrname="c"size="25"〉</td>
</tr>
<tr>
<td> ;</td>
<td> </td>
<tr>
<tr>
<td>  ;  ; ;  ;&
nbsp; ;  ;
 ;  ;  ;
<inputtype="reset"name="reset"value="重填n>
</td>
<td>  ;<inputt
ype="submit“name=nsubmit"va1ue=H提交"></td>
<tr>
</table>
</form>
<%}
e1se{
%>
<%@inc1udefi-le=ncalArea.jsp"%>
<%}%>
</body>
</html>
calArea.jsp
<%@pagelanguage="java〃import=rrJava.utJ1.pageEncoding="u
tf-8n%>
<%@pageimport="java.lang.Mathr,%>
<!DOCTYPEHTMLPUBLICn—//W3C//DTDHTML4.01Transitiona1
//EN”>
<html>
<head>
<metahttp-equiv="pragmancontent=F,no-cacheu>
o<metahttp-equiv="eache-control"content="no-cachen>
<metahttp-equiv="expires"content=,r0,r>
o<metahttp-equiv="keywords“content=eyword1fkeyword2,keyw
ord3n>
o<metahttp-eQuiv="description"content="Thisismypage,r>
</head>
<body>
<%
/*获取三角形的三条边的值*/
inta=Integer.parseInt(request.getParameter(HaH).trim());
intb=Integer.parselnt(request.getParameter(nbH.trim());
intc=Integer.parseint(request.getParameter(ncn).trim());
doublep=(a+b+c)/2;
doublearea=Math.sqrt(p*((p-a)*(p—b)*(p-c)));
%>
〈tablealign=,rcenter"bgco1or="#999999">
<tr>
<tdalign="center”〉边长分别为a=<%=a=>,b=<%=b%>,c=<%=c%>,
的三角形面积为:d>
<td><%=area%> ;(m*m)</td>
</tr>
</table>
</body>
</html>
问题3源代码:源文献:Third.jspshowNumber.jsp
Third.jsp
V%@pagelanguage="java11import=r,java.util-升“pageEncoding="u
tf-8"%>
<%®pageimport=,rjava.util.Random"%>
<%
Stringpath=request.getContextPath();
StringbasePath=request.getScheme()+"://H+request.getServ
erName()+":"+request.getserverPort()+path+"/";
%>
<!DOCTYPEHTMLPUBLICn-//W3C//DTDHTML4.01Transitional//ENH>
<html>
<head>
<basehref=,r<%=basePath%>,f>
<title>Third</title>
<metahttp-equiv="pragmar,content="no-cache">
〈metahttp-equiv="cache-contro1"content="no—cache">
<metahttp-equiv="expiresncontent=,r0">
o<metahttp-equiv="女eywords"content="keywordlfk.eyword2,key
word3">
<metahttp-equiv="description"content=,fThisismypagen>
</head>
<body>
<%
Randomnum=newRandom();
Randomvalue=newRandom();
intnum1=num.nextlnt(10)+1;
Stringstr="";
for(inti=0;i<numl;i++){
str=str+value.nextlnt(1000)+“:”;
}
n
request.setAttribute("strArrayzstr);
RequestDisPatcherreqdisp=request.getRequestDisp
atcher(”showNumber.jspH);
reqdisp.include(request,resp0nse);
%>
<%—-<]sp:includepage=nshowNumber.jsp"/>一一%>
</body>
</htm1>
showNumber.jsp
<%@page1anguage=fljava"import=Hjava,util,*〃pageEncod
ing=UUTF-8^>
<!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitiona1
//EN">
<html>
<head>
o<metahttp-equiv="pragma"content="no-cachen>
<metahttp-equiv="cache—contro1"content="no-cache">
<metahttp—equiv="expires"content="0">
<metahttp-equiv="keywords"content="keywordlfkeyword2,
keyword3"〉
o<metahttp—eQuiv="description"content="Thisismypage">
</head>
<body>
<divalign="center”〉
<FONTface=楷体_GB2312#888888size=6〉显示随机数的
例子</FONT>
</div>
<br>
<br>
String[]strArray=request.getAttribute(HstrArray")・t
oString().trim().sp1it(n:n);%>
<tablealign="center1'bgco1or="#999999">
<caption>随机数序歹!strArray.length%></caption>
<%if(strArray.1ength>0){
for(inti=0;i<strArray.length;i++){
%>
<tr>
<tdalign="centerr,> ; ; 随机数V%=
i%>:</td>
<tdalign=n6>en/erF,>  ; <%^strArray
[i]%x/td>
</tr>
<%}
}e1se{%>
<tr>
<tda1ign=,fcenter,r> &nbsP;当前没有产生随机
数</td>
</tr>
<%}%>
</tab1e>
</body>
</htm1>
运营截图:(随机运营两次结果)
显示随机数的例子
随机数序列10
随机数0:942
随机数1:111
随机数2:479
障机数3:69
障机数上933
随机数5:422
谑机数6:974
随机数7:141
随机数8:710
随机数9:76
显示随机数的例子
随机数序列3
随机数0:382
随机数1:458
随机数2:303
问题4源代码:源文献:fourth.jspcalArea.jsp
<%@pagelanguage=11java"import=,rJav.util.%“pageEncoding="
utf-8n%>
<%
Stringpath=request,getContextPath();
StringbasePath=request.getScheme()+”://"+request.getServ
erName()+":n+request.getServerPort()+path4-n/n;
%>
<!DocTYPEHTMLPUBLICH-//W3c//DTDHTML4.01Transitiona1/
/ENH>
<htm1>
<head>
<basehref=,r<%=basePath%>,r>
<title>MyJSP1f0urth.jspzstartingPage</tit1e>
<metahttp-equi\="pragma〃content=Tlno-cache">
<metahttp-equiv=ucache-control"content="no-cache">
<metahttp-equiv="expiresricontent="0n>
o<metahttp-equiv="keywords"content="keyword1fkeyword2e
yword3">
<metahttp-equiv="descr/ption"content=〃Thisismyp
age"〉
</head>
<body>
<divalign="center">
<FONT£ace=楷体_GB2312colox#888888size=6>计算三角形面积的
小例子[测试是否为三角形]</FONT>
</div>
<br>
<br>
<br>
<br>
<%
if(request.getParameter("an)==null||request.getParam
eter(Hb”)==nu11
lirequest.getParameter(',cn)==nu11){
%>
<formaction=nfourth.jsp1'method="post”>
<tablea1ign="centerriborder="0〃bgco1or=r,#999999n>
<tr>
<tdalign=Mri^ht,r> ; 边a的长度为(m): ;&nbs
p; </td>
<td><inputtype="text"name=r,a"size=v25r,X/td>
</tr>
<tr>
<tdalign="rig力t”〉 边b的长度为(m): ;&nbs
p; </td>
<td><inputtype="text11name="bnsize="25">V/td>
</tr>
<tr>
<tda1ign="right"> ; ;边c的长度为(m):
</td>
<td><inputtype="textr,name=f,cr,size="25">V/td>
</tr>
<tr>
<td> </td>
<td> </td>
<tr>
<tr>
<td>  ;  ;
Snbsp;  ;
 ; ; ; ; &nb
sp;
<inputtype="reset"name=reset"va1ue=M重填n><
/td>
<td> ; ;&nbsP; ; ; ; <in
puttype="submit"name=11submitf,value="提交nx/td>
<tr>
</tab1e>
</form>
<%}
else{
inta1=1nteger.parseint(request.getParameter("
an),trim());
intb1=Integer.parseInt(request.getParameter(”b”).
trim());
intcl=Integer.parselnt(request.getParamete
r(nc").trim());
/*判断是否为三角形*/
if(al+b1>cl&&al+cl>bl&&bl+cl>al)[%>
<%@includefi1e=ncalArea.Jsp"%>
<%}e1se{%>
<divalign=ncenterlf>
<F0NTface=楷体_GB2312col0r="red"size=5>
你输入的三角形不能构成三角形V/FONT>
</div>
<%}}%>
</body>
</html>
运营结果:
计算三角形面积的小例子[测试是否为三角形]
计算三角形面积的小例子[测试是否为三角形]
你输入的三角形不能构成三角形
问题5源代码:源文献:login.jspfifth.jspaccount.jsp
login.jsp
<%@page1anguage—11Java"import="java,util.pageEncodin
g="utf-8"contentType="text/html;charset=gb2312"%>
<!DOCTYPEHTMLPUBLIC”—//W3C//DTDHTML4.01Transitional//EN">
<htm1>
<head>
<tit1e>1oginpage</tit1e>
o<metahttp-equiv="pragma"content="no—eache”>
<metahttp-equiN-"cache-control11content="no-cachen>
o<metahttp-equiv="expires"content="0">
0cmetahttp-equiv="keywords"content="keywordlfkeyword2fkeyw
ord3u>
<metahttp-equiv="descriptionncontent=r'Thisismypage">
</head>
<body>
<divalign=,rcenter">
<FONTtace=楷体_GB2312co1or=#888888siz6=6>欢迎来至U图书
选购系统</3。91>
</div>
<br>
<br>
<br>
<formaction=nfifth.jsp"method="post,r>
<tab1ealign="center"border="0"bgcolor="#999999”>
<tbody>
<tr>
<tda1ign="center”>用户名:</td>
<tdxinputtype=utext"name=f,usernsize="26">V/td>
</tr>
<tr>
<tdalign="ce〃ter"〉密码:</td>
<tdxinputtype=r,passwordr,name="password"size
=,f16"></td>
</tr>
<tr>
<tdalign="center"><inputtype="rese£"name=
"reset"va1ue=r,重填rr></td>
<tda1ign=,rcenterwxinputtype="submit"
name="submit"value="登陆"></td>
</tr>
</tbody>
</table>
</form>
</body>
</html>
fifth.jsp
V%@pagelanguage="java"import="java.util.*”pageEncod
ing="utf-8"contentType="text/html;charset=gb2312"%>
<!DOCTYPEHTMLPUBLIC”-//W3C//DTDHTML4.01Transitiona1//
EN”>
<html>
<head>
<title>fifth</title>
o<metahttp-equiv="pragmar,content="no-cache">
©<metahttp-equiv="cache-controlf,content=,rno-cachen>
<metahttp-equiv="expires"content="0,r>
o<metahttp—equiv="keywords"content="keywordl,keyword2,keywo
rd3”>
<metahttp-equiv="description"content="Thisismypag
e,r>
</head>
<body>
<divalign=,rcenter">
<FONT£ace=楷体_GB2312CO1or=#888888size=6>图书歹」表1</9(2^
T>
</div>
<br>
<%
//设立编码
request.setCharacterEncoding(”gb2312");
if(request.getParameter("user*')!=null&&req口est.getPara
meter("password")1=nul1){
<%
//获取用户名
StringuserName=request.getParameter(MuserName");
Stringpassword=request.getParameter(Mpasswordn);
//将该用户名保存到session对象中
session.setAttribute("user”,request.getParameter("usern));
%>
<%
StringuserName=session.getAttribute(Uuser").toString();
%>
<formaction=accOunt.jspmethod="post">
<tab1ea1ign=,rcenter"border=〃0"bgcolor="#999999”
ce1lspacing=1110">
<tr>
<thalign="center"〉图书图片</th>
<thalign="center"〉图书名称〈/th>
<thalign="center">价格</th〉
<tha1ign=ucenter”〉数量</th>
<tha1ign=ftcen£er”>购买V/th>
<tha1ign=ncenter”〉购买数量〈/th〉
</tr>
<tr>
o<tdalign="centerwximgsrc=r,/mages/01.jpg"=”图片加
载失败"align="middle〃width="85"height=〃80"></td>
<tdalign=ncenter”>计算机基础与应用V/td>
o<tdalign="centern>25$</td>
o<tda1ign=,fcenter,r>100</td>
<tda1ign="center^xinputtype="checkbox"name=
heck01"></td>
oVtdalign="centerw><inputtype="text"name=nnu
mOl〃>V/td>
</tr>
<tr>
o<tdalign=ncenter,r><imgsrc=,fimages/02.jpg"a1t=
"图片加载失败"align=rrn?iddlewidth=n85nheight=〃80</td>
<tdalign="centrer”>计算机应用基础教程</td>
o<tdalign="centerr,>50$</td>
<tdalign="center”>100</td>
o<tdalign="center"><inputtype="checkbox"name
=11check02"></td>
<tdalign="centertf><inputtype="text〃name="
numO2n></tdi>
</tr>
<tr>
<tdalign=ncenter"><imgsrc="images/03.jPg"alt=''图
片加载失败"align="midd/e"width="85"height="80"></td>
<tdalign="cente厂”>计算机网络基础〈/td>
<tda1ign="center,r>60$</td>
o<tdalign=ncenterw>100</td>
<tdalign=,rcenterz,xinputtype="checkbox"name="chec
k03"></td>
<tda1ign="center"xinputtype="textrtname=nnum03
,rx/td>
</tr>
<tr>
<tda1ign=11centern><imgsrc="images/04.jpg"alt="图片
加载失败〃align=umiddle»width="85"height="80"></td>
o<tdalign="center”>计算机网络技术</td>
o<tda1ign="center,r>25$</td>
0<tdalign=,rcentern>100</td>
<tdalign=,fcenterwxinputtype=Hcheckboxr,name="
check04"></td>
o<tdalign=°center,rxinputtype="text"name="num04"></
td>
</tr>
<tr>
<tdalign=ncentern><imgsrc="images/05.jpna1t=
”图片加载失败"align=rr7771ddle11width=n85nheight="80"></td>
o<tda1ign="cent:ernet使用技术</td>
o<tdalign="center,f>35$</td>
o<tdalign="centerw>100</td>
o<tda1ign=,rcenterr,xinputtype=,rcheckbox"name=nch
eckO5Ir></td>
<tda1ign=ncenter"><inputtype="text"name=wnum05n
></td>
</tr>
<tr>
oVtdalign="centerr,ximgsrimages/06.jpg"”图片
加载失败"a1ign=flmiddle"width="85"height="8。"></td>
<tdalign="cen电脑入门</td>
<tdalign=ucenter,r>30$</td>
<tdalign="center">100</td>
<tda1ign=ucenterwxinputtype=r,chec
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 员工泄密协议书
- 西安旅游协议书
- 资助协会协议书
- 装卸管理协议书
- 小投资合同协议
- 内墙刮大白协议书
- 重庆日租界协议书
- 舞剧编排协议书
- 委托提货协议书
- 贫困救助协议书
- 2025年秋人教版(2024)初中美术七年级上册期末知识点复习卷及答案
- 2025年高校行政面试题及答案
- 调车服务合同范本
- 2025年新《中国传统文化》考试复习题(附答案)
- 行车搬迁改造协议书
- 辽宁省辽西重点高中2025-2026学年高一上学期11月期中考试数学试题(原卷版)
- 甘肃省庆阳市七区2024-2025学年高一上学期期末联考语文试题
- 人教版小升初考试数学试卷(含解析)重庆市渝北区鲁能巴蜀小学2025年
- 2025年福建省综合评标专家库考试题库(二)
- 2024苏州大学辅导员招聘笔试真题及答案
- 仓库安全管理台账模板
评论
0/150
提交评论