JSP中九大隐式对象

JSP中九大隐式对象

ID:40556780

大小:17.06 KB

页数:3页

时间:2019-08-04

JSP中九大隐式对象_第1页
JSP中九大隐式对象_第2页
JSP中九大隐式对象_第3页
资源描述:

《JSP中九大隐式对象》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、对象变量名,可直接在jsp中使用对象类型configServletConfigapplicationServletContextresponseHttpServletResponserequestHttpServletRequestsessionHttpSessionoutJspWriterpagethisexceptionThrowable(需要配上isErrorPage)pageContextpageContextException不知每个页面都有,要配置上isErrorPage=”true”

2、,这样才可以在页面中直接用。如果把session的属性设成false,那么页面中不可以直接使用它了。pageContext的作用是用于获得其他8个,它的作用是在讲jsp中的java代码移出到方法中时,使用jsp页面中的内置对象。在移出的方法中传递一个pageContext.Out对象,带缓存的字符流,类似BufferedWriter写入该流的数据最终会被刷新到response,调用response.getWriter().write()方法中。故它和response.getOutputStream

3、()不可以同时使用。JspWriter会将数据刷新到1)缓冲区写满默认大小为8kb,可以page指定中通过buffer属性设置缓冲区大小。2)页面结束<%out.print("abc");//写入Jspwriter到缓冲区response.getWriter().write("ABC");//直接写入response对象的,可以字节输出到页面,而out对象是最后写入到response的,所以ABC将输出在abc前面的。并且通过查看源码可以看到ABC不包含在html页面中。%>所以在输出数据时尽量不

4、让response输出,而直接使用out.使用这种方式是,上面代码显示的结果是ABC结果在前面。当修改成了如下时:<%@pagelanguage="java"import="java.util.*"pageEncoding="utf-8"buffer="0kb"%>此时的结果是:abcABC最好不要用JSP做下载。如果做下载代码理应是下面的:<%InputStreamin=application.getResourceAsStream("/a.txt");OutputStreamoutput=re

5、sponse.getOutputStream();//加一个消息头response.setContentType(application.getMimeType("/a.txt"));response.setHeader("content-disposition","attachment;filename=a.txt");byte[]buffer=newbyte[1024];intlen;while((len=in.read())!=-1){output.write(buffer,0,len);}

6、%>当访问所在页面时出现了如下异常:严重:Servlet.service()forservletjspthrewexceptionjava.lang.IllegalStateException:getWriter()hasalreadybeencalledforthisresponseatorg.apache.catalina.connector.Response.getOutputStream(Response.java:573)atorg.apache.catalina.connector.R

7、esponseFacade.getOutputStream(ResponseFacade.java:183)出现上面的异常的原因是:getWriter已经被:OutputStreamoutput=response.getOutputStream();调用了。也就是说如果想让它能够做下载,条件是:把页面中所有的标签都删掉,并且将页面中的空格和回车换行也得删掉。只有这样才能下载到正确的文件。代码如下,并且不能动<%@pagelanguage="java"import="java.util.*"page

8、Encoding="utf-8"%><%@pageimport="java.io.File"%><%@pageimport="java.io.InputStream"%><%@pageimport="java.io.OutputStream"%><%InputStreamin=application.getResourceAsStream("/a.txt");OutputStreamoutput=response.getOutputStream();//加一个消息头response

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。