当前位置:文档之家› jsp隐含对象

jsp隐含对象

jsp隐含对象
jsp隐含对象

第3章JSP隐含对象

3.1JSP的隐含对象

隐含对象类型作用域描述

request javax.servlet.http.HttpServletReq

uest request表示的是调用JSP页

面的请求

response javax.servlet.http.HttpServletRes

ponse page表示的是返回给客户

的响应

pageConte

xt

javax.servlet.jsp.PageContext page存储指定页面的属性

session javax.servlet.http.HttpSession session表示的是客户端正参

与的HTTP会话

applicatio n javax.servlet.ServletContext applicati

on

表示的是JSP页面所

驻留的Web应用程序

out javax.servlet.jsp.JspWriter page一个缓冲的输出流,

用来给客户返回信息config javax.servlet.ServletConfig page包含与页面servlet

有关的配置信息

page https://www.doczj.com/doc/d42744073.html,ng.Object page表示页面servlet的一

个实例

exception https://www.doczj.com/doc/d42744073.html,ng.Throwable page表示未捕获到的异常

与错误

Jsp的隐含对象是在jsp页面servlet实现类的_jspService()方法内部定义,故jsp 页面可在<%= %>中直接使用它们。

3.2out隐含对象

out隐含对象属于javax.servlet.jsp.JspWriter类型,供jsp页面输出信息。功能类似于jaca.io.BufferedWriter和java.io.PrintWriter。不同的是JspWriter的打印方法可以抛出java.io.IOException异常,而JspWriter不抛出。JspWriter的实现子类由tomcat容器实现。

服务器能够为每一个jsp页面设置一个输出缓冲区。如果jsp页面不使用输出缓冲区,则页面输出信息时,Servlet容器会调用response.getWriter()生成一个PrintWriter对象,将缓冲区中的信息输出。使用输出缓冲区可以减少网络连接的次数。在默认情况下,jsp页面使用输出缓冲区。

3.2.1输出信息的方法

方法主要有print()、println()和newLine()。newLine()相当于回车。

3.2.2缓冲区相关的方法

输出缓冲区的相关方法有

1).flush():用于刷新流,如果缓冲区满了,这个方法自动调用,输出缓冲区中的信息。如果流已经关闭,调用print()或flush()会引发一个IOException异常。2).clear():表示清除缓冲区中的信息。如果缓冲区空清除,会引发一个IOException 异常。

3).clearBuffer():功能与clear()相似,区别是不抛出异常。

4).getBufferSize():返回缓冲区大小。

5).getRemaining():返回缓冲区剩余的空闲空间。

6).isAutoFlush():返回一个真假值,用于标示缓冲区是否自动刷新。

3.3request隐含对象

客户端通过http请求提交的信息会被Servlet容器封装在request隐含对象中。Jsp 页面通过request对象可以操作客户端请求参数、属性和客户端输入流等数据。参数一般是GET或HTTP POST提交过来的,属性主要是服务器产生的数据。3.3.1用request读取客户端传递来的参数

用public https://www.doczj.com/doc/d42744073.html,ng.String getParameter(https://www.doczj.com/doc/d42744073.html,ng.String name)来获得resquest对象中的参数。

用public java.util.Enumeration getParameterNames()来获得resquest对象中的参数变量名

用public https://www.doczj.com/doc/d42744073.html,ng.String[] getParameterValues(https://www.doczj.com/doc/d42744073.html,ng.String name) 来获得resquest对象中的多值参数。

3.3.2request作用范围变量

1).服务器端的两个jsp/servlet程序间要交换数据时,可以通过request属性来实现。用public void setAttribute (https://www.doczj.com/doc/d42744073.html,ng.String name,https://www.doczj.com/doc/d42744073.html,ng.Object o)用于把一个属性对象按指定的名字写入request作用范围。

public https://www.doczj.com/doc/d42744073.html,ng.Object getAttribute (https://www.doczj.com/doc/d42744073.html,ng.String name)从request作用范围独处指定名字的属性对象。

2).两个servlet程序间要利用request作用范围变量来传递数据时,要用转发跳转操作实现从第一个servlet程序A跳转到第二个servlet程序B,A的request和response隐含对象被自动转发给B.

Request转发器(RequestDispatcher)的作用是活的目标资源的转发器,通过转发器将当前servlet程序的resquest和response对象转发给目标资源,并跳转至目标资源上运行程序。这样目标资源就可以用request对象获得上一资源给它的属性。用public requestDispatcher getRequestDispatcher(https://www.doczj.com/doc/d42744073.html,ng.String path)获得目标资源的RequestDispatcher对象。

RequestDispatcher的主要方法有:

forward()方法.把当前Servlet的resquest和response对象转发给目标资源,并跳转至目标资源运行代码,且forward()在response对象提交前调用,不能再提交前刷新输出缓冲区。

include()方法.用于包含目标资源,如果目标资源是jsp页面,它会被编译成servlet程序后再运行,包含操作前运行刷新输出缓冲区。

removeAttribute().作用是从request作用范围中删除指定名字的属性。

setCharacterEncoding().用来定义request对象中的参数的字符编码标准。

3.3.3用request读取系统信息

用request.XXX实现

1).getProtocol()获得request请求使用的协议及版本号

2).getRemoveAddr()返回客户端或最后一个客户端代理服务器的IP地址。

3).getRemoteHost()返回客户端主机名或最后一个客户端代理服务器的主机名

4).getScheme()返回当前request对象的构造方案。

5).getQueryString()返回URL的查询字串。

6).getRequestURL()返回URL请求中目标资源的URL。

7).getMethod()返回request请求的其他较方式,如GET或者POST

8).getServletPath()返回调用Servlet程序的URL请求

8).getRealPath()返回虚拟路径在服务器上的真实绝对路径。

3.3.4用request读取HTTP请求报头信息

客户端浏览器向服务器求情资源的过程一般有三步:1).发出请求2).HTTP报头信息交换.3).信息传输(传输方向由报头决定)。

Jsp中读取HTTP报头信息可以使用getHeader()和getHeaderNames

3.3.5用request读取cookie

Javax.servlet.http.Cookie用来生成一个cookie对象。用Cookie c[]=request.getCookies()来获取Cookie对象。再用c.getName()和c.getValue()来拿到值。

3.3.6用request选择国际化信息

Request对象可以读取客户端浏览器的语言类型,并据此选择合适的语言信息给客户阅读,这个工作就叫做信息国际化request.getLocal返回客户端的语言信息。

3.4response隐含对象

Response对象将Servlet程序的输出信息发送给客户端。Response对象是javax.servlet.http.HttpServletResponse接口类型的,HttpServletResponse继承了javax.servlet.ServletResponse接口,增加了对HTTP响应报头和cookie的操作。Response对象由Servlet容器创建,并传递给jsp页面servlet实现类的_jspService()方法。

3.4.1输出缓冲区与响应提交

Response对象和输出缓冲区相关的方法:

1).flushBuffer:刷新输出缓冲区,把信息传回客户端

2).setBufferSize:定义输出缓冲区的大小

3).isCommitted:返回缓冲区中的响应信息是否已经提交

4).getWriter():返回一个PrintWriter对象,Servlet程序通过此对象向客户端输出字符信息

3.4.2HTTP响应报头设置

Jsp服务器默认下响应信息以字符形式传送。如果要用http响应报头传输二进制数据,应该通过response.getOutputStream()获得一个ServletOutputStream输出流对象输出二进制信息。

用setContenttype()返回客户端的信息类型及编码标准。

用setCharacterEncoding返回客户端信息的编码标准。

用sendError()向客户端返回HTTP响应码。

用setHeader()设置HTTP报头

3.4.3用response实现JSP页面重定向

重定向使得目标资源的URL从服务器传到客户端浏览器,再从客户端通过HTTP 请求传回服务器,其中有一定的网络延迟。

Jsp页面转换中有转发跳转(forward)和重定向跳转(redirect);resquestDispather.forward()实现转发跳转,response.sendRedirect()实现的是重定向跳转。

重定向通过客户端重新发送URL来实现,会导致浏览器地址更新,转发跳转在服务器切换程序,在浏览器不变。

转发能够把当前jsp页面中的resquest、response对象转发给目标资源,而重定向会导致jsp的request和response对象生命期结束。如果要重定向跳转要拿数据,只有在url中写入参数。

3.4.4用response实现文件下载

1).二进制文件的下载用FileInputStream和getOutputStream()来是实现。

2).文本文件的下载用FileReader和BufferedReader来实现。

3).把服务器上的excel下载下来的实例函数:

public static void exportToWeb(HttpServletRequest request, HttpServletResponse response,String templateFileName) {

try{

if(templateFileName.indexOf(".")<0){

templateFileName=templateFileName+".xls";

}

String url = request.getSession().getServletContext()

.getRealPath("/")+ "filesTemp/"+templateFileName;

String contentType = "application/octet-stream";

response.setContentType(contentType);

response.setHeader("Content-disposition",

"attachment;filename=\""+templateFileName+""+ "\""); InputStream is = null;

OutputStream os = null;

try{

is = new BufferedInputStream(new FileInputStream(url));

java.io.ByteArrayOutputStream baos = new

java.io.ByteArrayOutputStream();

os = new BufferedOutputStream(response.getOutputStream());

byte[] buffer = new byte[10 * 1024 * 1024];

int read = 0;

while((read = is.read(buffer)) != -1) {

baos.write(buffer, 0, read);

}

os.write(baos.toByteArray());

} catch(Exception ex) {

ex.printStackTrace();

} finally{

try{

os.close();

is.close();

} catch(IOException ex1) {

}

}

} catch(Exception ex) {

ex.printStackTrace();

}

}

3.5application隐含对象

Tomcat是一个jsp服务器,一个jsp服务器可以挂多个web应用。每一个web应

用有自己的上下文。同一个上下文中的两个servlet程序共享数据的方法是利用application对象。共享数据存放在servlet容器中,通过application对象进行存储操作。

Application对象是javax.servlet.ServletContext接口定义了一系列方法,供Servlet 程序和Servlet容器通信。

3.5.1用application访问Web应用的初始参数

3.5.2application作用范围变量

Application作用范围变量能够在web应用中的所有程序共享。

有getAttributeNames(),getAttribute(),setAttribute(),removeAttribute()等方法。3.5.3用application对象读取Servlet容器信息

getMajorVersion()读取Servlet主版本号。

getMinorVersion()读取子版本号。

getServerInfo()返回Servlet容器的名字与版本号。

3.5.4用application记录操作日志

用application.log(“xxx”)来记录日志。

3.5.5application的其他应用

用getRequestDispatcher()取得目标资源的RequestDispatcher对象

用getMimeType()返回指定文件的MIME-type

用getRealPath()获得虚拟目录对应的真实绝对路径。

用getResourcesAsStream()取得目标资源的输入流对象。

3.6session隐含对象

Session是指一个终端用户与后台某交互式系统尽心通信的时间间隔,通常把从登陆进入系统到注销退出系统之间所经历的时间为一个session通信周期。在web应用中,session终端用户一般表现为一个浏览器窗口,如果打开多个浏览器窗口就是多个session客户端。如果用户在同一个窗口访问不同的地方也会产生多个session通信。

由于http协议是无状态的,无法直接保存session数据,在jsp中要实现seesion 跟踪,主要有四种技术:URL重写,cookie,隐藏表单域和session对象。

3.6.1用URL重写实现session跟踪

URL重写就是把session数据编码成”name=value”对,当做URL的查询串附在URL后面。

3.6.2用cookie实现session跟踪

基本原理就是将一个session数据封装在一个cookie对象中,cookie对象传回客户端存储。

在一个页面中申请cookie对象,使用response.addCooike()加入cookie对象,然后在另一个页面通过request.getCookies()获得cookie对象。

3.6.3用隐藏表单域实现session跟踪

隐藏表单域在页面上不可以看见,相当于一个变量,如果把一个session数据存储在其中,则提交表单时,隐藏表单域中的数据也会被提交给服务器。

比如这就是一个隐藏的表单域。在form提交之后就可以在action的对应页面中进行获取,用request.getParameter()。

3.6.4session作用范围变量与session跟踪

Session隐含对象是实现session跟踪的最之直接的方法。

为了能够唯一标识客户端,服务器随机生成一个sessionID号,并用cookie把ID 传回客户端存储,通过查询sessionID号,就知道接收到的某个请求来自哪个客户端,在tomcat中,这个ID号的cookie名是”JSESSIONID”。HttpSession常用方法:

isNew()判断session对象是新创建的还是已经存在的。

getId()返回当前session对象的ID号。

getLastAccessedTime()返回客户端最后一次请求的发送时间,是一个long型的整数。

invalidate()使得当前session无效。

setMaxInactiveInterval()读取当前session超时时间

setAttribute()定义session作用范围变量。

getAttribute()读取一个session作用范围变量。

getAttributeNames()将当前合法的所有session作用范围变量读到一个枚举的对象中。

3.6.5动态生成验证码

服务器动态生成验证码并存储在session作用范围,最后一图像形式返回给客户端显示。例如:

<%@page contentType="image/jpeg"import="java.awt.*,

java.awt.image.*,java.util.*,javax.imageio.*"pageEncoding="gb2312"%> <%!Color getRandColor(int fc,int bc){//给定范围获得随机颜色

Random random = new Random();

if(fc>255) fc=255;

if(bc>255) bc=255;

int r=fc+random.nextInt(bc-fc);

int g=fc+random.nextInt(bc-fc);

int b=fc+random.nextInt(bc-fc);

return new Color(r,g,b);

}%>

<%//设置页面不缓存

response.setHeader("Pragma","No-cache");

response.setHeader("Cache-Control","no-cache");

response.setDateHeader("Expires", 0);

// 在内存中创建图象

int width=60, height=20;

BufferedImage image = new BufferedImage(width, height,

BufferedImage.TYPE_INT_RGB);

// 获取图形上下文

Graphics g = image.getGraphics();

//生成随机类

Random random = new Random();

// 设定背景色

g.setColor(getRandColor(200,250));

g.fillRect(0, 0, width, height);

//设定字体

g.setFont(new Font("Times New Roman",Font.PLAIN,18));

//画边框

//g.setColor(new Color());

//g.drawRect(0,0,width-1,height-1);

// 随机产生155条干扰线,使图象中的认证码不易被其它程序探测到

g.setColor(getRandColor(160,200));

for(int i=0;i<155;i++)

{

int x = random.nextInt(width);

int y = random.nextInt(height);

int xl = random.nextInt(12);

int yl = random.nextInt(12);

g.drawLine(x,y,x+xl,y+yl);

}

// 取随机产生的认证码(4位数字)

String sRand="";

for(int i=0;i<4;i++){

String rand=String.valueOf(random.nextInt(10));

sRand+=rand;

// 将认证码显示到图象中

g.setColor(new

Color(20+random.nextInt(110),20+random.nextInt(110),20+random.nextInt (110)));

//调用函数出来的颜色相同,可能是因为种子太接近,所以只能直接生成

g.drawString(rand,13*i+6,16);

}

// 将认证码存入SESSION

session.setAttribute("rand",sRand);

// 图象生效

g.dispose();

// 输出图象到页面

ImageIO.write(image, "JPEG", response.getOutputStream());

out.clear();

out = pageContext.pushBody();%>

3.7其他JSP隐含对象

3.7.1config隐含对象

config隐含对象是javax.servlet.ServletConfig类型的,常常用于给一个Servlet程序传送初始化参数。config 对象里存放着一些Servlet 初始的数据结构。它共有下列四种方法:

public String getInitParameter

public java.util.Enumeration getInitParameterNames

public ServletContext getServletContext

public Sring getServletName

3.7.2exception隐含对象

exception隐含对象包含了关于异常或错误的信息,这些异常或错误导致把控制传递给错误页面。exception隐含对象在转换为Servlet之后,会对应至https://www.doczj.com/doc/d42744073.html,ng.Throwable型态的对象,也就是异常处理相关对象。exception隐含对象并不总是可用的,它只在错误页面中可用。exception隐含对象提供了检索错误或异常信息的方法:

getMessage():返回描述错误信息的一个字符串

toString():返回包含了错误或异常类的名字以及错误信息的一个字符串

printStackTrace():打印完整的错误信息到标准输出,或者打印到指定的PrintStream和PrintWriter流

3.7.3page隐含对象

page对象代表JSP本身,更准确地说它代表JSP被转译后的Servlet程序,它可以调用Servlet类所定义的方法。

3.7.4pageContext隐含对象

javax.servlet.jsp.PageContext类的实例对象

jsp测试题

1.{JSP/Servlet题目}假设web应用的文档根目录为MyApp,那么可以从哪里找到database.jar文件。(选择1项)D A)MyApp目录下 B)MyApp\images目录下 C)MyApp\WEB-INF目录下 D)MyApp\WEB-INF\lib目录下 2.{JSP/Servlet题目}哪一个对象可以用于获得浏览器发送的请求。(选择1项)A A)HttpServletRequest B)HttpServletResponse C)HttpServlet D)Http 3.{JSP/Servlet题目}事务处理的结束方式。(选择2项) BD A)中止 B)提交 C)完成 D)回滚 4.{JSP/Servlet题目}客户端状态管理的解决方案有。(选择3项)C A)URL重写 B)隐藏域 C)Cookie D)以上都不是 5.{JSP/Servlet题目}与HttpSessionListener接口有关的方法是。(选择2项)BD A)SessionInitialized() B)SessionCreated() C)SessionFinialized() D)SessionDestroyed() 6.{JSP/Servlet题目}关于JSP生命周期的叙述,下列哪些为真?(选择2项)AC A)JSP会先解释成Servlet源文件,然后编译成Servlet类文件 B)每当用户端运行JSP时,jspInit()方法都会运行一次 C)每当用户端运行JSP时,_jspService()方法都会运行一次 D)每当用户端运行JSP时,jspDestroy()方法都会运行一次 7.{JSP/Servlet题目}下列哪个为JSP的隐含对象。(选择1项)B A)env B)page C)jspinfo D)context 8.{JSP/Servlet题目}在J2EE中属于Web层的组件有。(选择1项)A

jsp

判断题 1.静态网页*。Html中也可以嵌入脚本代码,如JavaScript、vbscript程序段等,但这些程序段不可能在服务器端运行,只能在客户端浏览器中运行。正确 2.动态网页是在服务器端被执行,其中嵌入的代码只能在服务器端运行,不能在客户端浏览器中运行。错误 3.GGI是多进程方式的动态网页技术,而JSP是多线程方式,故GGI系统开销比JSP要小。错误 4.JSP是以Servlet程序方式运行的,而ASP是有ASP引擎解释执行的。正确 5JSP容器对JSP页面中的模板元素不做任何处理,直接用out。Write()输出正确 6<!——>用于对JSP页面的代码段做注释,说明程序员的意图或要实现的功能,注释信不返回客户端。错误 7<!——>中可以使用<% %>动态输出注释内容,同时<!——>中也可以使用<% %>,因为预览JSP页面时没有报错。错误 8 JSP含对象是Servlet容器自动生成并传送给JSP页面Servlet实现类的。正确 9JSP的隐含对象一般是在JSP页面Servlet实现类的-jspService()方法内使用,也可以在Servlet实现类的其他方法中使用。正确 10.用request读取单选框表单元素的值时,用request.getAttribute()方法。错误 11.用request转发给目标资源传递属性数据的优点是目标资源不需要用代码释放属性数据,目标资源输出缓冲区被刷新后request对象中的属性数据自动丢失。正确 12.编写Servlet程序时,一般是继承HttpServlet并建议把业方法内务逻辑代码写在service()方法内。错误 13一个HttpServlet程序被调用后,doXXX()方法执行结束表示此Servlet程序被销毁。错误 14.如果在Servlet的部署元素中定义有/bbs/login,表示此servlet程序存储在/bbs文件下。错误 15.在Tomcat中,重载Web应用需要用到manager角色中的用户错误 16.JavaBean中的main()方法是程序的执行入口错误 17.JavaBean不用包名也可以直接使用正确 18.可视化javabean主要在GUI环境中使用正确 19.如果当前页面的session隐含对象过期失效,则与之绑定的javabean对象也会失效正确 20.java环境下访问数据库是通过JDBC实现的正确 21.sa是MS SQL Server2000默认的管理员账户正确 22.JDBC Type-3部署纯java实现正确 23.在 Tomcat下安装JDBC Type-4驱动程序的基本方法是将驱动程序包*jar复制到tomcatcommonlib文件夹下正确 23.只要容器支持JSP2.0/Servlet2.4规范,则在JSP页面中就可以直接使用EL表达式,EL 表达式由容器解释执行正确 25.EL表达式比JAVA脚本简洁正确 26.EL表达式${a<4&&b>8}等价于${a<4and b>8} 正确 27.EL表达式中不能访问JSP的隐含对象错误 28在Model1开发模式中,JSP页面可以完成所有的操作错误 29在Model2开发模式中,业务逻辑操作在控制器层实现错误

JSP期末考试试卷(A卷)

华南农业大学期末考试试卷(A 卷) 2011学年第2学期 考试科目: 软件开发基础(Java ) 考试类型:(闭卷)考试 考试时间: 120 分钟 学号 姓名 年级专业 答题说明:所有答案必须写在答卷的指定位置,考试结束时只交答卷。 一、选择题(本大题共20小题,每小题1分,共20分) 说明:将选项答案按序号写在答卷上。 1. HTML 页面中,定义浏览器标题的标记应该写在()标记中。 A <HTML></HTML> B <HEAD></HEAD> C <BODY></BODY> D <XML></XML> 2. 表单<FORM>的属性中,用来设定提交该表单的URL 地址的属性是()。 A action B method C name D target 3.下列关于JSP 应用程序执行的描述正确的是()。 A JSP 页面在每次执行前都必须经过翻译和编译后生成.class 文件。 B JSP 页面需要下载到本地浏览器中执行。 C JSP 页面的执行是在JSP 容器中完成的,需要JVM (Java 虚拟机)的支持。 D JSP 页面只需要有JVM (Java 虚拟机)就可以单独运行。 4.Servlet 开发人员在扩展HttpServlet 时如何处理HttpServlet 的service() 方法? A 必须覆盖service()方法 B 从doGet()或doPost()方法调用service()方法 C 从init()调用service()方法 D 至少覆盖一个doXXX()方法,如doPost()方法 5.以下哪个JSP 隐含对象不能存储属性(Attribute)? A request B response C session D application 6. 以下对JavaBean 的描述中正确的是哪一个? A JavaBean 必须继承java.io.Serializable 接口 B JavaBean 本质上就是一个Java 类 C 编译后的JavaBean 可以放置在Web 项目的任意目录下 D 在JSP 页面中只能使用<jsp:useBean>动作才能使用JavaBean 7. Java Web 应用程序的配置文件web.xml 存放在哪个位置? A /WEB-INF/classes B /WEB-INF C /WEB-INF/lib D /META-INF 8. 在某应用程序中有2个页面index.jsp 和test.jsp ,它们的代码分别如下: //index.jsp</p><h2>jsp复习题库</h2><p>JSP期中复习题库 一、单选题 【】1.request对象中读取同名复选框表单元素的值时,比较合适的方法是 A.getAttribute() B.getParameter() C.getParameters() D.getAttributes() 【】2.application对象所依赖的类或接口是 A.JspWrite B.ServletContext C.PageContext D.HttpServletContext 【】3.下面关于session的用法哪个是正确的 ) A.HttpSession session = new HttpSession(); B.String haha =(“haha”); C.(“haha”); D.session. setAttribute(“haha”); 【】4.关于<jsp:include page="Relative URL" />说法不正确的是哪个A.URL的输出在请求时被插入到JSP页面中 B.不能含有影响整个页面的JSP内容 C.被包含文件改变后不需更改使用它的页面 | D.被包含文件更改后,需要手动地更新使用它的页面 【】5.Java关于异常处理机制的叙述哪个正确 A.catch部分捕捉到异常情况时,才会执行finally部分 B.当try区段的程序发生异常时,不一定执行catch区段的程序 C.不论程序是否发生错误及捕捉到异常情况,都会执行finally部分 D.以上都是 【】6.下面JSP动作中叙述不正确的是 A.jsp:forward动作用来把当前的JSP页面重导到另一个页面上,用户看到的地址是当前页面的地址,而内容是另一个页面的。 ! B.jsp:param动作可单独使用,用于页面间传递参数。 C.jsp:include动作和include指令是不完全一样的。 D.jsp:setProperty动作用来在一个JSP页面中设置已创建的bean的属性值。 【】7.下面哪些为构造函数的特性定义 A.在类中声明构造函数时,名称应该与类名相同 B.具有重载特性,可以建立多个相同的名称 C.使用类建立新对象时,会自动执行构造函数,因此在构造函数内设定变量的初值或进行内存分配 D.以上都是 【】8.》 【】9.下面说法不正确的是 A.JSP中的汉字字符串在服务器端用gb2312,在编译为Servlet时自动转换</p><h2>JSP期末考试试卷(A卷)-2012.6</h2><p>华南农业大学期末考试试卷(A 卷) 2011学年第2学期 考试科目: 软件开发基础(Java ) 考试类型:(闭卷)考试 考试时间: 120 分钟 学号 姓名 年级专业 答题说明:所有答案必须写在答卷的指定位置,考试结束时只交答卷。 一、选择题(本大题共20小题,每小题1分,共20分) 说明:将选项答案按序号写在答卷上。 1. HTML 页面中,定义浏览器标题的<Title>标记应该写在()标记中。 A <HTML></HTML> B <HEAD></HEAD> C <BODY></BODY> D <XML></XML> 2. 表单<FORM>的属性中,用来设定提交该表单的URL 地址的属性是()。 A action B method C name D target 3.下列关于JSP 应用程序执行的描述正确的是()。 A JSP 页面在每次执行前都必须经过翻译和编译后生成.class 文件。 B JSP 页面需要下载到本地浏览器中执行。 C JSP 页面的执行是在JSP 容器中完成的,需要JVM (Java 虚拟机)的支持。 D JSP 页面只需要有JVM (Java 虚拟机)就可以单独运行。 4.Servlet 开发人员在扩展HttpServlet 时如何处理HttpServlet 的 service()方法? A 必须覆盖service()方法 B 从doGet()或doPost()方法调用service()方法 C 从init()调用service()方法 D 至少覆盖一个doXXX()方法,如doPost()方法 5.以下哪个JSP 隐含对象不能存储属性(Attribute)? A request B response C session D application 6. 以下对JavaBean 的描述中正确的是哪一个? A JavaBean 必须继承java.io.Serializable 接口 B JavaBean 本质上就是一个Java 类 C 编译后的JavaBean 可以放置在Web 项目的任意目录下 D 在JSP 页面中只能使用<jsp:useBean>动作才能使用JavaBean 7. Java Web 应用程序的配置文件web.xml 存放在哪个位置? A /WEB-INF/classes B /WEB-INF C /WEB-INF/lib D /META-INF 8. 在某应用程序中有2个页面index.jsp 和test.jsp ,它们的代码分别如下:</p><h2>JSP题库_62道</h2><p>JSP/Servlet试题库: 1. 动态网站需要的技术为。(选择3项) A.CGI B.HTTP C.ASP D.PHP 2. 在部署Servlet时,web.xml文件中<servlet>标签应该包含哪些标签。(选择2项) A.<servlet-mapping> B.<servlet-name> C.<url-pattern> D.<servlet-class> 3. 假设web应用的文档根目录为MyApp,那么可以从哪里找到database.jar文件。(选择1项) A.MyApp目录下 B.M yApp\images目录下 C.M yApp\WEB-INF目录下 D.MyApp\WEB-INF\lib目录下 4.为了获得用户提交的表单参数,可以从哪一个接口中得到。(选择1项) A.ServletResponse B.S ervlet C.R equestDispatcher D.ServletRequest 5.从以下哪一个选项中可以获得Servlet的初始化参数。(选择1项) A.Servlet B.S ervletContext C.S ervletConfig D.GenericServlet 6.表示“资源移动”的状态码是。(选择1项) A.200 B.302 C.400 D.500 7.哪一个对象可以用于获得浏览器发送的请求。(选择1项) A.HttpServletRequest B.H ttpServletResponse C.H ttpServlet D.Http</p><p>8.事务处理的结束方式。(选择2项) A.中止 B.提交 C.完成 D.回滚 9.如何取得数据源。(选择1项) A.通过Http B.通过ftp C.J NDI D.通过Connection对象 10.会话是。(选择1项) A.一个TCP/IP连接 B.一个物理连接 C.客户机和Web服务器之间的一组交互 D.Http请求 11.客户端状态管理的解决方案有。(选择3项) A.URL重写 B.隐藏域 C.C ookie D.以上都不是 12.当Web应用程序被关闭时,Servlet容器会调用Servlet Context“监听器”的哪个方法?(选择1项) A.contextInitialized() B.contextDestroyed() C.contextFinialized() D.contextShutdown() 13.与HttpSessionListener接口有关的方法是。(选择2项) A.SessionInitialized() B.SessionCreated() C.SessionFinialized() D.SessionDestroyed() 14.以下哪一个不是Filter接口的方法。(选择1项) A.init(FilterConfig config) B.void destroy() C.void doFilter(HttpServletRequest request,HttpServletResponse response) D.void doFilter(ServletRequest request,ServletResponse response,FilterChain chain)</p><h2>web隐含对象实验</h2><p>实验七JSP隐含对象与作用域 一、实验目的 1. 掌握全部9个隐含对象的使用; 2. 理解4种作用域对象。 二、实验原理 在JSP页面的转换阶段,JSP引擎在_jspService()方法中声明并初始化了9个隐含对象,它们主要是为了方便在JSP页面对这些对象的访问。这些隐含对象包括:application、session、request、response、out、page、pageContext、config、exception。 在上述9个隐含对象中,有下面4个作用域对象,它们是:application、session、request、pageContext。它们主要用来在不同作用域中共享数据。 三、实验内容与步骤 (一)了解隐含对象是如何定义的。 在helloapp应用程序中编写一个名为implicit.jsp的页面,内容为空。然后在浏览器中访问该页面。接下来打开<CATALINA>\work\Catalina\localhost\helloapp\org\apache\jsp目录中的implicit_jsp.java文件,查看隐含对象是如何定义的。 完成下面的填空: JSP页面转换后定义的类名为:(implicit_jsp ) 该类继承了哪个类:(org.apache.jasper.runtime.HttpJspBase ) 隐含对象request的类型为:(HttpServletRequest ) 隐含对象response的类型为:(HttpServletResponse ) 隐含对象pageContext的类型为:(PageContext ) 隐含对象session的类型为:(HttpSession ) 隐含对象application的类型为:(ServletContext ) 隐含对象config的类型为:(ServletConfig ) 隐含对象out的类型为:(JspWriter ) 隐含对象page的类型为:(Object ) 修改implicit.jsp页面,在中加入下面一行: <%@ page isErrorPage = "true" %> 然后再访问该页面,再次查看上述Java源文件,则可看到exception隐含对象的定义。 隐含对象exception的类型为:(Throwable ) 说明下面4个隐含对象是如何得到的: application = pageContext.getServletContext(); config = pageContext.getServletConfig(); session = pageContext.getSession(); out = pageContext.getOut(); (二)各种隐含对象与作用域变量的使用 【步骤1】request隐含对象的使用(request.jsp) <%@ page contentType="text/html;charset=gb2312" %> <% String remoteAddr = request.getRemoteAddr(); String remoteHost = request.getRemoteHost(); int serverPort = request.getServerPort(); %></p><h2>JSP期末模拟题</h2><p>JSP期末模拟题A卷 一.填空题(每空2分,共10分) 1.创建JSP应用程序时,配置文件web.xml应该在程序下的_____目录中。 2.如果编写一个计数器程序,用来记载当前网站的访问量,最好采用JSP中的_____对象。 3.Http的中文含义为________。 4.Tomcat服务器的默认端口为________。 5.在html标记中,________标记用于设置当前页面的标题。 答案: 1.WEB-INF 2.application 3.超文本传输协议 4.8080 5.title 二.判断正误题(每题1分,共10分) 1.Internet和intranet的含义意义相同。() 2.Web开发技术包括客户端和服务器端的技术。() 3.在网页中图形文件与网页文件是分别存储的。() 4.超级链接不仅可以将文本作为链接对象,也可以将图像作为链接对象。()5.超级链接<a>标记的target属性取值为链接的目标窗名,可以是parent、blank、self、top。() 6.JSP引擎执行字节码文件的主要任务之一是直接将HTML内容发给客户端。 () 7.在“<%!”和“%>”标记之间声明的Java的方法在整个页面内有效。()8.程序片变量的有效范围与其声明位置有关,即从声明位置向后有效,可以在声明位置后的程序片、表达式中使用。() 9.不可以用一个page指令指定多个属性的取值。() 10.jsp:param动作标记不能单独使用,必须作为jsp:include、jsp:forward标记等的子标记使用,并为它们提供参数。() 答案: 1.错 2.对 3.对 4.对 5.错 6.对 7.对 8.对 9.错 10.对 三.简答题(每题5分,共50分) 1. JSP中可重复使用的组件有哪些? 2.什么是JSP的预编译特征? 3. 开发JSP程序可采用哪几种开发模式?分别介绍他们的优缺点。 4. 什么是成员变量和局部变量?他们的区别是什么?</p><h2>jsp笔试题全集</h2><p>1. HTML简介HTML(HyperT ext Mark-up Language)即超文本标记语言 1.什么是xml? 可扩展标记语言 JSP(JavaServer Pages> <% Cookie mycookie = new Cookie(”aName”,”aValue”); response.addCookie(mycookie); setAttribute(String name,Object):设置名字为name的request的参数值 getAttribute(String name):返回由name指定的属性值 getAttributeNames():返回request对象所有属性的名字集合,结果是一个枚举的实例getCookies():返回客户端的所有Cookie对象,结果是一个Cookie数组getCharacterEncoding():返回请求中的字符编码方式 getContentLength():返回请求的Body的长度 getHeader(String name):获得HTTP协议定义的文件头信息 getHeaders(String name):返回指定名字的request Header的所有值,结果是一个枚举的实例getHeaderNames():返回所以request Header的名字,结果是一个枚举的实例getInputStream():返回请求的输入流,用于获得请求中的数据 getMethod():获得客户端向服务器端传送数据的方法 getParameter(String name):获得客户端传送给服务器端的有name指定的参数值getParameterNames():获得客户端传送给服务器端的所有参数的名字,结果是一个枚举的实例 getParameterValues(String name):获得有name指定的参数的所有值 getProtocol():获取客户端向服务器端传送数据所依据的协议名称 getQueryString():获得查询字符串 getRequestURI():获取发出请求字符串的客户端地址 getRemoteAddr():获取客户端的IP地址 getRemoteHost():获取客户端的名字 getSession([Boolean create]):返回和请求相关Session getServerName():获取服务器的名字 getServletPath():获取客户端所请求的脚本文件的路径 getServerPort():获取服务器的端口号 :删除请求中的一个属性 Servlet的生命周期可以分为加载、实例化、初始化、处理客户请求和卸载 五个阶段,体现在方法上主要是init()、service()和destroy()三个方法。 生命周期的具体说明如下: Servlet容器完成加载Servlet类和实例化一个Servlet对象 init()方法完成初始化工作,该方法由Servlet容器调用完成 service()方法处理客户端请求,并返回响应结果</p><h2>jsp中9个隐含对象</h2><p>如图所示,这些隐含对象的可分为4类: 1. 与输入/输出有关的对象:request、response、out 2. 与属性作用域有关的对象:session、application、pageContext 3. 与Servlet 相关对象:page、config 4. 与错误处理有关的:exception 一、page 对象 page对象代表JSP对象,更准确地说它代表JSP被转译后的Servlet,它可以调用Servlet 类所定义的方法。 二、config 对象 config 对象里存放着一些Servlet 初始的数据结构。 config 对象实现于javax.servlet.ServletConfig 接口,它共有下列四种方法: public String getInitParameter(name) public java.util.Enumeration getInitParameterNames( ) public ServletContext getServletContext( ) public Sring getServletName( ) 三、request 对象 request 对象包含所有请求的信息,如:请求的来源、标头、cookies和请求相关的参数值等等。 request 对象实现javax.servlet.http.HttpServletRequest接口的,所提供的方法可以将它分为四大类: 1.储存和取得属性方法; void setAttribute(String name, Object value)设定name属性的值为value Enumeration getAttributeNamesInScope(int scope)取得所有scope 范围的属性Object getAttribute(String name)取得name 属性的值</p><h2>JSP期末复习题库</h2><p>第一章 1)如果做动态网站开发,以下()可以作为服务器端脚本语言。 A.HTML B.JSP C.JavaScript D.Java 2)在设计Web项目的目录结构时,一般吧JSP 和HTML文件放在()下。 A.src目录B.文档根目录或其子文件下 C.META-INT目录D.WEB-INF目录 3)在Web项目的目录结构中,web.xml文件位于()中。 A.src目录B.文档根目录C.META-INF目录D.WEB-INF目录4)下面对于B/S架构与C/S架构的描述错误的是()。 A.B/S架构解决了C/S架构的弊端,因而在程序开发中将会逐步取代C/S架构 B.B/S机构是基于internet网络实现的,使得用户访问的范围扩大 C.C/S架构师基于局域网实现的,当程序发生改的后,需要对每一个客户端进行维护D.C/S可以设计出丰富的界面,而B/S则相对处于劣势 5)以下选项中()是正确的URL,(选两项) A.https://www.doczj.com/doc/d42744073.html,/talk/talk1.htm B.ftp://https://www.doczj.com/doc/d42744073.html, C.https://www.doczj.com/doc/d42744073.html, D./news/welcome.html 第二章 6)在某个JSP页面中存在这样一行代码,<%= “2” + “4” %> 运行该JSP后,以下说法正 确的是()。 A.这行代码没有对应的输出B.这行代码对应的输出时6 C.这行代码对应的输出时24 D.这行代码将引发错误 7)与page指令<%@ page import= “java.util.*, java.text.* “ %> 等价的是()。 A.<%@ page import= “java.util.* %> <%@ page import= “java.text.* “ %> B.<%@ page import= “java.util.*”, import= “java.text.* “ %> C.<%@ page import= “java.util.* “; %> <%@ page import= “java.text.* “; %> D.<%@ page import= “java.util.* ; java.text.* “ %> 8)下列选项中,()是正确的表达式。 A.<% String s = “hello world ”;%> B.<% = “hello world ” ;%> C.<% = “hello world ” %> D.<% ! “hello world ” %> 9)如果请求页面中存在两个单选按钮(假设单选按钮的名称为sex), 分别代表男和女, 该页面提交后,为了获得用户的选择项,可以使用以下()方法。 A.request.getParameter(sex); B.request.getParameter(“sex”);</p><h2>JSP选择题</h2><p>JSP选择题 (1)在J2EE的Web应用中,编译后的class文件存放的目录为(A) A. classes目录 B. images目录 C. jar目录 D. 任意位置 (2)在JSP中,哪个指令用来声明JSP欲使用的标签库?(B) A. tld B. taglib C. import D. include (3)Servlet处理请求的方式为(A) A. 以运行的方式 B. 以线程的方式 C. 以程序的方式 D. 以调度的方式 (4)在JavaWeb应用中,MVC设计模式中的V(视图)通常由(A)充当。 A. JSP B. Servlet C. Action D. JavaBean (5)网页服务默认的端口号是(D),我们可以通过HTTP地址加上端口号来访问网站。 A. 8100 B. 8080 C. 9000 D. 80 (6)JSP标准标签库(JSTL)的标签库描述符文件的后缀是(A)。 A. .tld B. .jar C. .properties D. .xml (7)、Web服务是一种通过互联网来描述、发布、定位及调用的服务,下列关于Web服务的理解正确的是(D)。 A. Web服务只能在互联网发布,不能在局域网内发布 B. Web服务的提供者和请求者必须使用相同的技术平台 C. Web服务的提供者和请求者必须使用的语言开发应用程序 D. Web服务的数据传输标准是XML 说明:Web服务(Web Service)是基于XML和HTTPS的一种服务,其通信协议主要基于SOAP,服务的描述通过WSDL,通过UDDI来发现和获得服务的元数据。 (8)在Java Web应用程序中,使用哪个数据源与JNDI获得数据库连接时,应把JDBC驱动程序jar文件放在(D)下。 A. 应用程序的src目录 B. 应用程序的/WEB-INF/lib目录 C. Tomcat的根目录 D. Tomcat的common/lib目录 (9)下面哪个说法是正确的? (B) A. 对于每个要求访问maillogin.jsp的HTTP请求,Servlet容器都会创建一个HttpSession 对象 B. 每个HttpSession对象都有惟一的ID。 C. JavaWeb应用程序必须负责为HttpSession分配惟一的ID(这是由服务器分配的)(10)如果不希望JSP网页支持Session,应该如何办? (B) A. 调用HttpSession的invalidate()方法 B. <%@ page session= “false\”> (11)在JSP中使用标记时,不会出现的属性是:(A) A. name</p><h2>JSP填空题</h2><p>三、填空题 1. Jsp注释中一种是__Java注释_____,其注释语法为____// 或/*_____*/_______.另一种注 释是___Jsp注释________,其语法为___<%-- --%>。 2. 在本机上安装了Tomcat服务器,使用的均为默认安装选项,将自己编写的test.jsp文件 放在Tomcat安装目录\ webapps\ examples目录里,那么在本机的浏览器中要访问test.jsp文件,应使用的url地址为http://localhost:8080/examples/test.jsp 。 3. 当getParameter()方法的参数部分指定的输入控件不存在时,该方法的返回值为null。 4. 列表框的name属性值为“city”,并且允许多选,若要一次读取所有的选中项并存放于数 组str中,则对应的java语句为String[] str = request.getParameterValues(“city”);。 5. 若要修改Tomcat服务默认使用的端口号,可以在___server.xml__文件中修改。 6. page指令中language属性的默认值是_java___;isErrorPage属性的默认值是____false____;buffer属性的默认值是___8kb____。 7. 用response对象的___addCookie_____________方法可以将cookie对象写入客户端。 8. 已知文件look.jsp的路径为c:/myjsp/inc,文件login.jsp的路径为c:/myjsp。若使用response 的重定向方法由look.jsp跳转到login.jsp中,则正确的写法为response.sendRedirect(“../login.jsp”)。 9. 在Tomcat中,所有编译好的JavaBean都需要放在某个应用目录下的_WEB-INF/classes_ 目录之下。 50、控制一个Servlet的生命周期的方法有__Init______, ___service_____和 __destroy_____。其中__Init______在所有的请求到来之前调用,__destroy______在撤消 应用或关闭web container时调用。Servlet通常只有一个实例,被所有的访问者共享,因 此要注意资源的同步。 51、在Java Web开发中,跟踪客户状态的手段可通过__session_______和____cookie_____; 增加一个新的cookie, 调用 HttpServletRequest ___的_addCookie_方法;要在服务器端 查询cookie, _HttpServletResponse__的_getCookies _方法。Session的类型是HttpSession__, 获得session的途径是调用_HttpServletRequest_的方法_getSession _。 52、将session与浏览器联系起来的手段有Cookie和URL rewriting,所用Cookie变量 却省为_JSESSIONID __, URL rewriting的却省参数是jsessionid __。URL rewriting通 过调用HttpServletResponse的_encodeRedirectURL_重写重定向资源,调用_C. encodeURL __重写一般资源。 53、Java Web应用中往往通过设置不同作用域的属性来达到通讯的目的。如果某个对象只 在同一请求中共享,通过调用_HttpServletRequest __的setAttribute方法设置属性, 也 可通过_ ServletRequestListener_事件侦听器实现;如果在不同的请求中传递某一客户的 状态,调用_HttpSession _的setAttribute方法设置属性,也可通过HttpSessionListener_ 事件侦听器实现;如果某个对象被所有的访问者共享,把这个对象设置为 ServletContext _的属性即可,也可通过ServletContextListener_事件侦听器实现。 54、Filter必须实现接口FilterChain __, 它只有一个实例,控制生命周期的方法是_init _,doFilter和_destroy_; 在提供服务之前被调用方法的参数类型是_FilterConfig(init 的参数)_;服务方法的参数类型是ServletRequest _,ServletResponse</p><h2>JSP试题</h2><p>1.在JSP中,哪个指令用来声明JSP欲使用的标签库?(B) A. tld B. taglib C. import D. include 2. Servlet程序的入口点是:(A) A. init() B. main() C. service() D. doGet() 3. 下列哪个为JSP的隐含对象。(B) A.env B.page(即内建对象) C.jspinfo D.context 4. 下列选项中能在JSP页面中实现转向的是(B) A. response.forward(“/index.jsp”); B. response.sendRedirect(“/index.jsp”); C. request.forward (“/index.jsp”); D. request.sendRedirect(“/index.jsp”); 5. 如果某一JSP页面的表单中,有几个复选框,name为“habit”,则该jsp 提交后,通过下面(C)语句去获取用户选中复选框的值。 A. request.getAttribute(“habit”); B. req uest.getParameter(“habit”);</p><p>C. request.getParameterValues(“habit”); D. request.getHabit(); 6.编写自定义标签处理类后,需要编写一个(B)去描述。 A. .tag 文件 B. .tld 文件 C. .dtd文件 D. .xml 文件 7. sesson对象的(D)方法用于判断是否为开始新会话。 A. begin() B. isNewSessionID() C. invalidate() D. isNew() 8. 如何发送Cookie?。(B) A. 使用new Cookie语句 B. 调用response.addCookie方法 C. 使用Cookie的setMaxAge方法 D. setCookie方法 9. 在JDBC 应用程序中,使用Statement接口的( D )办法,执行查询语句,并可返回结果集。 a) execute()</p><h2>JSP程序设计复习资料(选择题带答案)</h2><p>JSP程序设计资料——选择题练习 1.在J2EE的Web应用中,编译后的class文件存放的目录为()[3分] A. classes目录 B. images目录 C. jar目录 D. 任意位置 参考答案:A 2.在JSP中,哪个指令用来声明JSP使用的标签库?()[3分] A. tld B. taglib C. import D. include 参考答案:B 3.关于JavaBean正确的说法是()[3分] A. Java文件与Bean所定义的类名可以不同,但一定要注意区分字母的大小写 B. 在JSP文件中引用Bean,其实就是用语句 C. 被引用的Bean文件的文件名后缀为.java D. Bean文件放在任何目录下都可以被引用 参考答案:B 4.在JavaWeb应用中,MVC设计模式中的V(视图)通常由()充当。[3分] A. JSP B. Servlet C. Action D. JavaBean 参考答案:A 5.网页服务默认的端口号是(),我们可以通过HTTP地址加上端口号来访问网站。[3分] A. 8100 B. 8080 C. 9000 D. 80 参考答案:D 6.JSP标准标签库(JSTL)的标签库描述符文件的后缀是()。[3分] A. .tld B. .jar C. .properties D. .xml 参考答案:A</p><p>7.Web服务是一种通过互联网来描述、发布、定位及调用的服务,下列关于Web服务的理解正确的是()。[3分] A. Web服务只能在互联网发布,不能在局域网内发布 B. Web服务的提供者和请求者必须使用相同的技术平台 C. Web服务的提供者和请求者必须使用的语言开发应用程序 D. Web服务的数据传输标准是XML 参考答案:D 8.在Java Web应用程序中,使用哪个数据源与JNDI获得数据库连接时,应把JDBC驱动程序jar文件放在()下。[3分] A. 应用程序的src目录 B. 应用程序的/WEB-INF/lib目录 C. Tomcat的根目录 D. Tomcat的common/lib目录 参考答案:D 9.在JSP中使用标记时,不会出现的属性是:()[3分] A. name B. property C. value D. 以上皆不会出现 参考答案:A 10.Page指令用于定义JSP文件中的全局属性,下列关于该指令用法的描述不正确的是()[3分] A. 作用于整个JSP页面。 B. 可以在一个页面中使用多个指令。 C. 为增强程序的可读性,建议将指令放在JSP文件的开头,但不是必须的。 D. 指令中的属性只能出现一次。 参考答案:D 11.Servlet程序的入口点是:()[3分] A. init() B. main() C. service() D. doGet() 参考答案:A 12.不能在不同用户之间共享数据的方法是()[3分] A. 通过cookie B. 利用文件系统 C. 利用数据库 D. 通过ServletContext对象</p><h2>jsp隐含对象</h2><p>第3章JSP隐含对象 3.1JSP的隐含对象 隐含对象类型作用域描述 request javax.servlet.http.HttpServletReq uest request表示的是调用JSP页 面的请求 response javax.servlet.http.HttpServletRes ponse page表示的是返回给客户 的响应 pageConte xt javax.servlet.jsp.PageContext page存储指定页面的属性 session javax.servlet.http.HttpSession session表示的是客户端正参 与的HTTP会话 applicatio n javax.servlet.ServletContext applicati on 表示的是JSP页面所 驻留的Web应用程序 out javax.servlet.jsp.JspWriter page一个缓冲的输出流, 用来给客户返回信息config javax.servlet.ServletConfig page包含与页面servlet 有关的配置信息 page https://www.doczj.com/doc/d42744073.html,ng.Object page表示页面servlet的一 个实例 exception https://www.doczj.com/doc/d42744073.html,ng.Throwable page表示未捕获到的异常 与错误 Jsp的隐含对象是在jsp页面servlet实现类的_jspService()方法内部定义,故jsp 页面可在<%= %>中直接使用它们。 3.2out隐含对象 out隐含对象属于javax.servlet.jsp.JspWriter类型,供jsp页面输出信息。功能类似于jaca.io.BufferedWriter和java.io.PrintWriter。不同的是JspWriter的打印方法可以抛出java.io.IOException异常,而JspWriter不抛出。JspWriter的实现子类由tomcat容器实现。 服务器能够为每一个jsp页面设置一个输出缓冲区。如果jsp页面不使用输出缓冲区,则页面输出信息时,Servlet容器会调用response.getWriter()生成一个PrintWriter对象,将缓冲区中的信息输出。使用输出缓冲区可以减少网络连接的次数。在默认情况下,jsp页面使用输出缓冲区。 3.2.1输出信息的方法 方法主要有print()、println()和newLine()。newLine()相当于回车。 3.2.2缓冲区相关的方法 输出缓冲区的相关方法有 1).flush():用于刷新流,如果缓冲区满了,这个方法自动调用,输出缓冲区中的信息。如果流已经关闭,调用print()或flush()会引发一个IOException异常。2).clear():表示清除缓冲区中的信息。如果缓冲区空清除,会引发一个IOException 异常。 3).clearBuffer():功能与clear()相似,区别是不抛出异常。 4).getBufferSize():返回缓冲区大小。 5).getRemaining():返回缓冲区剩余的空闲空间。</p> <div> <div>相关主题</div> <div class="relatedtopic"> <div id="tabs-section" class="tabs"> <ul class="tab-head"> <li id="7321445"><a href="/topic/7321445/" target="_blank">jsp隐含对象</a></li> </ul> </div> </div> </div> <div class="container"> <div>文本预览</div> <div class="textcontent"> </div> </div> </div> <div class="category"> <span class="navname">相关文档</span> <ul class="lista"> <li><a href="/doc/c012715004.html" target="_blank">JSP试题</a></li> <li><a href="/doc/1f7483156.html" target="_blank">第12讲_JSP隐含对象(out、request)</a></li> <li><a href="/doc/3d9901446.html" target="_blank">JSP题库_62道</a></li> <li><a href="/doc/7716047786.html" target="_blank">JSP期末模拟题</a></li> <li><a href="/doc/bb8478220.html" target="_blank">Java Web开发与实践第10章05 EL的隐含对象</a></li> <li><a href="/doc/fc11034563.html" target="_blank">JSP试题</a></li> <li><a href="/doc/1d18274693.html" target="_blank">jsp复习题库</a></li> <li><a href="/doc/6a11191452.html" target="_blank">web隐含对象实验</a></li> <li><a href="/doc/895733836.html" target="_blank">JSP期末复习题库</a></li> <li><a href="/doc/c25573923.html" target="_blank">jsp题库</a></li> <li><a href="/doc/184547313.html" target="_blank">jsp</a></li> <li><a href="/doc/388988625.html" target="_blank">JSP 隐含对象</a></li> <li><a href="/doc/728792512.html" target="_blank">jsp笔试题全集</a></li> <li><a href="/doc/b36053184.html" target="_blank">JSP试题</a></li> <li><a href="/doc/e715889376.html" target="_blank">jsp复习题库</a></li> <li><a href="/doc/1d13204317.html" target="_blank">JSP选择题</a></li> <li><a href="/doc/5413766384.html" target="_blank">JSP题库_62道</a></li> <li><a href="/doc/8f5322446.html" target="_blank">第5单元 JSP内置对象</a></li> <li><a href="/doc/b517601369.html" target="_blank">JSP程序设计复习资料(选择题带答案)</a></li> <li><a href="/doc/0e18407181.html" target="_blank">JSP内建对象</a></li> </ul> <span class="navname">最新文档</span> <ul class="lista"> <li><a href="/doc/0619509601.html" target="_blank">幼儿园小班科学《小动物过冬》PPT课件教案</a></li> <li><a href="/doc/0a19509602.html" target="_blank">2021年春新青岛版(五四制)科学四年级下册 20.《露和霜》教学课件</a></li> <li><a href="/doc/9619184372.html" target="_blank">自然教育课件</a></li> <li><a href="/doc/3319258759.html" target="_blank">小学语文优质课火烧云教材分析及课件</a></li> <li><a href="/doc/d719211938.html" target="_blank">(超详)高中语文知识点归纳汇总</a></li> <li><a href="/doc/a519240639.html" target="_blank">高中语文基础知识点总结(5篇)</a></li> <li><a href="/doc/9019184371.html" target="_blank">高中语文基础知识点总结(最新)</a></li> <li><a href="/doc/8819195909.html" target="_blank">高中语文知识点整理总结</a></li> <li><a href="/doc/8319195910.html" target="_blank">高中语文知识点归纳</a></li> <li><a href="/doc/7b19336998.html" target="_blank">高中语文基础知识点总结大全</a></li> <li><a href="/doc/7019336999.html" target="_blank">超详细的高中语文知识点归纳</a></li> <li><a href="/doc/6819035160.html" target="_blank">高考语文知识点总结高中</a></li> <li><a href="/doc/6819035161.html" target="_blank">高中语文知识点总结归纳</a></li> <li><a href="/doc/4219232289.html" target="_blank">高中语文知识点整理总结</a></li> <li><a href="/doc/3b19258758.html" target="_blank">高中语文知识点归纳</a></li> <li><a href="/doc/2a19396978.html" target="_blank">高中语文知识点归纳(大全)</a></li> <li><a href="/doc/2c19396979.html" target="_blank">高中语文知识点总结归纳(汇总8篇)</a></li> <li><a href="/doc/1619338136.html" target="_blank">高中语文基础知识点整理</a></li> <li><a href="/doc/e619066069.html" target="_blank">化工厂应急预案</a></li> <li><a href="/doc/b019159069.html" target="_blank">化工消防应急预案(精选8篇)</a></li> </ul> </div> </div> <script> var sdocid = "d24a6414af1ffc4ffe47acf4"; </script> <script type="text/javascript">bdtj();</script> <footer class="footer"> <p><a href="/tousu.html" target="_blank">侵权投诉</a> © 2022 www.doczj.com <a href="/sitemap.html">网站地图</a></p> <p> <a href="https://beian.miit.gov.cn" target="_blank">闽ICP备18022250号-1</a>  本站资源均为网友上传分享,本站仅负责分类整理,如有任何问题可通过上方投诉通道反馈 <script type="text/javascript">foot();</script> </p> </footer> </body> </html>