《JSP实用教程第三版》课后答案最新整理.docx
《《JSP实用教程第三版》课后答案最新整理.docx》由会员分享,可在线阅读,更多相关《《JSP实用教程第三版》课后答案最新整理.docx(18页珍藏版)》请在冰豆网上搜索。
![《JSP实用教程第三版》课后答案最新整理.docx](https://file1.bdocx.com/fileroot1/2023-7/9/2dc1ff95-c0fb-49e6-9a30-a0e791987a80/2dc1ff95-c0fb-49e6-9a30-a0e791987a801.gif)
《JSP实用教程第三版》课后答案最新整理
《JSP实用教程(第三版)》课后答案
第1章JSP简介
1.安装Tomcat引擎的计算机需要事先安装JDK吗?
答:
需要。
2.怎样启动和另闭Tomcat服务器?
答:
bin目录下使用staitup.bat启动Tomcat服务器。
bin目录下使用shutdown.bat关闭Tomcat服务器。
3.Boy.jsp和boy.jsp是否是相同的JSP文件名字?
答:
不是
4.请在D:
\下建立一个名字为water的目录・并将该目录设置成一个Web服务目录,然后编写一个简单JSP页面保存到该目录中・让用户使用虚拟目录fish来访问该JSP页面。
答:
设置方法:
1建立D:
\water目录;
2修改seiver.xnil文件,在上一行添加【
\watei'1debug-'O"ieloadable="tnie'7>
3使用hup】〃localhos匸8080/fish/examplel_l.jsp访问examplel_l.jsp页面.
5•假设Dalian是一个Web服务目录•其虚拟目录为moon°A.jsp保存在Dalian的子目录sea中。
那么在Tomcat服务器(端口号8080)所在计算机的浏览器键入下列哪种方式是访问A.jsp的正确方式?
A.http:
//127.0.0丄8080/A.ispB.http:
//l27.0.0.1【8080,Dalian/A.jsp
C.http[//127.0.0.1】8080/moon/A.jspD.http:
//l27.0.0.1「8080/moon/sea/A.jsp答:
D
6.如果想修改Tomcat服务器的端口号・应当修改哪个文件?
能否将端口号修改为80?
答:
修改Tomcat服务器的conf目录下的主配置文件seiver.xinl可以更改端口号若Tomcat服务器上没有其它占有80端口号的程序,可以将其修改为80,否则不能。
第2章JSP语法
1."<%!
"和”%>H之间声明的变量与"<%”和"%>"声明的变量有何不同?
答]
"<%!
“和“%>“声明的变量为类的成员变量,其所占的内存直到Tomcat服务器关闭才释放.
n<%"和”%>”为类方法屮声明的局部变量,仅在JSP页面后继的程序片及表达式中有效.
2.如果有2个用户访问一个JSP页面■该页面中的Java程库片将被执行几次?
答:
2次(当有一个用户访问JSP页面,JAVA程序片就被访问一次).
5.假设有两个不同用户访问下列JSP页面hellojsp#请问第一个访问和第二个访问hellojsp页面的用户看到的页面的效果有何不同?
hello.jsp
<%@pagecontentTvpe=ntext/litml;chaiset=GB2312n%>
<%@pageisTlueadSafe=nfalsen%>
<%!
iiitsum=l;
voidadd(iiit
m){sum=sum
+m;
}
%>
<%intn=100;
add(n);
%>
<%=suni%>
答:
第一个客户看到结果是101;
第二个客户看到结果是201;
6.请编写一个简单的JSP页面'显示英文字母表。
<%@pagecontentType=ntext;litml;chaiset=GB2312n%>
’
<%
fbr(chaic=lA,;c<=,Z,;c++)
{
out.piintln(n”+c);
}
%>
7.请简单叙述include指令标记和include动作标记的不同.
答:
mclude指令标记:
是把被包含的文件的内容放于包含文件屮,组成一个文件后编译运行.
mclude动作标记:
是把被包含的文件的运行结果放于包含文件运行产生的结果中,这2个文件各自编译运行.
8.编写三个JSP页面:
main.jsp、circle.jsp、ladder.jsp•将三个JSP页面保存在同一web服务目录中。
main.jsp使用include动作标记加载circle.jsp和ladder.jsp页面。
circle.jsp页面可以计算并显示圆的面枳。
ladder.jsp页面可以计算并显示梯形的面积。
当circle.jsp和ladder.jsp被加载时获取maimjsp页面include动作标记的param子标记提供的圆的半径以及梯形的上底、下底和高的值。
答:
main.jsp:
<%@pagecontentType=Htext/litml;chaiset=GB2312n%>
<%doublei-3,a=2,b=5,c=2;
%>
<应>加载circle.jsp计算半径为<%=【%>的圆的面积:
includepage=Hcircle.jspn>
paiamname=nsideRnvalue=M<%=r%>n/>
include>
<1)[>加载ladder.jsp计算上底,下底,高为<%=a%>,<%=b%>,<%=c%>的梯形面积:
includepage=Hiadder.jspH>
paiamname=nsideAnvalue=n<%=a%>,7>
paiamname=HsideBMvalue=n<%=b%>,7>
paiamname=nsideCnvalue=n<%=c%>n/>
include>
ladder.jsp:
<%@pagecontentType=Htext/litml;chaiset=GB2312n%>
<%!
publicStringgetAiea(double久doubleb,doublec)
{
if(a>0&&b>0&&c>0)
{
doubleaiea=((a+b)*c)/2.0;
letiunHU+aiea;
}
else
{
十”传递的参数小于零,出现错误!
”);
}
}
%>
<%StringsideA=request.getPafameter(usideAn);
StiingsideB=iequest.getPaiainetei(nsideBn);
StiingsideC=iequest.getPaiametei(HsideCH);
doublea=Double.paiseDouble(sideA);
doubleb=Double.parseDouble(sideB);
doublec=Double.parseDouble(sideC);
%>
我是被加载的文件,负责计算梯形的面积给我传递的上底,下底,高分别是:
<%=sideA%>,<%=sideB%>,<%=sideC%>
圆形的面积:
<%=getAiea(a,b,c)%>
circle.jsp:
<%@pagecontentTvpe=Htext/litml;chaiset=GB2312n%>
<%!
publicStimggetAiea(doublef)
{
if(i>0)
{
doubleaiea=3.14*r*r;
letiun'Mt+aiea;
}
else
{
etumC”十屮传递的参数小于零,出现错误!
请重新检查[的数值!
”);
}
}
%>
<%StringsideR=request.getPaiametei("sideR");
doublel-Double.parseDouble(sideR);
%>
我是被加载的文件,负责计算圆的面积
给我传递的半径是:
<%=sideR%>
圆形的面积:
<%=getAiea(i)%>
第3章JSP内置对象
1•假设JSP使用的表单中有如下的GUI(复选框)
鸟
#-
?
Fn
月亮
该表单所请求的JSP可以使用内置对象request获取该表单提交的数据,那么,下列哪些是request获取该表单提交的值的正确语句?
A.Stringa=request.getPaiametef(nitemn);
B.Stringb=iequest.getPafameter(ncheckboxH);
C.Stringc[]=request.getPaiameteiValues(uitemn);
D.Stungd[]=request.getParameteiValues(nclieckboxu);
答二c.
2.如果表单提交的信息中有汉字,接收该信息的页面应做怎样的処理?
答「处理方法有2种】
第1种:
<%@pagecontentType="text/html;Chaiset=GB2312"%>指令中的Charset首字母”C”大写.
第2种:
<%Stringstil=iequest.getParainetei(Hnumbern);
bytec[]=stil.getBytes("ISO-8859-lu);
strl=newStiiiig(c);
%>
3.编写两个JSP页面inputString.jsp和computer.jsp,用户可以使用inputString.jsp提供的表单输入一个字符串•并撓交给computer.jsp页面•该页面通过内置对象获取inputString.jsp页面提交的字符串•计算并显示该字符串的长度。
答:
inputString.jsp
<%@pagecoiHentType=”text/html;Chaiset=GB2312”%>
请输入字符串:
computer.jsp
<%@pagecontentTvpe=,rtext/litml;Chaiset=GB2312n%>
<%StringyouiStimg=iequest.getPaiametef(nstiiiign);%>
您输入的字符串是:
<%=youiStrmg%>
字符串的长度是:
<%=youiStiing.length()%>
ietinn
4.response调用sendRedirect(URL:
url)方法的作用是什么?
答【从一个页面跳转到sendRediiect(URL:
url)屮指定的页面,并且这种跳转是客户端跳转.
5.略
6.—个用户在不同Web服务目录中的session对象相同吗?
答二不相同.
7.—个用户在同一Web服务目录的不同子目录的session对象相同吗?
答湘同.
第4章JSP与Javabean
1•假设Web服务目录mymoon中的JSP页面要使用一个bean,该bean的包名为blue.sky。
请说明,应当•怎样保存bean的字节码文件?
答:
d)在当前Web服务目录下建立如下目录结构:
⑵Web服务目录\WEB-INF\classes
(3)根据类的包名,在目录classes下建立相应的子目录.即:
Web服务目录\WEB-INF\classes\blue\sky
(4)将获得的字节码文件保存在其中.
2.tom.jiafei.Circle是创建bean的类,下列哪个标记是正确创建session周期bean的标记?
useBeanid=HcircleHciass=Htom.jiafei.Circienscope=upageH/>
useBeanid=HcircleHciass=Htom.jiafei.Circieuscope=Hiequestn/>
useBeaiiid=nciicleuclass=ntom.jiafei.Ciicleuscope=usession,7>
useBeanid=Hcirclentype=ntom.jiafei.Circlenscope=Hsessionu/>
答:
useBeanid-fcirclenclass=ntom.jiafei.CiicleHscope=nsessionn/>
3•假设创建bean的类有一个int型的属性number,下列哪个方法是设置该属性值的正确方法?
A.publicvoidsetNumbei(intn){numbei-n;
}
B.voidsetNumbei(intn)
{numbef=n;
}
C・publicvoidSetNumbei(intn){number=n;
}
姣.A
口・小・
D.publicvoidSetnumbei(intn){number=n;
}
5.编写一个JSP页面•该页面提供一个表单•用户可以通过表单输入梯形的上底•下底和高的值・并提交给本JSP页面,该JSP页面将计算梯形的面积之任务交给—个bean去完成。
JSP页面使用getProperty动作标记显示梯形的面枳。
答:
ladder.jsp:
<%@pagepageEncodmg=HGBkH%>
useBeaiiid=Mladdef'fclass-^fc.Laddei'1scope=Hpagen/>
输入梯形上底、下底和高:
上底Wlnputtvpe=textname=ntopnvalue=0>
下底Wlnputtvpe=textname=nbottomuvalue=0>
高:
vlnputtvpe=textname=nlieightnvalue=0>
setPiopertyname=nladdeiHpropeitv=n*,7>
输入梯形上底、下底和高:
上底:
勺sp:
getPiopertyname=Hladdeiupropeity=Htopf7>,
下底:
勺sp:
getPropertyname=nladderMproperty=ubottomn/>,
高:
getPiopeityname=Hladdefnpiopeity=nheightM/>・
面积是:
getPiopeitvnanie=,lladdeinpiopeity=naiea,7>