文档章节

JSP九大对象

chape
 chape
发布于 2013/04/20 23:37
字数 2525
阅读 94
收藏 2
点赞 0
评论 0

      在JSP中,因为对部分Java对象作了声明,因此即使不重新声明这些对象,也可以调用,这些内置对象起到简化页面的作用,不需要由开发人员进行实例化,它们由容器实现和管理,在所有的Jsp页面中都能使用内置对象,内置对象在Jsp初始化时生成,可以利用这些对象制作多种JavaWeb应用程序

一 out对象

主要用来向客户端输出各种数据类型内容,并且管理应用服务器上的输出缓冲区。

out.print()//输出数据
out.newLine()//输出一个换行符
out.flush()//输出缓冲区里的数据
out.close()//关闭输出流
out.clearBuffer()//清除缓冲区里的数据,并把数据输出到客户端
out.clear()//清除缓冲区里的数据,但不会把数据输出到客户端
out.getBufferSize()//获得缓冲区大小
out.getRemaining()//获得缓冲区中没有被占用的空间大小
out.isAutoFlush()//返回布尔值。如果AutoFlush为真 则返回真。

二 page对象

      page对象是为了执行应答请求和设置的Servlet类的实体,即显示JSP页面自身,只有在JSP页面内才是合法的。Page隐含对象本质上包含当前Servlet接口引用的变量,可以看作是this变量的别名,因此该对象对于开发JSP比较有用

page.getClass()//获得page对象的类
page.hashCode()//获得page对象的hash码
page.toString()//将此page对象转换为String类对象
page.notify()//唤醒一个等待的进程
page.notifyAll()//唤醒所有等待的进程
page.wait()//使一个线程处于等待直到被唤醒
page.wait(long timeout)//使一个线程处于等待直到timeout或被唤醒

三 request对象

     requeset对象是从客户端向服务器发出的请求,可以通过这个对象了解客户端信息

isUserInRole(String role) 判断认证后的用户是否属于逻辑的role中的成员
getAttribute(String name) 返回由name指定的属性值。若不存在则为空
getAttributes()返回request对象的所有属性的名字集合,其结果是一个枚举的实例。
getCookies() 返回客户端的所有Cookie对象,结果是一个Cookie数组。
getCharacterEncoding() 返回请求中的字符编码方式。
getContentLength() 返回请求的Body的长度,如果不确定长度,返回-1
getHeader(String name) 获得HTTP协议定义的文件头信息
getHeaders(String name)    返回指定名字的request Header的所有值,其结果是一个枚举的
getHeaderNames()返回所有request Header的名字 ,其结果是一个枚举实例。
getInputStream() 返回请求的输入流,用于获得请求中的数据
getMethod() 获得客户端向服务器端传送数据的方法,如GET,POST,HEADER,TRACE等。
getParameter(String name)获得客户端传送给服务器端的参数值。
getParameterNames() 获得客户端传送给服务器端的所有参数名字,其结果是一个枚举的实例
getParameterValues(String name) 获得指定参数的所有值。
getProtocol() 获取客户端向服务器端传送数据所依据的协议名称
getQueryString()    获得查询字符串,该字符串是由客户端以GET方式向服务器端传送的
getRequestURI() 获取发出请求字符串的客户端地址
getRemoteAddr() 获取客户端IP地址
getRemoteHost() 获取客户端名字 
getSession([Boolean create]) 返回和请求相关的session。create参数是可选的。当有参数create且这个参数值为true时,如果客户端还没有创建session,那么将创建一个新的session。
getServerName() 获取服务器的名字
getServletPath()    获取客户端所请求的脚本文件的文件路径
getServerPort() 获取服务器的端口号
removeAttribute(String name) 删除请求中的一个属性
setAttribute(String name, java.lang.Object obj) 设置request的参数值

四 response对象

      response对象和request对象的性质相反,它所包含的是服务器向客户端做出的应答信息.实现过程中response被包装成HttpServletResponse接口,它包装了JSP产生的响应,然后被发送到客户端以响应客户端的请求

addCookie(Cookie cook) 添加一个Cookie对象,用来保存客户端的用户信息
addHeader(String name,String value) 添加HTTP文件头信息。该Header信息将传达到客户端,如果已经存在同名的则会覆盖
containsHeader(String name) 判断指定字句的Header是否已经存在,返回真假
encodeURL() 使用sessionId封装URL。如果没有封装URL则返回原值
flushBuffer() 强制把当前缓冲区的内容发送到客户端
getBufferSize() 返回缓冲区的大小
getOutputStream() 返回到客户端的输出流
sendError(int)    向客户端发送错误信息。如404 指网页不存在 
sendRedirect(String location) 把响应发送到另一个位置 进行处理 即请求重定向
setContent(String contentType) 设置响应的MIME类型
getWriter() 此方法返回一个PrintWriter对象
getCharacterEncoding() 该方法获得此时相应所采用的字符编码类型
setDateHeader(String name,heaername,long date)把指定的头名称以及日期设置为响应头信息 其值是从新纪元算起的毫秒数
setHeader(String name,String value) 设置指定名字的HTTP文件头的值,若存在则会覆盖。

五 session对象

session是用于保护客户端信息而分配给客户的对象

getAttribute()获取与指定名字相联系的属性
getAttributeNames()session对象中存储的每一个对象,其结果为一个枚举的实例
getCreateTime()    返回session的创建时间,最小单位这千分之一秒
getId()    返回唯一的标识,每个session的ID是不同的
getLastAccessedTime()返回和当前session对象相关的客户端最后发送的请求时间
setMaxInactiveInterval(int number)该方法设定保存session数据的时间,参数number为秒数
getMaxInactiveInterval()    返回决时间,负值表示session永远不会过期。它的值为session的生存时间
invalidate() 销毁这个对象,
isNew() 如果客户端不接受使用session,那么每个请求中都会产生一个session对象。
removeAttribute(String name) 删除与指定名字相联系的属性
setAttribute(String name,java.langObject obj) 设置指定名字的属性值 并将 其存储在session中。

六 application对象

application用来保存所有应用系统中的公有数据。

getAttribute(String name)返回指定名字的application对象的属性的值
getAttributeNames() 返回所有应用程序级对象的属性的名字 ,其结果为枚举的实例
getInitParameter(String name) 返回由指定名字的application对象的某个属性的初始值
getServletInfo() 返回Servlet编译器的当前版本的信息
setAttribute(String name,Object obj) 设置 指定名字的application对象的属性的值 
removeAttribute(string Key)通过关键字来删除一个对象的信息
getRealPath(String path)返回虚拟路径的真实路径
getContext(String URLPath)返回执行Web应用的application对象
getMajorVersion() 返回服务器支持的Servlet API最大版本号
getMinorVersion()返回服务器支持的Servlet API最小版本号
getMimeType(String file)返回指定文件的MIME类型
getResource(String path) 返回指定资源的输入流
getResourceDispathcher(String URLPath)返回指定资源的RequestDispathcher
getServlet(String name) 返回 指定名称的servlet
getServlets() 返回所有的Servlet,返回类型为枚举型
getServletNames()  返回所有的Servlet名称,返回类型为枚举型
log(String msg) 把指定信息写入到Servlet的日志文件中
log(String msg,Throwable throwable)把轨迹以及给出的Throwable异常说明信息写入Servlet的日志文件

七 config对象

      config对象被封装成javax.servlet.ServletConfig接口.标识servlet的配置。当一个servlet初始化时,容器把某些信息通过此对象传递给servlet

getServletContext() 返回执行者的Servlet上下文
getServletName()返回Servlet的名字
getInitParameter(String name) 返回名字为name的初始参数的值
getInitParameterNames() 返回这个JSP的所有的初始参数的名字

八 pageContext对象

      pageContext对象提供存取所有关于jsp程序执行时期所要用到的属性方法,他被封装成java.servlet.jap.pageContext接口,它的创建和初始化都是容器来完成的,jsp页面里可以直接使用pageContext对象的句柄,pageContext对象的getXXX()、setXXX()和findXXX()方法可以用来根据不同的对象范围实现对这些对象的管理

forward(String UriPath) 重定向
getAttribute(String name,[int scope] )    scope可选。用来检索一个特定的已经 命名的对象的范围,并且还可以通过调用 getAttributeNamesInScope()方法 ,检索对鞭个特定范围的每个属性String字符串名称的枚举。
getException()返回当前的exception对象
getRequest()返回当前的request对象
getResponse()返回当前的response对象
getServletConfig()返回当前页面的ServletConfig对象
getServletContext()返回ServletContext对象。这个对象对所有页面都是共享的
getSession() 返回当前的session对象
findAttribute() 可以用来按照页面,请求,会话以及应用程序范围顺序实现对某个已经命名的属性的搜索。
setAttribute() 可以用来设置默认页面范围或特定范围之中的已命名对象。removeAttribute()可以用来删除默认范围或特定范围内的已命名对象

九 exception对象

      exception指的是Web应用程序能够识别并处理的问题,在Java中利用明为try/catch的关键字来处理异常情况,如果在JSP页面中没有捕捉到的异常,就会生成exception对象,并把这个exception对象传送到在page指令中设定的错误页面中,然后在错误提示页面中处理相应的exception对象

exception对象只有在错误页面(在页面指令里有isErrorPage=true的页面)才可以使用
getMessage()//获取异常消息字符串
getLocalizeMessage()//获取本地化语言的异常错误
printStackTrace()//显示异常的栈跟踪轨迹
toString()//返回关于异常错误的简单消息描述
fillInStackTrace()//重写异常错误的栈执行轨迹

© 著作权归作者所有

共有 人打赏支持
chape
粉丝 157
博文 339
码字总数 191349
作品 0
成都
程序员
servlet/jsp基础复习

servlet就是一个普通的Java类,类对象由服务器(容器)创建,实现请求,响应交互数据。 实现第一个servlet继承HTTPservlet重写doget,dopost方法。其实servlet执行处理请求时候都会调用父类s...

hello_hp
2017/10/20
0
0
七、JSP九大内置对象和四个作用域

九大内置对象: request:类型是HttpServletRequest,和Servlet里的HttpServletRequest一模一样。 response:类型是HttpServletResponse,和Servlet里的HttpServletResponse一模一样。JSP里基...

Wakeeee_
07/16
0
0
(JavaEE-08)JSP九大隐式对象

JSP运行原理 每个JSP 页面在第一次被访问时,WEB容器都会把请求交给JSP引擎(即一个Java程序)去处理。JSP引擎先将JSP翻译成一个_jspServlet(实质上也是一个servlet) ,然后按照servlet的调用...

_-Leon-_
2014/07/07
0
0
JSP 学习总结---学习笔记

什么是JSP 1)为什么说,Servlet是一个动态Web开发技术呢? Servlet是基于服务端的一种动态交互技术, HttpServletRequest表示客户端到服务端的对象 HttpServletResponse表示服务端到客户端的...

知止内明
04/18
0
0
重温JSP学习笔记--三大指令九大内置对象

最近在温习javaweb的相关基础知识,鉴于我弄丢了记满了整整一本的笔记,决定以后把笔记和一些学习上的心得以及碰到的一些问题统统都放在网上,今天看了一下jsp的相关基础,以下是笔记:   JSP三...

冬至饮雪
2016/01/26
0
0
Tomcat如何与Servlet对象进行交互

Tomcat 是Web应用服务器,是一个Servlet/JSP容器. Tomcat作为Servlet容器,负责处理客户请求,把请求传送给Servlet,并将Servlet的响应传送回给客户.而Servlet是一种运行在支持Java语言的服务器上...

KeepMoving
2015/03/09
0
0
Servlet 生命周期、工作原理

Servlet 生命周期:Servlet 加载--->实例化--->服务--->销毁。 init():在Servlet的生命周期中,仅执行一次init()方法。它是在服务器装入Servlet时执行的,负责初始化Servlet 对象。可以配...

ArlenXu
2015/01/24
0
0
JavaEE细节问题04——Servlet细节问题

1.<url-patten>的优先级问题 大家都知道,在web.xml中可以通过配置<servlet>和<servlet-mapping>来让一个servlet真正跑起来,而让服务器通过URL定位到 具体serlvet的标签就是通过<url-patten......

Lunqi
2015/08/17
0
0
Servlet的一些细节--学习笔记

Servlet细节 1)浏览器访问的url-pattern只是一个符合格式的任意字符串,以/开头 2)一个Servlet的url-pattern可以是1个或多个,有二种形式; a).xx b)/xx/ 注意:/不能一起直接使用 3)/和....

知止内明
04/17
0
0
web开发javascript 之servlet api介绍

有关Java Servlets JavaTM servlets是一个不受平台约束的Java小程序,它可以被用来通过多种方法扩充一个Web服务器的功能。你可以把Servlet理解成Server 上的applets,它被编译成字节码,这样...

DURONG
2012/10/14
0
1

没有更多内容

加载失败,请刷新页面

加载更多

下一页

用Python绘制红楼梦词云图,竟然发现了这个!

Python在数据分析中越来越受欢迎,已经达到了统计学家对R的喜爱程度,Python的拥护者们当然不会落后于R,开发了一个个好玩的数据分析工具,下面我们来看看如何使用Python,来读红楼梦,绘制小...

猫咪编程
20分钟前
0
0
Java中 发出请求获取别人的数据(阿里云 查询IP归属地)

1.效果 调用阿里云的接口 去定位IP地址 2. 代码 /** * 1. Java中远程调用方法 * http://localhost:8080/mavenssm20180519/invokingUrl.action * @Title: invokingUrl * @Description: * @ret......

Lucky_Me
43分钟前
1
0
protobuf学习笔记

相关文档 Protocol buffers(protobuf)入门简介及性能分析 Protobuf学习 - 入门

OSC_fly
昨天
0
0
Mybaties入门介绍

Mybaties和Hibernate是我们在Java开发中应用的比较多的两个ORM框架。当然,目前Mybaties正在慢慢取代Hibernate,这是因为相比较Hibernate而言Mybaties性能更好,响应更快,更加灵活。我们在开...

王子城
昨天
2
0
编程学习笔记之python深入之装饰器案例及说明文档[图]

编程学习笔记之python深入之装饰器案例及说明文档[图] 装饰器即在不对一个函数体进行任何修改,以及不改变整体的原本意思的情况下,增加函数功能的新函数,因为这个新函数对旧函数进行了装饰...

原创小博客
昨天
0
0
流利阅读笔记33-20180722待学习

黑暗中的生物:利用奇技淫巧快活生存 Daniel 2018-07-22 1.今日导读 如果让你在伸手不见五指的黑暗当中生存,你能熬过几天呢?而大千世界,无奇不有。在很多你不知道的角落,有些生物在完全黑...

aibinxiao
昨天
6
0
Hystrix降级逻辑中如何获取触发的异常

通过之前Spring Cloud系列教程中的《Spring Cloud构建微服务架构:服务容错保护(Hystrix服务降级)》一文,我们已经知道如何通过Hystrix来保护自己的服务不被外部依赖方拖垮的情况。但是实际...

程序猿DD
昨天
1
0
gin endless 热重启

r := gin.New()r.GET("/", func(c *gin.Context) {c.String(200, config.Config.Server.AppId)})s := endless.NewServer(":8080", r)s.BeforeBegin = func(add string) ......

李琼涛
昨天
1
0
JAVA模式之代理模式

平时一直在用spring,spring中最大的特效IOC和AOP,其中AOP使用的就是代理模式.闲着无聊,随手写了一个代理模式,也记录下代理模式的实现Demo. 比如现在有一个场景是:客户想要增加一个新的功能,...

勤奋的蚂蚁
昨天
0
0
ES15-JAVA API 索引管理

1.创建连接 创建连接demo package com.sean.esapi.client;import java.net.InetSocketAddress;import org.elasticsearch.action.get.GetResponse;import org.elasticsearch.clien......

贾峰uk
昨天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部