JSP程序设计习题答案(张跃平耿祥义).doc
文本预览下载声明
习题一:
1.答:确保Tomcat服务器使用的是Java_home环境变量设置的JDKserver.xml,只要没有其他应用程序正在占用80,就可以将端口号设置为80。
习题二
1.%!”和“%”之间声明的变量在整个JSP页面内都有效,称为JSP页面的成员变量,成员变量的有效范围与标记符号%!、%所在的位置无关。所有用户共享JSP页面的成员变量,因此任何一个用户对JSP页面成员变量操作的结果,都会影响到其他用户。
“%”和“%”之间声明的变量称为局部变量,局部变量在JSP页面后继的所有程序片以及表达式部分内都有效。运行在不同线程中的Java程序片的局部变量互不干扰,即一个用户改变Java程序片中的局部变量的值不会影响其他用户的Java程序片中的局部变量。当一个线程将Java程序片执行完毕,运行在该线程中的Java程序片的局部变量释放所占的内存。
2.3.允许允许4.
5.%@ page contentType=text/html;charset=GB2312 %
HTMLBODY
%
for(char c=A;c=Z;c++)
{
out.print( +c);
}
%
/BODY/HTML
6.JSP页面出现该指令的位置处,静态插入一个文件,即JSP页面和插入的文件合并成一个新的JSP页面,然后JSP引擎再将这个新的JSP页面转译成Java文件。因此,插入文件后,必须保证新合并成的JSP页面符合JSP语法规则,即能够成为一个JSP页面文件。include动作标记告诉JSP页面动态加载一个文件,不把JSP页面中动作指令include所指定的文件与原JSP页面合并一个新的JSP页面,而是告诉Java解释器,这个文件在JSP运行时(Java文件的字节码文件被加载执行)才被处理。如果包含的文件是普通的文本文件,就将文件的内容发送到客户端,由客户端负责显示;如果包含的文件是JSP文件,JSP引擎就执行这个文件,然后将执行的结果发送到客户端,并由客户端负责显示这些结果。
7.%@ page contentType=text/html;charset=GB2312 %
HTML
BODY
jsp:include page=lader.jsp
jsp:param name=a value=5 /
jsp:param name=b value=6 /
jsp:param name=h value=10 /
/jsp:include
/BODY
/HTML
lader.jsp:
%@ page contentType=text/html;charset=GB2312 %
HTML
BODY
%
String strA=request.getParameter(a);
String strB=request.getParameter(b);
String strH=request.getParameter(h);
double a=Double.parseDouble(strA);
double b=Double.parseDouble(strB);
double h=Double.parseDouble(strH);
double area=(a+b)*h/2;
%
P 梯形面积:%=area%
/BODY
/HTML
习题三
1.答:不可以
2.答:如果某个Web服务目录下的JSP页面准备调用一个Tag文件,那么必须在该Web服务目录下,建立目录:Web服务目录\WEB-INF\tags,其中,WEB-INF和tags都是固定的子目录名称,而tags下的子目录名字可由用户给定。一个Tag文件必须保存到tags目录或其下的子目录中。
3.答:body-content、language、import、pageEncoding 。
4.答:使用attribute指令可以动态地向该Tag文件传递对象的引用。
5.答:使用variable指令可以将Tag文件中的对象返回给调用该Tag文件的JSP页面。
6.答:
Lianxi6.jsp:
%@ page contentType=text/html;Charset=GB2312 %
%@ taglib tagdir=/WEB-INF/tags prefix=computer%
HTML
BODY
H3以下是调用Tag文件的效果:/H3
computer:Rect sideA=5 sideB=6/
H3以下是调用Tag文件的效果:/H3
computer:Circle radius=16/
/BODY
/HTML
Rect.tag:
h4这是一个Tag文件,负责计算矩形
显示全部