JSP.docx
- 文档编号:3457551
- 上传时间:2022-11-23
- 格式:DOCX
- 页数:15
- 大小:33.30KB
JSP.docx
《JSP.docx》由会员分享,可在线阅读,更多相关《JSP.docx(15页珍藏版)》请在冰豆网上搜索。
JSP
第一章
1、怎样修改tomcat的端口?
答:
在Tomcat下打开conf文件夹找到server.xml文件用记事本打开在
第二章
1、编写一个简单的JSP页面,显示英文字母表。
<%@pagecontentType="text/html;charset=GBK"%>
<%
charstart='A',end='Z';
for(chari='A';i<=end;i++){
out.print(i+""+(char)(i+32)+"");
}
%>
结果:
2、请简单叙述include指令标记和include动作标记的不同。
答:
include指令标记(<%@includefile=”url”%>)是在JSp页面出现该指令标记的位置处,静态插入一个文件,必须保证新合成的JSP页面符合JSP语法规则,即能够成为一个JSP文件。
include动作标记( includepage=”url”>)告诉JSP页面动态包含一个文件。 尽管include动作标记和include指令标记的作用都是处理所需要的文件,但是处理方式和处理时间上是不同。 Include指令标记是在编译阶段就处理所需要处理的文件,被处理的文件在逻辑和语法上依赖于当前JSP页面,其优点就是页面的执行速度快;而include动作标记是在JSP页面运行时才处理文件,被处理的文件在逻辑和语法上独立于当前的JSP页面,其优点是可以使用param子标记更灵活地处理所需要的文件(见后面的param子标记),缺点是执行速度要慢一些。 3、forward动作标记的用法。 Forward动作标记的语法格式为: forwardpage=”要转向的页面”/> 或 forwardpage=”要转向的页面”> paramaname=”name”value=”value”/> forward> 该指令的作用是: 从该指令处停止当前页面的继续执行,而转向执行page属性指定的JSP页面。 需要注意的是,当forward动作标记不需要param子标记时,必须使用上述第一种形式。 Forward标记可以使用param动作标记作为子标记,以便向要转向的页面传送信息。 Forward动作标记指定的要转向的JSP文件可以使用Tomcat服务器提供的request内置对象获取param子标记中name属性所提供的值。 第三章 1、如果表单提交的信息中有汉字,接受该信息的页面应做怎样的处理? 使用request对象的JSP页面可以使用两种方式避免出现汉字乱码问题,一种方式是使用page指定contentType属性的值时,做如下指定: <%@pagecontentType=”text/html;Charset=GB2312”%> 即将其中出现的Charset中的首字母大写(C为大写字母)。 另一种方式是把 <%@pagecontentType=”text/html;charset=GB2312”%> 出现的charset中的首字母小写(c为小写字母),然后内置对象request将获取的信息重新编码,即用ISO-8859-1进行编码,并将编码存放到一个字节数组中,然后再将这个数组转化为字符串。 如下列所示: Stringstr=request.getParameter(“message”); byteb[]=str.getBytes(“ISO-8859-1”); Str=newString(b); 2、Session与application的异同 答: application对象是代表应用程序上下文,它允许JSP页面与包括在同一应用程序 的任何Web组件共享信息,而session对象则是每个客户专用的。 每个session对象实例通过sessionid和客户端之间建立起一一对应的关系,即每个客户都对应着一个session对象实例,并且存储在这些session对象实例中的数据信息不能相互访问.而application对象对于所有客户都是同一个,即所有客户可以共享存储在application对象中的数据信息. 区别: 1.应用范围不同。 Session是用于存储特定的用户会话所需的信息,每个用户对应一个session。 而Application是对访问同一服务目录程序的所有用户共享信息。 2.存活时间不同。 Session是在站点的页面从打开到被关闭之前一直生存的,关闭或跳转到其它网站就会使Session死掉。 而Application是从站点发布以来一直存活的,除非重启了站点服务。 3、Response调用sendRedirect(URLurl)方法的作用是什么? 答: response.sendRedirect(url)是一个url重定向的方法,服务器端的通过该方法,“告诉”客户端的浏览器去访问url所指向的资源 第四章 1、编写一个JSP页面,该页面提供一个表单,用户可以通过表单输入梯形的上底、下底和高的值,并提交给本JSP页面,该JSP页面将计算梯形的面积之任务交给一个bean去完成。 JSP页面使用getProperty动作标记显示梯形的面积。 答: /WEB-INF/classes/com/liujin/Tixing.java: packagecom.liujin; publicclassTixing{ privateDoubleup=0.0; privateDoubledown=0.0; privateDoublehight=0.0; publicDoublegetUp(){ returnup; } publicvoidsetUp(Doubleup){ this.up=up; } publicDoublegetDown(){ returndown; } publicvoidsetDown(Doubledown){ this.down=down; } publicDoublegetHight(){ returnhight; } publicvoidsetHight(Doublehight){ this.hight=hight; } publicDoublegetArea(){ return(up+down)*hight/2; } } Tixing.jsp: <%@pagecontentType="text/html;charset=GBK"%> 上底: 下底: 高: useBeanid="tra"class="com.liujin.Tixing"scope="page"/> setPropertyname="tra"property="*"/> 上底: getPropertyproperty="up"name="tra"/> 下底: getPropertyproperty="down"name="tra"/> 高: getPropertyproperty="hight"name="tra"/> 面积: getPropertyproperty="area"name="tra"/> 结果: 2、浏览图像bean: packagecom.liujin; importjava.io.*; publicclassShowImage { intimageNumber=1,max; StringpictureName[],playImage,filedir="d: /12/"; publicShowImage() { Filedir=newFile(filedir); pictureName=dir.list(newFileName()); max=pictureName.length; } publicvoidsetImageNumber(intn) { if(n<0) n=max-1; if(n==max) n=0; imageNumber=n; } publicintgetImageNumber() { returnimageNumber; } publicStringgetPlayImage() { playImage=newString(" returnplayImage; } } classFileNameimplementsFilenameFilter { publicbooleanaccept(Filedir,Stringname) { booleanboo=false; if(name.endsWith(".jpg")||name.endsWith(".JPG")||name.endsWith(".gif")) boo=true; returnboo; } } <%@pagecontentType="text/html;charset=GBK"%> useBeanid="show"class="com.liujin.ShowImage"scope="session"/> setPropertyname="show"property="imageNumber"param="imageNumber"/> 单击"上一张"或"下一张"按钮浏览图像 imageNumber=<%=show.getImageNumber()-1%>">上一张 imageNumber=<%=show.getImageNumber()+1%>">下一张 getPropertyname="show"property="playImage"/>