《JSP实用教程(第三版)》课后答案
第1章 JSP简介
1.安装Tomcat引擎的计算机需要事先安装JDK吗
答:需要。
2.怎样启动和关闭Tomcat服务器
答:bin目录下使用启动Tomcat服务器。bin目录下使用关闭Tomcat服务器。
3. 和是否是相同的JSP文件名字
答:不是
4. 请在D:\下建立一个名字为water的目录,并将该目录设置成一个Web服务目录,然后编写一个简单JSP页面保存到该目录中,让用户使用虚拟目录fish来访问该JSP页面。
答:设置方法:
1建立D:\ water目录;
2修改文件,在</host>上一行添加:
<Context path="/fish" docBase="D:\ water" debug="0" reloadable="true"/>
3使用 fish /访问页面.
5. 假设Dalian是一个Web服务目录,其虚拟目录为moon。保存在Dalian的子目录sea中。那么在Tomcat服务器(端口号8080)所在计算机的浏览器键入下列哪种方式是访问的正确方式
A.          B.       D. 答:D
6.如果想修改Tomcat服务器的端口号,应当修改哪个文件能否将端口号修改为80
答:修改Tomcat服务器的conf目录下的主配置文件可以更改端口号. 
若Tomcat服务器上没有其它占有80端口号的程序,可以将其修改为80,否则不能。
第2章 JSP语法
1."<%!"和"%>"之间声明的变量与"<%"和"%>"声明的变量有何不同
答:
"<%!"和"%>"声明的变量为类的成员变量,其所占的内存直到Tomcat服务器关闭才释放.
"<%"和"%>"为类方法中声明的局部变量,仅在JSP页面后继的程序片及表达式中有效.
2. 如果有2个用户访问一个JSP页面,该页面中的Java程序片将被执行几次
答:2次(当有一个用户访问JSP页面,JAVA程序片就被访问一次).
5. 假设有两个不同用户访问下列JSP页面,请问第一个访问和第二个访问页面的用户看到的页面的效果有何不同
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page isThreadSafe="false" %>
<BODY><HTML>
<%!  int sum=1;
void add(int m){
    sum = sum +m;
字符串长度不同怎样取}
%>
<%  int n =100;
add(n);
%> 
<%=sum%>
</BODY></HTML>
答:第一个客户看到结果是101;
  第二个客户看到结果是201;
6. 请编写一个简单的JSP页面,显示英文字母表。
<%@ page contentType="text/html;charset=GB2312" %>
<HTML><BODY>
<%
  for(char c='A';c<='Z';c++)
  { 
    (" "+c);
  }
%>
</BODY></HTML>
7. 请简单叙述include指令标记和include动作标记的不同.
答:
include指令标记:是把被包含的文件的内容放于包含文件中,组成一个文件后编译运行.
include动作标记: 是把被包含的文件的运行结果放于包含文件运行产生的结果中,这2个文件各自编译运行.
8. 编写三个JSP页面:、、,将三个JSP页面保存在同一web服务目录中。使用include动作标记加载和页面。页面可以计算并显示圆的面积。页面可以计算并显示梯形的面积。当和被加载时获取页面include动作标记的param子标记提供的圆的半径以及梯形的上底、下底和高的值。
答:
<%@ page contentType="text/html;charset=GB2312" %>
<HTML><BODY bgcolor=yellow>
<%  double r=3,a=2,b=5,c=2;
%>
<br>加载计算半径为 <%=r%>的圆的面积:
<jsp:include page="">
<jsp:param name="sideR" value="<%=r%>"/>
</jsp:include>
<br>加载计算上底,下底,高为<%=a%>,<%=b%>,<%=c%>的梯形面积:
<jsp:include page="">
<jsp:param name="sideA" value="<%=a%>"/>
<jsp:param name="sideB" value="<%=b%>"/>
<jsp:param name="sideC" value="<%=c%>"/>
</jsp:include>
</BODY>
</HTML>
<%@ page contentType="text/html;charset=GB2312" %>
<%! public String getArea(double a,double b,double c)
{
if(a>0&&b>0&&c>0)
{
double area=((a+b)*c)/;
return ""+area;
}
else
{
return (""+c+"传递的参数小于零,出现错误!" );
}
}
%>
<% String sideA=("sideA");
String sideB=("sideB");
String sideC=("sideC");
double a=(sideA);
double b=(sideB);
double c=(sideC);
%>
<font color=red size=4>
我是被加载的文件,负责计算梯形的面积<br>
给我传递的上底,下底,高分别是:<%=sideA%>,<%=sideB%>,<%=sideC%>
<br>圆形的面积:<%=getArea(a,b,c) %>
</font>
:
<%@ page contentType="text/html;charset=GB2312" %>
<%!public String getArea(double r)
{
if(r>0)
{
double area=*r*r;
return ""+area;
}
else
{
return (""+r+"传递的参数小于零,出现错误!请重新检查r的数值!" );
}
}
%>
<% String sideR=("sideR");
double r=(sideR);
%>
<font color=blue size=4>
我是被加载的文件,负责计算圆的面积<br>
给我传递的半径是:<%=sideR%>
<br>圆形的面积:<%=getArea(r) %>
</font>
第3章  JSP 内置对象
1.假设JSP使用的表单中有如下的GUI(复选框)
<input type="checkbox" name="item" value="bird">鸟
<input type="checkbox" name="item" value="apple">苹果
<input type="checkbox" name="item" value="cat">猫
<input type="checkbox" name="item" value="moon">月亮
该表单所请求的JSP可以使用内置对象request获取该表单提交的数据,那么,下列哪些是request获取该表单提交值的正确语句
A. String  a=("item");
B. String  b=("checkbox");
C. String  c[]=("item");
D. String  d[]=("checkbox");
答:  C.
2. 如果表单提交的信息中有汉字,接收该信息的页面应做怎样的处理
答:处理方法有2种:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。