JSP内置对象及其应用场合
来源:互联网 发布:在哪里注册开淘宝店 编辑:程序博客网 时间:2024/05/22 23:59
JSP提供了9个内置对象用于开发。
- request请求对象
- response响应对象
- session会话对象
- 应用application对象
- out输出对象
- 应答与请求的page对象
- 获取web.xml配置信息的config对象
- 获取异常信息exception对象
- 页面上下文的pageContext对象
request.getRequestDispatcher("index.jsp").forward(request,response);//请求转发(客户端行为) 转发后对象会保存 URL地址不会改变response.sendRedirect("index.jsp");//请求重定向 (服务端行为) 前一次请求对象不会保存 地址栏会改变 本质上等同于两次请求
request请求对象
request对象封装了客户端提交的HTTP请求信息,适用于处理客户端提交的信息,在开发web应用时经常用到request对象获取请求参数的值和获取cookie数据等。
<%--发送一个请求到deletePage.jsp页面并传递一个名为"id"的参数。 --%><a href="deletePage.jsp?id=123"></a><%--在deletePage.jsp可以通过request对象的getParameter方法获取传递的参数值--%><% String id=request.getParameter("id");%>
解决中文乱码的问题
//获取访问请求参数时的乱码 String name=new String(request.getParameter("username").getBytes("iso-8859-1"),"UTF-8"); //获取表单提交的信息乱码 在获取表单信息前加上:request.setCharacterEncoding("utf-8"); String name=request.getParameter("username"); String pass=request.getParameter("password");
一、获取客户机环境信息常见方法:1.getRequestURL方法 获得客户端发出请求时的完整URL。2.getRequestURI方法 获得请求行中的资源名部分,即不包含参数。3.getQueryString方法 获得请求行的参数部分。4.getRemoteAddr方法 获得发出请求的客户机的IP地址。5.getRemoteHost方法 获得发出请求的客户机的完整主机名。6.getRemotePort方法 获得客户机所使用的网络端口号。7.getLocalAddr方法 获得WEB服务器的IP地址。8.getLocalName方法 获得WEB服务器的主机名。9.getMethod方法 获得客户机请求方式。二、获得客户机请求头:1.getHeader(String name)方法 获得http协议定义的文件头信息2.getHeaders(String name)方法 返回指定名称的request Header的所有值,结果是一个枚举型的实例3.getHeaderNames()方法 返回指所有的request Header的名称,结果是一个枚举型的实例
应用request对象域
request可视为一个域,可以应用setAttribute()方法在域范围内存放数据。
//name:转发后的页面获取数据时通过这个变量名来获取数据。 //object:指定要在request范围内传递的数据,为object类型。 request.setAttribute(string name,Object object); //在request范围内通过getAttribute()方法获取变量值 request.getAttribute("name");
response响应对象
- 操作HTTP头信息
//通过response对象可以设置HTTP响应报头,其中常用的是设置相应的内容类型、禁用缓存、设置页面自动刷新和定时跳转 //(1)禁用缓存 response.setHeader("Cache-Control","no-store"); response.setDateHeader("Expires",0); //(2)设置页面自动刷新 response.setHeader("refresh","10"); //(3)定时跳转网页 response.setHeader("refresh","5;URL=Login.jsp");
- 设置MIME类型
//默认情况下,jsp页面采用的内容类型是:text/html,即HTML或文本数据,可通过setContentType更改response.setContentType(String type);//type 可以是:text/html text/plain application/x_msecel 和 application/msword
- 实现页面重定向
执行重定向后request的属性全部失效,并开始一个新的request对象
response.sendRedirect(String newPath); //newPath可以是目标路径、相对路径也可以是不同主机的其他URL地址
out输出对象
- 向客户端浏览器输出信息
out.print(); out.println();
- 管理缓冲区
out.clear(); 清除缓冲区的内容 out.clearBuffer(); 清除当前缓冲区的内容 out.isAutoFlush(); 检测当前缓冲区已满时是自动清除,还是抛出异常 out.flush(); 刷新流 out.getBufferSize();获取缓冲区的大小
Session会话对象
session作用于同一浏览器中,在各个页面共享数据,如果一个会话在长时间不向服务器发出请求,session对象就会消失,这个时间取决于服务器。
//创建和获取会话 session.setAttribute(String s,Object object); session.getAttribute(String s); //移除会话中的数据 session.removeAttribute(string s); //设置会话有效时间 session.setMaxInactiveInterval(3600); //销毁session session.invalidate();
应用application对象
用于保存应用程序中的公共数据,与session对象相比,生命周期更长,类似系统的全局变量。
在服务器启动时自动创建,在服务器停止时销毁。
主要用于保存,读取或移除应用程序环境变量,如网站的访问次数和微信聊天信息。
application.setAttribute(string s,Object o); //保存数据application.getAttribute(String s); //获取指定的application对象application.getAttributeNames(); //获取所有的application对象application.removeAttribute(String s); //移除指定名称的属性
配置web应用的初始化参数:在web.xml文件中设置。
// application访问应用程序初始化参数的方法 application.getInitParameter(String s); application.getAttributeNames();
application实现网页计数器
<% //获取application中存放的visitCount值 Integer visitCount=(Integer)application.getAttribute("visitCount"); //判断visitCount是否为空 if(visitCount==null){ visitCount=1; }else{ visitCount++; } //将visitCount保存到application中 application.setAttribute("visitCount",visitCount); %> 您是第【<%=visitCount%>】位访客!
应答与请求的Page对象
page对象是包含当前servlet接口引用的变量,可以看做是this的关键字的别名。
//page对象的常用方法 page.getClass(); //返回当前object对象 page.hashCode(); //返回该object的哈希代码 page.toString(); //将该object类转化为字符串 page.equals(Object object);//比较当前对象与制定对象是否相等
页面上下文的pageContext对象
pageContext是一个很特殊的对象,通过他可以获取JSP页面的request、response、session、application、exception等对象。该对象的创建和初始化由容器完成,在JSP页面中可以直接使用pageContext对象。
pageContext.removeAttribute(string s);//删除指定范围内的制定属性 pageContext.setAttribute(string s,Object o);//为指定范围内的属性设置属性值 //pageContext.getApplication;//返回Application对象 pageContext.getOut();//返回out对象 pageContext.getSession();//返回Session对象 pageContext.getResponse();//返回getResponse对象 pageContext.getRequest();//返回Request对象 pageContext.forward(string s);//把页面转发到另一个页面 pageContext.getAttribute(string s);//获取参数值 pageContext.getAttributeNamesInScope(int scope);//获取某范围的参数名称的集合,返回值为java.util.Enumeration对象; pageContext.getException(); //返回Exception对象
获取web.xml配置信息的config对象
config对象主要用于获得服务器的配置信息,通过pageContext对象的getServletConfig()方法可以获取一个Config对象。
当初始化一个servlet时,容器把某些信息通过config对象传递给这个servlet。
开发人员可以在web.xml文件中为应用程序环境中的servlet程序和JSP页面提供初始化参数。
config.getServletContext();//获取Servlet上下文config.getServletName();//获取Servlet服务器名config.getInitParameter(stirng s);//获取服务器所有初始化参数名称 返回值为java.util.Enumeration对象;config.getInitParameterNames();//获取服务器中name参数的初始值
获取异常信息exception对象
exception对象用来处理JSP文件执行时发生的所有错误和异常,只有在page指令中设置isErrorPage属性值为TURE的页面才可以使用,在一般的页面中使用无法编译JSP文件。
exception.getMessage(); //返回exception对象的异常信息字符串 exception.getLocalizedmessage();//返回本地化的异常错误 exception.toString();//返回关于异常错误的简单信息描述 exception.fillInstackTrace();//重写异常错误的栈执行轨迹
- JSP内置对象及其应用场合
- JSP九大内置对象及其应用
- jsp的九大内置对象的简介及其应用
- JSP内置对象及其作用
- JSP内置对象及其方法
- jsp 内置对象及其方法
- JSP内置对象及其作用
- jsp内置对象及其方法
- jsp内置对象及其方法
- JSP九种内置对象及其作用
- jsp 内置对象及其方法说明
- jsp 常用的内置对象及其方法
- JSP的内置对象及其用法
- jsp九大内置对象及其用法
- JSP - 9大内置对象及其API
- jsp九大内置对象及其作用?
- JSP - 9大内置对象及其API
- jsp常用内置对象及其使用范围
- 用 Python 进行数据分析,不懂 Python,求合适的 Python 书籍或资料推荐?
- AFNetworking 3.0 版本使用
- Nginx处理HTTP请求的路由过程
- cocos2d-x 3.x学习之拖动滑块类
- 数组指针和指针数组的区别
- JSP内置对象及其应用场合
- 在一个应用程序,如何监测一个service内部的数据的变化
- 第15周 啊哈算法 链表:用指针链表和数组模拟链表
- python学习——使用dict和set
- MapReduce2.0
- 105---oracle的 函数,转换函数, 分析函数, 表空间,系统用户, 权限和角色, 序列, 同义词, 索引,表分区,,,
- sql server高效分页
- 【android学习笔记】读取SD卡
- Android 中 Activity的生命周期 和 Log输出