- 浏览: 163936 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
zhousheng193:
非常感谢LZ
在JSP页面及servlet的doGet()方法中处理汉字乱码的问题 -
jie523314:
学习下。。。
读取XML文件
引用
JSP内置对象(9个常用的内置对象)
1.request对象
客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。它是HttpServletRequest类的实例。
序号 方 法 说 明
1 object getAttribute(String name) 返回指定属性的属性值
2 Enumeration getAttributeNames() 返回所有可用属性名的枚举
3 String getCharacterEncoding() 返回字符编码方式
4 int getContentLength() 返回请求体的长度(以字节数)
5 String getContentType() 得到请求体的MIME类型
6 ServletInputStream getInputStream() 得到请求体中一行的二进制流
7 String getParameter(String name) 返回name指定参数的参数值
8 Enumeration getParameterNames() 返回可用参数名的枚举
9 String[] getParameterValues(String name) 返回包含参数name的所有值的数组
10 String getProtocol() 返回请求用的协议类型及版本号
11 String getScheme() 返回请求用的计划名,如:http.https及ftp等
12 String getServerName() 返回接受请求的服务器主机名
13 int getServerPort() 返回服务器接受此请求所用的端口号
14 BufferedReader getReader() 返回解码过了的请求体
15 String getRemoteAddr() 返回发送此请求的客户端IP地址
16 String getRemoteHost() 返回发送此请求的客户端主机名
17 void setAttribute(String key,Object obj) 设置属性的属性值
18 String getRealPath(String path) 返回一虚拟路径的真实路径
2.response对象
response对象包含了响应客户请求的有关信息,但在JSP中很少直接用到它。它是HttpServletResponse类的实例。
序号 方 法 说 明
1 String getCharacterEncoding() 返回响应用的是何种字符编码
2 ServletOutputStream getOutputStream() 返回响应的一个二进制输出流
3 PrintWriter getWriter() 返回可以向客户端输出字符的一个对象
4 void setContentLength(int len) 设置响应头长度
5 void setContentType(String type) 设置响应的MIME类型
6 sendRedirect(java.lang.String location) 重新定向客户端的请求
3.session对象
session对象指的是客户端与服务器的一次会话,从客户连到服务器的一个WebApplication开始,直到客户端与服务器断开连接为止。它是HttpSession类的实例.
序号 方 法 说 明
1 long getCreationTime() 返回SESSION创建时间
2 public String getId() 返回SESSION创建时JSP引擎为它设的惟一ID号
3 long getLastAccessedTime() 返回此SESSION里客户端最近一次请求时间
4 int getMaxInactiveInterval() 返回两次请求间隔多长时间此SESSION被取消(ms)
5 String[] getValueNames() 返回一个包含此SESSION中所有可用属性的数组
6 void invalidate() 取消SESSION,使SESSION不可用
7 boolean isNew() 返回服务器创建的一个SESSION,客户端是否已经加入
8 void removeValue(String name) 删除SESSION中指定的属性
9 void setMaxInactiveInterval() 设置两次请求间隔多长时间此SESSION被取消(ms)
session的创建时间:
session的Id号:
客户端最近一次请求时间:
两次请求间隔多长时间此SESSION被取消(ms):
是否是新创建的一个SESSION:
4.out对象
out对象是JspWriter类的实例,是向客户端输出内容常用的对象
序号 方 法 说 明
1 void clear() 清除缓冲区的内容
2 void clearBuffer() 清除缓冲区的当前内容
3 void flush() 清空流
4 int getBufferSize() 返回缓冲区以字节数的大小,如不设缓冲区则为0
5 int getRemaining() 返回缓冲区还剩余多少可用
6 boolean isAutoFlush() 返回缓冲区满时,是自动清空还是抛出异常
7 void close() 关闭输出流
缓存大小:
剩余缓存大小:
自动刷新:
5.page对象
page对象就是指向当前JSP页面本身,有点象类中的this指针,它是java.lang.Object类的实例
序号 方 法 说 明
1 class getClass 返回此Object的类
2 int hashCode() 返回此Object的hash码
3 boolean equals(Object obj) 判断此Object是否与指定的Object对象相等
4 void copy(Object obj) 把此Object拷贝到指定的Object对象中
5 Object clone() 克隆此Object对象
6 String toString() 把此Object对象转换成String类的对象
7 void notify() 唤醒一个等待的线程
8 void notifyAll() 唤醒所有等待的线程
9 void wait(int timeout) 使一个线程处于等待直到timeout结束或被唤醒
10 void wait() 使一个线程处于等待直到被唤醒
11 void enterMonitor() 对Object加锁
12 void exitMonitor() 对Object开锁
6.application对象
application对象实现了用户间数据的共享,可存放全局变量。它开始于服务器的启动,直到服务器的关闭,在此期间,此对象将一直存在;这样在用户的前后连接或不同用户之间的连接中,可以对此对象的同一属性进行操作;在任何地方对此对象属性的操作,都将影响到其他用户对此的访问。服务器的启动和关闭决定了application对象的生命。它是ServletContext类的实例。
序号 方 法 说 明
1 Object getAttribute(String name) 返回给定名的属性值
2 Enumeration getAttributeNames() 返回所有可用属性名的枚举
3 void setAttribute(String name,Object obj) 设定属性的属性值
4 void removeAttribute(String name) 删除一属性及其属性值
5 String getServerInfo() 返回JSP(SERVLET)引擎名及版本号
6 String getRealPath(String path) 返回一虚拟路径的真实路径
7 ServletContext getContext(String uripath) 返回指定WebApplication的application对象
8 int getMajorVersion() 返回服务器支持的Servlet API的最大版本号
9 int getMinorVersion() 返回服务器支持的Servlet API的最大版本号
10 String getMimeType(String file) 返回指定文件的MIME类型
11 URL getResource(String path) 返回指定资源(文件及目录)的URL路径
12 InputStream getResourceAsStream(String path) 返回指定资源的输入流
13 RequestDispatcher getRequestDispatcher(String uripath) 返回指定资源的RequestDispatcher对象
14 Servlet getServlet(String name) 返回指定名的Servlet
15 Enumeration getServlets() 返回所有Servlet的枚举
16 Enumeration getServletNames() 返回所有Servlet名的枚举
17 void log(String msg) 把指定消息写入Servlet的日志文件
18 void log(Exception exception,String msg) 把指定异常的栈轨迹及错误消息写入Servlet的日志文件
19 void log(String msg,Throwable throwable) 把栈轨迹及给出的Throwable异常的说明信息 写入Servlet的日志文件
7.exception对象
exception对象是一个例外对象,当一个页面在运行过程中发生了例外,就产生这个对象。如果一个JSP页面要应用此对象,就必须把isErrorPage设为true,否则无法编译。他实际上是java.lang.Throwable的对象
序号 方 法 说 明
1 String getMessage() 返回描述异常的消息
2 String toString() 返回关于异常的简短描述消息
3 void printStackTrace() 显示异常及其栈轨迹
4 Throwable FillInStackTrace() 重写异常的执行栈轨迹
8.pageContext对象
pageContext对象提供了对JSP页面内所有的对象及名字空间的访问,也就是说他可以访问到本页所在的SESSION,也可以取本页面所在的application的某一属性值,他相当于页面中所有功能的集大成者,它的本 类名也叫pageContext。
序号 方 法 说 明
1 JspWriter getOut() 返回当前客户端响应被使用的JspWriter流(out)
2 HttpSession getSession() 返回当前页中的HttpSession对象(session)
3 Object getPage() 返回当前页的Object对象(page)
4 ServletRequest getRequest() 返回当前页的ServletRequest对象(request)
5 ServletResponse getResponse() 返回当前页的ServletResponse对象(response)
6 Exception getException() 返回当前页的Exception对象(exception)
7 ServletConfig getServletConfig() 返回当前页的ServletConfig对象(config)
8 ServletContext getServletContext() 返回当前页的ServletContext对象(application)
9 void setAttribute(String name,Object attribute) 设置属性及属性值
10 void setAttribute(String name,Object obj,int scope) 在指定范围内设置属性及属性值
11 public Object getAttribute(String name) 取属性的值
12 Object getAttribute(String name,int scope) 在指定范围内取属性的值
13 public Object findAttribute(String name) 寻找一属性,返回起属性值或NULL
14 void removeAttribute(String name) 删除某属性
15 void removeAttribute(String name,int scope) 在指定范围删除某属性
16 int getAttributeScope(String name) 返回某属性的作用范围
17 Enumeration getAttributeNamesInScope(int scope) 返回指定范围内可用的属性名枚举
18 void release() 释放pageContext所占用的资源
19 void forward(String relativeUrlPath) 使当前页面重导到另一页面
20 void include(String relativeUrlPath) 在当前位置包含另一文件
9.config对象
config对象是在一个Servlet初始化时,JSP引擎向它传递信息用的,此信息包括Servlet初始化时所要用到的参数(通过属性名和属性值构成)以及服务器的有关信息(通过传递一个ServletContext对象)
序号 方 法 说 明
1 ServletContext getServletContext() 返回含有服务器相关信息的ServletContext对象
2 String getInitParameter(String name) 返回初始化参数的值
3 Enumeration getInitParameterNames() 返回Servlet初始化所需所有参数的枚举
一、Response对象
Response对象是HttpResponse类的一个实例。该类主要是封装来自ASP.NET操作的HTTP响应信息。
1.Response对象的属性
① BufferOutput
说明:获取或设置一个值,该值指示是否缓冲输出,并在完成处理整个页之后将其发送
属性值:如果缓冲了到客户端的输出,则为true;否则为false。默认为true
② Cache
说明:获取Web页的缓存策略(过期时间、保密性、变化子句)
属性值:包含有关当前响应的缓存策略信息的HttpCachePolicy对象
③ Charset
说明:获取或设置输出流的HTTP字符集
属性值:输出流的HTTP字符集
④ IsClientConnected
说明:获取一个值,通过该值指示客户端是否仍连接在服务器上
属性值:如果客户端当前仍在连接,则为true;否则为false
2.Response对象的方法
Response对象可以输出信息到客户端,包括直接发送信息给浏览器、重定向浏览器到另一个URL或设置cookie的值。ASP.NET中引用对象方法的语法是“对象名.方法名”。“方法”就是嵌入到对象定义中的程序代码,它定义对象怎样去处理信息。使用嵌入的方法,对象便知道如何去执行任务,而不用提供额外的指令。
① Write
说明:将指定的字符串或表达式的结果写到当前的HTTP输出
② End
说明:停止页面的执行并得到相应结果
③ Clear
说明:用来在不将缓存中的内容输出的前提下,清空当前页的缓存,仅当使用了缓存输出时,才可以利用Clear方法
④ Flush
说明:将缓存中的内容立即显示出来。该方法有一点和Clear方法一样,它在脚本前面没有将Buffer属性设置为True时会出错。和End方法不同的是,该方法调用后,该页面可继续执行
⑤ Redirect
说明:使浏览器立即重定向到程序指定的URL
二、Request对象
1.Request对象的属性
① QueryString
说明:获取 HTTP 查询字符串变量集合
属性值:NameValueCollection对象
② Path
说明:获取当前请求的虚拟路径
属性值:当前请求的虚拟路径
③ UserHostAddress
说明:获取远程客户端的 IP 主机地址
属性值:远程客户端的IP地址
④ Browser
说明:获取有关正在请求的客户端的浏览器功能的信息
属性值:HttpBrowserCapabilities对象
2.Request对象的方法
① BinaryRead
说明:执行对当前输入流进行指定字节数的二进制读取
②MapPath
说明:为当前请求将请求的URL中的虚拟路径映射到服务器上的物理路径
三、Application对象
Application对象是HttpApplicationState类的一个实例。
HttpApplicationState类的单个实例,将在客户端第一次从某个特定的ASP.NET应用程序虚拟目录中请求任何URL资源时创建。对于Web服务器上的每个ASP.NET应用程序,都要创建一个单独的实例。然后通过内部Application对象公开对每个实例的引用。Application对象使给定应用程序的所有用户之间共享信息,并且在服务器运行期间持久地保存数据。因为多个用户可以共享一个Application对象,所以必须要有Lock和Unlock方法,以确保多个用户无法同时改变某一属性。Application对象成员的生命周期止于关闭IIS或使用Clear方法清除。
1.Application对象的属性
① AllKeys
说明:获取HttpApplicationState集合中的访问键
属性值:HttpApplicationState对象名的字符串数组
② Count
说明:获取HttpApplicationState集合中的对象数
属性值:集合中的Item对象数。默认为0
2.Application对象的方法
① Add
说明:新增一个新的Application对象变量
② Clear
说明:清除全部的Application对象变量
③ Get
说明:使用索引关键字或变数名称得到变量值
④ GetKey
说明:使用索引关键字來获取变量名称
⑤ Lock
说明:锁定全部的Application变量
⑥ Remove/RemoveAll
说明:使用变量名称删除一个Application对象/删除全部的Application对象变量
⑦ Set
说明:使用变量名更新一个Application对象变量的內容
⑧ UnLock
说明:解除锁定的Application变量
四、Session对象
Session对象是HttpSessionState的一个实例。该类为当前用户会话提供信息,还提供对可用于存储信息的会话范围的缓存的访问,以及控制如何管理会话的方法。
Session的出现填补了HTTP协议的局限。HTTP协议工作过程是,用户发出请求,服务器端做出响应,这种用户端和服务器端之间的联系都是离散的,非连续的。在HTTP协议中没有什么能够允许服务器端来跟踪用户请求的。在服务器端完成响应用户的请求后,服务器端不能持续与该浏览器保持连接。从网站的观点上看,每一个新的请求都是单独存在的,因此,当用户在多个主页间转换时,就根本无法知道他的身份。
使用Session对象存储特定用户会话所需的信息。这样,当用户在应用程序的Web页之间跳转时,存储在Session对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。
当用户请求来自应用程序的Web页时,如果该用户还没有会话,则Web服务器将自动创建一个Session对象。当会话过期或被放弃后,服务器将中止该会话。
当用户第一次请求给定的应用程序中的aspx文件时,ASP.NET将生成一个SessionID。SessionID是由一个复杂算法生成的号码,它唯一标识每个用户会话。在新会话开始时,服务器将Session ID作为一个cookie存储在用户的Web浏览器中。
在将SessionID cookie存储于用户的浏览器之后,即使用户请求了另一个.aspx文件,或请求了运行在另一个应用程序中的.aspx文件,ASP.NET仍会重用该cookie跟踪会话。与此相似,如果用户故意放弃会话或让会话超时,然后再请求另一个.aspx文件,那么ASP.NET将以同一个cookie开始新的会话。只有当服务器管理员重新启动服务器,或用户重新启动Web浏览器时,此时存储在内存中的SessionID设置才被清除,用户将会获得新的SessionID cookie。
通过重用SessionID cookie,Web应用程序将发送给用户浏览器的cookie数量降为最低。另外,如果用户决定该Web应用程序不需要会话管理,就可以不让Web应用程序跟踪会话和向用户发送SessionID。
Session对象最常见的一个用法就是存储用户的首选项。例如,如果用户指明不喜欢查看图形,另外其还经常被用在鉴别客户身份的程序中。要注意的是,会话状态仅在支持cookie的浏览器中保留,如果客户关闭了cookies选项,Session也就不能发挥作用了。
ASP.NET的Sessions非常好用,能够利用Session对象来对Session全面控制,如果需要在一个用户的Session中存储信息,只需要简单地直接调用Session对象就可以了,下面就是个例子:
Session["Myname"]=Response.form("Username");
Session["Mycompany"]=Response.form("Usercompany");
应注意的是,Session对象是与特定用户相联系的。针对某一个用户赋值的Session对象是和其他用户的Session对象完全独立的,不会相互影响。换句话说,这里面针对每一个用户保存的信息是每一个用户自己独享的,不会产生共享情况。
很明显,对于不同的用户,Session对象的Myname变量和Mycompany变量各自是不同的,当每个人在网站的不同主页间浏览时,这种针对个人的变量会一直保留,这样作为身份认证是十分有效的。
1.Session对象的属性
① Count
说明:获取会话状态集合中Session对象的个数
属性值:Session对象的个数
② TimeOut
说明:获取或设置在会话状态提供程序终止会话之前各请求之间所允许的超时期限
属性值:超时期限(以分钟为单位)
③ SessionID
说明:获取用于标识会话的唯一会话ID
属性值:会话ID
2.Session对象的方法
① Add
说明:新增一个Session对象
② Clear
说明:清除会话状态中的所有值
③ Remove
说明:删除会话状态集合中的项
④ RemoveAll
说明:清除所有会话状态值
三、Server对象
Server对象是HttpServerUtility的一个实例。该对象提供对服务器上的方法和属性的访问。
1.Server对象的属性
① MachineName
说明:获取服务器的计算机名称
属性值:本地计算机的名称
② ScriptTimeout
说明:获取和设置请求超时
属性值:请求的超时设置(以秒计)
2.Server对象的方法
① CreateObject
说明:创建COM 对象的一个服务器实例
② CreateObjectFromClsid
说明:创建COM 对象的服务器实例,该对象由对象的类标识符(CLSID)标识
③ Execute
说明:使用另一页执行当前请求
④ Transfer
说明:终止当前页的执行,并为当前请求开始执行新页
⑤ HtmlDecode
说明:对已被编码以消除无效HTML字符的字符串进行解码
⑥ HtmlEncode
说明:对要在浏览器中显示的字符串进行编码
⑦ MapPath
说明:返回与Web服务器上的指定虚拟路径相对应的物理文件路径
⑧ UrlDecode
说明:对字符串进行解码,该字符串为了进行HTTP传输而进行编码并在URL中发送到服务器
⑨ UrlEncode
说明:编码字符串,以便通过URL从Web服务器到客户端进行可靠的HTTP传输
六、Cookie对象
Cookie 是一小段文本信息,伴随着用户请求和页面在Web服务器和浏览器之间传递。用户每次访问站点时,Web应用程序都可以读取Cookie包含的信息。
Cookie跟Session、Application类似,也是用来保存相关信息,但Cookie和其他对象的最大不同是,Cookie将信息保存在客户端,而Session和Application是保存在服务器端。也就是说,无论何时用户连接到服务器,Web站点都可以访问cookie信息。这样,既方便用户的使用,也方便了网站对用户的管理。
ASP.NET包含两个内部Cookie集合。通过HttpRequest的Cookies集合访问的集合包含通过Cookie标头从客户端传送到服务器的Cookie。通过HttpResponse的Cookies集合访问的集合包含一些新Cookie,这些Cookie在服务器上创建并以Set-Cookie标头的形式传输到客户端。
1.Cookie对象的属性
① Name
说明:获取或设置Cookie的名称
属性值:Cookie的名称
② Value
说明:获取或设置Cookie的Value
属性值:Cookie的Value
③ Expires
说明:获取或设置Cookie的过期日期和时间
属性值:作为DateTime实例的Cookie过期日期和时间
④ Version
说明:获取或设置此Cookie符合的HTTP状态维护版本
属性值:此Cookie符合的HTTP状态维护版本
2.Cookie对象的方法
① Add
说明:新增一个Cookie变量
② Clear
说明:清除Cookie集合内的变量
③ Get
说明:通过变量名或索引得到Cookie的变量值
④ GetKey
说明:以索引值来获取Cookie的变量名称
⑤ Remove
说明:通过Cookie变量名来删除Cookie变量
七、Cache(隐藏)对象:
对于每个应用程序域均创建该类的一个实例,并且只要对应的应用程序域保持活动,该实例便保持有效。有关此类实例的信息通过HttpContext对象的Cache属性或Page对象的Cache属性来提供。
1.Cache对象的属性
① Count
说明:获取存储在缓存中的项数。当监视应用程序性能或使用ASP.NET跟踪功能时,此属性可能非常有用
属性值:存储在缓存中的项数
② Item
说明:获取或设置指定键处的缓存项
属性值:表示缓存项的键的String对象
2.Cache对象的方法
① Add
说明:将指定项添加到 Cache 对象,该对象具有依赖项、过期和优先级策略,以及一个委托(可用于在从Cache 移除插入项时通知应用程序)
② Get
说明:从 Cache 对象检索指定项
③ Remove
说明:从应用程序的 Cache 对象移除指定项
④ Insert
说明:向Cache对象插入项。使用此方法的某一版本改写具有相同key参数的现有Cache项
引用
JSP共有以下9种基本内置组件(可与ASP的6种内部组件相对应):
request 用户端请求,此请求会包含来自GET/POST请求的参数
response 网页传回用户端的回应
pageContext 网页的属性是在这里管理
session 与请求有关的会话期
application servlet 正在执行的内容
out 用来传送回应的输出
config servlet的构架部件
page JSP网页本身
exception 针对错误网页,未捕捉的例外
request 用户端请求,此请求会包含来自GET/POST请求的参数
response 网页传回用户端的回应
pageContext 网页的属性是在这里管理
session 与请求有关的会话期
application servlet 正在执行的内容
out 用来传送回应的输出
config servlet的构架部件
page JSP网页本身
exception 针对错误网页,未捕捉的例外
1.request对象
客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。它是HttpServletRequest类的实例。
序号 方 法 说 明
1 object getAttribute(String name) 返回指定属性的属性值
2 Enumeration getAttributeNames() 返回所有可用属性名的枚举
3 String getCharacterEncoding() 返回字符编码方式
4 int getContentLength() 返回请求体的长度(以字节数)
5 String getContentType() 得到请求体的MIME类型
6 ServletInputStream getInputStream() 得到请求体中一行的二进制流
7 String getParameter(String name) 返回name指定参数的参数值
8 Enumeration getParameterNames() 返回可用参数名的枚举
9 String[] getParameterValues(String name) 返回包含参数name的所有值的数组
10 String getProtocol() 返回请求用的协议类型及版本号
11 String getScheme() 返回请求用的计划名,如:http.https及ftp等
12 String getServerName() 返回接受请求的服务器主机名
13 int getServerPort() 返回服务器接受此请求所用的端口号
14 BufferedReader getReader() 返回解码过了的请求体
15 String getRemoteAddr() 返回发送此请求的客户端IP地址
16 String getRemoteHost() 返回发送此请求的客户端主机名
17 void setAttribute(String key,Object obj) 设置属性的属性值
18 String getRealPath(String path) 返回一虚拟路径的真实路径
2.response对象
response对象包含了响应客户请求的有关信息,但在JSP中很少直接用到它。它是HttpServletResponse类的实例。
序号 方 法 说 明
1 String getCharacterEncoding() 返回响应用的是何种字符编码
2 ServletOutputStream getOutputStream() 返回响应的一个二进制输出流
3 PrintWriter getWriter() 返回可以向客户端输出字符的一个对象
4 void setContentLength(int len) 设置响应头长度
5 void setContentType(String type) 设置响应的MIME类型
6 sendRedirect(java.lang.String location) 重新定向客户端的请求
3.session对象
session对象指的是客户端与服务器的一次会话,从客户连到服务器的一个WebApplication开始,直到客户端与服务器断开连接为止。它是HttpSession类的实例.
序号 方 法 说 明
1 long getCreationTime() 返回SESSION创建时间
2 public String getId() 返回SESSION创建时JSP引擎为它设的惟一ID号
3 long getLastAccessedTime() 返回此SESSION里客户端最近一次请求时间
4 int getMaxInactiveInterval() 返回两次请求间隔多长时间此SESSION被取消(ms)
5 String[] getValueNames() 返回一个包含此SESSION中所有可用属性的数组
6 void invalidate() 取消SESSION,使SESSION不可用
7 boolean isNew() 返回服务器创建的一个SESSION,客户端是否已经加入
8 void removeValue(String name) 删除SESSION中指定的属性
9 void setMaxInactiveInterval() 设置两次请求间隔多长时间此SESSION被取消(ms)
session的创建时间:
session的Id号:
客户端最近一次请求时间:
两次请求间隔多长时间此SESSION被取消(ms):
是否是新创建的一个SESSION:
4.out对象
out对象是JspWriter类的实例,是向客户端输出内容常用的对象
序号 方 法 说 明
1 void clear() 清除缓冲区的内容
2 void clearBuffer() 清除缓冲区的当前内容
3 void flush() 清空流
4 int getBufferSize() 返回缓冲区以字节数的大小,如不设缓冲区则为0
5 int getRemaining() 返回缓冲区还剩余多少可用
6 boolean isAutoFlush() 返回缓冲区满时,是自动清空还是抛出异常
7 void close() 关闭输出流
缓存大小:
剩余缓存大小:
自动刷新:
5.page对象
page对象就是指向当前JSP页面本身,有点象类中的this指针,它是java.lang.Object类的实例
序号 方 法 说 明
1 class getClass 返回此Object的类
2 int hashCode() 返回此Object的hash码
3 boolean equals(Object obj) 判断此Object是否与指定的Object对象相等
4 void copy(Object obj) 把此Object拷贝到指定的Object对象中
5 Object clone() 克隆此Object对象
6 String toString() 把此Object对象转换成String类的对象
7 void notify() 唤醒一个等待的线程
8 void notifyAll() 唤醒所有等待的线程
9 void wait(int timeout) 使一个线程处于等待直到timeout结束或被唤醒
10 void wait() 使一个线程处于等待直到被唤醒
11 void enterMonitor() 对Object加锁
12 void exitMonitor() 对Object开锁
6.application对象
application对象实现了用户间数据的共享,可存放全局变量。它开始于服务器的启动,直到服务器的关闭,在此期间,此对象将一直存在;这样在用户的前后连接或不同用户之间的连接中,可以对此对象的同一属性进行操作;在任何地方对此对象属性的操作,都将影响到其他用户对此的访问。服务器的启动和关闭决定了application对象的生命。它是ServletContext类的实例。
序号 方 法 说 明
1 Object getAttribute(String name) 返回给定名的属性值
2 Enumeration getAttributeNames() 返回所有可用属性名的枚举
3 void setAttribute(String name,Object obj) 设定属性的属性值
4 void removeAttribute(String name) 删除一属性及其属性值
5 String getServerInfo() 返回JSP(SERVLET)引擎名及版本号
6 String getRealPath(String path) 返回一虚拟路径的真实路径
7 ServletContext getContext(String uripath) 返回指定WebApplication的application对象
8 int getMajorVersion() 返回服务器支持的Servlet API的最大版本号
9 int getMinorVersion() 返回服务器支持的Servlet API的最大版本号
10 String getMimeType(String file) 返回指定文件的MIME类型
11 URL getResource(String path) 返回指定资源(文件及目录)的URL路径
12 InputStream getResourceAsStream(String path) 返回指定资源的输入流
13 RequestDispatcher getRequestDispatcher(String uripath) 返回指定资源的RequestDispatcher对象
14 Servlet getServlet(String name) 返回指定名的Servlet
15 Enumeration getServlets() 返回所有Servlet的枚举
16 Enumeration getServletNames() 返回所有Servlet名的枚举
17 void log(String msg) 把指定消息写入Servlet的日志文件
18 void log(Exception exception,String msg) 把指定异常的栈轨迹及错误消息写入Servlet的日志文件
19 void log(String msg,Throwable throwable) 把栈轨迹及给出的Throwable异常的说明信息 写入Servlet的日志文件
7.exception对象
exception对象是一个例外对象,当一个页面在运行过程中发生了例外,就产生这个对象。如果一个JSP页面要应用此对象,就必须把isErrorPage设为true,否则无法编译。他实际上是java.lang.Throwable的对象
序号 方 法 说 明
1 String getMessage() 返回描述异常的消息
2 String toString() 返回关于异常的简短描述消息
3 void printStackTrace() 显示异常及其栈轨迹
4 Throwable FillInStackTrace() 重写异常的执行栈轨迹
8.pageContext对象
pageContext对象提供了对JSP页面内所有的对象及名字空间的访问,也就是说他可以访问到本页所在的SESSION,也可以取本页面所在的application的某一属性值,他相当于页面中所有功能的集大成者,它的本 类名也叫pageContext。
序号 方 法 说 明
1 JspWriter getOut() 返回当前客户端响应被使用的JspWriter流(out)
2 HttpSession getSession() 返回当前页中的HttpSession对象(session)
3 Object getPage() 返回当前页的Object对象(page)
4 ServletRequest getRequest() 返回当前页的ServletRequest对象(request)
5 ServletResponse getResponse() 返回当前页的ServletResponse对象(response)
6 Exception getException() 返回当前页的Exception对象(exception)
7 ServletConfig getServletConfig() 返回当前页的ServletConfig对象(config)
8 ServletContext getServletContext() 返回当前页的ServletContext对象(application)
9 void setAttribute(String name,Object attribute) 设置属性及属性值
10 void setAttribute(String name,Object obj,int scope) 在指定范围内设置属性及属性值
11 public Object getAttribute(String name) 取属性的值
12 Object getAttribute(String name,int scope) 在指定范围内取属性的值
13 public Object findAttribute(String name) 寻找一属性,返回起属性值或NULL
14 void removeAttribute(String name) 删除某属性
15 void removeAttribute(String name,int scope) 在指定范围删除某属性
16 int getAttributeScope(String name) 返回某属性的作用范围
17 Enumeration getAttributeNamesInScope(int scope) 返回指定范围内可用的属性名枚举
18 void release() 释放pageContext所占用的资源
19 void forward(String relativeUrlPath) 使当前页面重导到另一页面
20 void include(String relativeUrlPath) 在当前位置包含另一文件
9.config对象
config对象是在一个Servlet初始化时,JSP引擎向它传递信息用的,此信息包括Servlet初始化时所要用到的参数(通过属性名和属性值构成)以及服务器的有关信息(通过传递一个ServletContext对象)
序号 方 法 说 明
1 ServletContext getServletContext() 返回含有服务器相关信息的ServletContext对象
2 String getInitParameter(String name) 返回初始化参数的值
3 Enumeration getInitParameterNames() 返回Servlet初始化所需所有参数的枚举
引用
实用ASP.NET七大内置对象详解
ASP.NET的内置对象介绍
1.Response
2.Request
3.Server
4.Application
5.Session
6.Cooki
ASP.NET的内置对象介绍
1.Response
2.Request
3.Server
4.Application
5.Session
6.Cooki
一、Response对象
Response对象是HttpResponse类的一个实例。该类主要是封装来自ASP.NET操作的HTTP响应信息。
1.Response对象的属性
① BufferOutput
说明:获取或设置一个值,该值指示是否缓冲输出,并在完成处理整个页之后将其发送
属性值:如果缓冲了到客户端的输出,则为true;否则为false。默认为true
② Cache
说明:获取Web页的缓存策略(过期时间、保密性、变化子句)
属性值:包含有关当前响应的缓存策略信息的HttpCachePolicy对象
③ Charset
说明:获取或设置输出流的HTTP字符集
属性值:输出流的HTTP字符集
④ IsClientConnected
说明:获取一个值,通过该值指示客户端是否仍连接在服务器上
属性值:如果客户端当前仍在连接,则为true;否则为false
2.Response对象的方法
Response对象可以输出信息到客户端,包括直接发送信息给浏览器、重定向浏览器到另一个URL或设置cookie的值。ASP.NET中引用对象方法的语法是“对象名.方法名”。“方法”就是嵌入到对象定义中的程序代码,它定义对象怎样去处理信息。使用嵌入的方法,对象便知道如何去执行任务,而不用提供额外的指令。
① Write
说明:将指定的字符串或表达式的结果写到当前的HTTP输出
② End
说明:停止页面的执行并得到相应结果
③ Clear
说明:用来在不将缓存中的内容输出的前提下,清空当前页的缓存,仅当使用了缓存输出时,才可以利用Clear方法
④ Flush
说明:将缓存中的内容立即显示出来。该方法有一点和Clear方法一样,它在脚本前面没有将Buffer属性设置为True时会出错。和End方法不同的是,该方法调用后,该页面可继续执行
⑤ Redirect
说明:使浏览器立即重定向到程序指定的URL
二、Request对象
1.Request对象的属性
① QueryString
说明:获取 HTTP 查询字符串变量集合
属性值:NameValueCollection对象
② Path
说明:获取当前请求的虚拟路径
属性值:当前请求的虚拟路径
③ UserHostAddress
说明:获取远程客户端的 IP 主机地址
属性值:远程客户端的IP地址
④ Browser
说明:获取有关正在请求的客户端的浏览器功能的信息
属性值:HttpBrowserCapabilities对象
2.Request对象的方法
① BinaryRead
说明:执行对当前输入流进行指定字节数的二进制读取
②MapPath
说明:为当前请求将请求的URL中的虚拟路径映射到服务器上的物理路径
三、Application对象
Application对象是HttpApplicationState类的一个实例。
HttpApplicationState类的单个实例,将在客户端第一次从某个特定的ASP.NET应用程序虚拟目录中请求任何URL资源时创建。对于Web服务器上的每个ASP.NET应用程序,都要创建一个单独的实例。然后通过内部Application对象公开对每个实例的引用。Application对象使给定应用程序的所有用户之间共享信息,并且在服务器运行期间持久地保存数据。因为多个用户可以共享一个Application对象,所以必须要有Lock和Unlock方法,以确保多个用户无法同时改变某一属性。Application对象成员的生命周期止于关闭IIS或使用Clear方法清除。
1.Application对象的属性
① AllKeys
说明:获取HttpApplicationState集合中的访问键
属性值:HttpApplicationState对象名的字符串数组
② Count
说明:获取HttpApplicationState集合中的对象数
属性值:集合中的Item对象数。默认为0
2.Application对象的方法
① Add
说明:新增一个新的Application对象变量
② Clear
说明:清除全部的Application对象变量
③ Get
说明:使用索引关键字或变数名称得到变量值
④ GetKey
说明:使用索引关键字來获取变量名称
⑤ Lock
说明:锁定全部的Application变量
⑥ Remove/RemoveAll
说明:使用变量名称删除一个Application对象/删除全部的Application对象变量
⑦ Set
说明:使用变量名更新一个Application对象变量的內容
⑧ UnLock
说明:解除锁定的Application变量
四、Session对象
Session对象是HttpSessionState的一个实例。该类为当前用户会话提供信息,还提供对可用于存储信息的会话范围的缓存的访问,以及控制如何管理会话的方法。
Session的出现填补了HTTP协议的局限。HTTP协议工作过程是,用户发出请求,服务器端做出响应,这种用户端和服务器端之间的联系都是离散的,非连续的。在HTTP协议中没有什么能够允许服务器端来跟踪用户请求的。在服务器端完成响应用户的请求后,服务器端不能持续与该浏览器保持连接。从网站的观点上看,每一个新的请求都是单独存在的,因此,当用户在多个主页间转换时,就根本无法知道他的身份。
使用Session对象存储特定用户会话所需的信息。这样,当用户在应用程序的Web页之间跳转时,存储在Session对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。
当用户请求来自应用程序的Web页时,如果该用户还没有会话,则Web服务器将自动创建一个Session对象。当会话过期或被放弃后,服务器将中止该会话。
当用户第一次请求给定的应用程序中的aspx文件时,ASP.NET将生成一个SessionID。SessionID是由一个复杂算法生成的号码,它唯一标识每个用户会话。在新会话开始时,服务器将Session ID作为一个cookie存储在用户的Web浏览器中。
在将SessionID cookie存储于用户的浏览器之后,即使用户请求了另一个.aspx文件,或请求了运行在另一个应用程序中的.aspx文件,ASP.NET仍会重用该cookie跟踪会话。与此相似,如果用户故意放弃会话或让会话超时,然后再请求另一个.aspx文件,那么ASP.NET将以同一个cookie开始新的会话。只有当服务器管理员重新启动服务器,或用户重新启动Web浏览器时,此时存储在内存中的SessionID设置才被清除,用户将会获得新的SessionID cookie。
通过重用SessionID cookie,Web应用程序将发送给用户浏览器的cookie数量降为最低。另外,如果用户决定该Web应用程序不需要会话管理,就可以不让Web应用程序跟踪会话和向用户发送SessionID。
Session对象最常见的一个用法就是存储用户的首选项。例如,如果用户指明不喜欢查看图形,另外其还经常被用在鉴别客户身份的程序中。要注意的是,会话状态仅在支持cookie的浏览器中保留,如果客户关闭了cookies选项,Session也就不能发挥作用了。
ASP.NET的Sessions非常好用,能够利用Session对象来对Session全面控制,如果需要在一个用户的Session中存储信息,只需要简单地直接调用Session对象就可以了,下面就是个例子:
Session["Myname"]=Response.form("Username");
Session["Mycompany"]=Response.form("Usercompany");
应注意的是,Session对象是与特定用户相联系的。针对某一个用户赋值的Session对象是和其他用户的Session对象完全独立的,不会相互影响。换句话说,这里面针对每一个用户保存的信息是每一个用户自己独享的,不会产生共享情况。
很明显,对于不同的用户,Session对象的Myname变量和Mycompany变量各自是不同的,当每个人在网站的不同主页间浏览时,这种针对个人的变量会一直保留,这样作为身份认证是十分有效的。
1.Session对象的属性
① Count
说明:获取会话状态集合中Session对象的个数
属性值:Session对象的个数
② TimeOut
说明:获取或设置在会话状态提供程序终止会话之前各请求之间所允许的超时期限
属性值:超时期限(以分钟为单位)
③ SessionID
说明:获取用于标识会话的唯一会话ID
属性值:会话ID
2.Session对象的方法
① Add
说明:新增一个Session对象
② Clear
说明:清除会话状态中的所有值
③ Remove
说明:删除会话状态集合中的项
④ RemoveAll
说明:清除所有会话状态值
三、Server对象
Server对象是HttpServerUtility的一个实例。该对象提供对服务器上的方法和属性的访问。
1.Server对象的属性
① MachineName
说明:获取服务器的计算机名称
属性值:本地计算机的名称
② ScriptTimeout
说明:获取和设置请求超时
属性值:请求的超时设置(以秒计)
2.Server对象的方法
① CreateObject
说明:创建COM 对象的一个服务器实例
② CreateObjectFromClsid
说明:创建COM 对象的服务器实例,该对象由对象的类标识符(CLSID)标识
③ Execute
说明:使用另一页执行当前请求
④ Transfer
说明:终止当前页的执行,并为当前请求开始执行新页
⑤ HtmlDecode
说明:对已被编码以消除无效HTML字符的字符串进行解码
⑥ HtmlEncode
说明:对要在浏览器中显示的字符串进行编码
⑦ MapPath
说明:返回与Web服务器上的指定虚拟路径相对应的物理文件路径
⑧ UrlDecode
说明:对字符串进行解码,该字符串为了进行HTTP传输而进行编码并在URL中发送到服务器
⑨ UrlEncode
说明:编码字符串,以便通过URL从Web服务器到客户端进行可靠的HTTP传输
六、Cookie对象
Cookie 是一小段文本信息,伴随着用户请求和页面在Web服务器和浏览器之间传递。用户每次访问站点时,Web应用程序都可以读取Cookie包含的信息。
Cookie跟Session、Application类似,也是用来保存相关信息,但Cookie和其他对象的最大不同是,Cookie将信息保存在客户端,而Session和Application是保存在服务器端。也就是说,无论何时用户连接到服务器,Web站点都可以访问cookie信息。这样,既方便用户的使用,也方便了网站对用户的管理。
ASP.NET包含两个内部Cookie集合。通过HttpRequest的Cookies集合访问的集合包含通过Cookie标头从客户端传送到服务器的Cookie。通过HttpResponse的Cookies集合访问的集合包含一些新Cookie,这些Cookie在服务器上创建并以Set-Cookie标头的形式传输到客户端。
1.Cookie对象的属性
① Name
说明:获取或设置Cookie的名称
属性值:Cookie的名称
② Value
说明:获取或设置Cookie的Value
属性值:Cookie的Value
③ Expires
说明:获取或设置Cookie的过期日期和时间
属性值:作为DateTime实例的Cookie过期日期和时间
④ Version
说明:获取或设置此Cookie符合的HTTP状态维护版本
属性值:此Cookie符合的HTTP状态维护版本
2.Cookie对象的方法
① Add
说明:新增一个Cookie变量
② Clear
说明:清除Cookie集合内的变量
③ Get
说明:通过变量名或索引得到Cookie的变量值
④ GetKey
说明:以索引值来获取Cookie的变量名称
⑤ Remove
说明:通过Cookie变量名来删除Cookie变量
七、Cache(隐藏)对象:
对于每个应用程序域均创建该类的一个实例,并且只要对应的应用程序域保持活动,该实例便保持有效。有关此类实例的信息通过HttpContext对象的Cache属性或Page对象的Cache属性来提供。
1.Cache对象的属性
① Count
说明:获取存储在缓存中的项数。当监视应用程序性能或使用ASP.NET跟踪功能时,此属性可能非常有用
属性值:存储在缓存中的项数
② Item
说明:获取或设置指定键处的缓存项
属性值:表示缓存项的键的String对象
2.Cache对象的方法
① Add
说明:将指定项添加到 Cache 对象,该对象具有依赖项、过期和优先级策略,以及一个委托(可用于在从Cache 移除插入项时通知应用程序)
② Get
说明:从 Cache 对象检索指定项
③ Remove
说明:从应用程序的 Cache 对象移除指定项
④ Insert
说明:向Cache对象插入项。使用此方法的某一版本改写具有相同key参数的现有Cache项
发表评论
-
添加过滤器的配置方法
2010-08-23 08:25 759引用方法: 1、写个类实现Filter接口 实现3个方法: p ... -
如何使用fileupload工具来实现文件上传
2010-08-17 14:07 10091。需要两个夹包文件: commons-fileupload- ... -
jsp中a标签?传参,参数怎么获取页面当中文本框的值
2010-08-16 16:50 9494引用<input type="text&quo ... -
个人感觉这个DAO实例写的还可以吧??呵呵
2010-08-14 13:23 748package org.tarena.shopping.d ... -
Session技术的理解
2010-08-12 20:38 812引用3、Session技术 (1)什么是session ... -
cookie如何使用??
2010-08-12 13:53 10102、cookie技术 (1)什么是cookie? 是 ... -
浏览器cookie的学习与测试
2010-08-12 11:24 727生成cookie: package web; imp ... -
学web很容易迷惑的问题
2010-08-11 15:00 594get只有一个流,参数附 ... -
总结response/request/DoGet/DoPost
2010-08-11 14:49 1285引用1.Response [JSP] JSP中的隐藏对 ... -
servlet中service doGet doPost 的联系和区别
2010-08-11 14:44 1850在servlet中默认情况下,无论你是get还是post ... -
servlet处理表单的doGet和doPost
2010-08-11 14:37 962service() 是在javax.servlet.S ... -
在JSP页面及servlet的doGet()方法中处理汉字乱码的问题
2010-08-11 14:34 1994在doPost()方法中使用过滤器(所有编码方式为过滤器中设置 ... -
Servlet中doGet与doPost的区别
2010-08-11 14:31 1463Serlvet接口只定义了一个服务方法就是service,而H ... -
Servlet中doGet(),doPost(),service()函数的关系
2010-08-11 14:28 11031,三者之间的关系:doGet()和doPost()是由函数 ... -
对象的产生4种方法
2010-08-10 13:22 644引用 对象的产生到底有多少种方法了: · 直接用new关键字 ... -
servlet课堂笔记
2010-08-09 20:10 766引用 1、servlet的生命周 ... -
如何避免浏览器访问数据库出现乱码问题
2010-08-06 16:09 1051引用 mysql 创建 数据库时指定编码很重要,很多开发者都使 ... -
get/post提交怎么判别如何使用
2010-08-05 19:39 2493引用 get/post方式: get方式: ... -
手动生成servlet的一个实例方法
2010-08-05 17:01 903引用 Servlet 1、什么是S ... -
html简介及用法总结
2010-06-26 17:31 1522WWW基本概念 www的全称为World Wide Web,即 ...
相关推荐
JSP内置对象有些成员变量不用声明就可以在JSP页面的脚本(Java程序片和Java表达式)中使用,这就是所谓的内置对象。
说明:有几种对象看起来和ASP的内置对象差不多,功能也类似,这是因为这些内置对象的构建基础是标准化的HTTP协议。从本质上讲,JSP的这些内置对象其实都是由特定的Java类所产生的,在服务器运行时根据情况自动生成。
### ASP.NET内置对象详解 #### 一、概述 在ASP.NET开发中,为了方便开发者进行Web应用程序的构建,提供了一系列内置对象。这些内置对象能够帮助开发者更好地管理客户端请求、会话状态以及应用级别的数据共享等关键...
在ASP.NET中,内置对象是框架提供的一组预定义的对象,可以直接在页面生命周期中使用,无需显式实例化。这些对象极大地简化了开发过程,并提供了对应用程序环境、请求、响应、会话、缓存等核心功能的直接访问。在...
在这篇文章中,我们将比较Java和C#这两种编程语言,并对比JSP和ASP.NET这两种技术栈的优缺点。 Java vs C# Java和C#都是面向对象的编程语言,它们都继承了面向对象编程的优点。Java是Sun Microsystems开发的,而C#...
"03 ASP内置对象Object.ppt"可能涉及ASP的内置对象,如Request、Response、Session、Application等,这些对象在处理用户请求、响应数据和管理会话状态时非常关键。而"08 ASP.NET服务器控件.ppt"则可能介绍ASP.NET中...
- ASP的内置对象(如Request、Response、Session等)在JSP中需通过Servlet API来实现,如`HttpServletRequest`、`HttpServletResponse`和`HttpSession`。 - ASP中的服务器端控件需要转换为HTML元素,并可能需要...
2. **JSP基础**:JSP的生命周期,包括编译、初始化、服务和销毁四个阶段,以及JSP的内置对象如Page、Request、Response、Session等。 3. **JSP与Servlet的关系**:JSP最终会被转换为Servlet,理解JSP到Servlet的...
ASP提供了许多内置对象,如Request、Response、Session和Application,用于处理HTTP请求、发送响应、管理用户会话以及共享数据。 综合上述技术,"ASP基于WEB的产品管理系统"可能是一个支持多种编程语言的项目,旨在...
jsp内置对象,是指可以不加声明和创建就可以在JSP页面脚本(Java程序片和Java表达式)中使用的成员变量。JSP共有以下9种基本内置组件(可与ASP的6种内部组件相对应)
在JSP中,可以使用相同的对象,因为它是浏览器内置的,与服务器端技术无关。 2. **JavaScript**:用于处理用户交互、创建和控制XMLHttpRequest对象,以及处理服务器返回的数据。在示例中,JavaScript代码会监听用户...
ASP通过内置的对象如Request、Response和Session等来处理用户请求和响应。 这两个系统都旨在为用户提供便捷的在线购书体验,但技术实现上有所不同。JSP系统利用Java的强类型和面向对象特性,适合大型复杂应用;而...
本源码包包含适用于多种Web开发技术的在线客服解决方案,包括ASP、ASP.NET、JSP和PHP,这使得无论你的网站基于哪种语言构建,都能轻松集成。 ASP(Active Server Pages)是一种微软开发的服务器端脚本环境,用于...
Perl、PHP、ASP和JSP是四种常见的动态网页开发技术,每种都有其特点和适用场景。以下是对这些技术的详细比较: Perl,全称Practical Extraction and Report Language,最初广泛用于Web应用开发,因其类似C语言的...
ASP提供了一系列内置对象,如Request(获取用户输入)、Response(发送数据给客户端)等,简化了Web开发流程。随着.NET框架的推出,ASP已逐渐被ASP.NET所取代。 **JSP (JavaServer Pages)** JSP是Sun Microsystems...
1. **ASP技术**:包括ASP的定义、工作流程、脚本语言(如VBScript或JScript)、内置对象(如Request、Response、Session、Application等)、ASP与数据库的交互(如ADO对象)以及其在实际项目中的应用示例。...
ASP的主要组件包括脚本引擎、ASP对象模型(如Request、Response、Session和Application)以及COM(Component Object Model)组件。尽管现代Web开发中ASP已逐渐被ASP.NET取代,但在一些老系统中仍然广泛使用。 【PHP...
在**JSP实用教程第三版**中,作者们系统地介绍了JSP的基础知识、核心概念和技术,包括JSP语法、JSP指令、内置对象、表达式语言(EL)、JSTL(JavaServer Pages Standard Tag Library)、Servlet以及MVC设计模式等。...