网站首页 > 技术文章 正文
一:内置对象的出现原因
当JSP页面被请求是, JSP会被Web转换成_jspServlet(实质上就是:Servlet), 然后按照Servlet的调用方式进行调用
因为有了这个转换过程,所以动态页面被访问时,第一次会比较慢, 但是在以后被打开是会比较快, 因为JSP文件已经被转化过,不需要再次转换,
在转化的过程中自动生成创建且生成9个对象来供_jspServlet使用.
二:九个内置对象详解
- out
- request
- response
- session
- pageContext
- application
- config
- pageex
- ception
其中out request response session 是比较常用的,
其中有四个作用域,就是这个对象的生命周期, request、session、application、page
三:内置对象详解
1:out
类型:Javax.servlet.jsp.JspWriter
作用;主要用于向客户端输出数据
作用域:page 及每个页面都有自己的out对象
out中的重要方法:print()/println()/write() 向客户端输送数据
可以这样理解,一个Jsp文件编译之后就是一个类,而out就对应一个页面对象。
2:request
类型:Javax.servlet.http.HttpServletRequest
描述:来自客户端的请求经Servlet容器处理后,由request对象进行封装。(客户端和服务器的一次通信就是一次请求(发送请求或得到相应)。
作用域:request。 这次请求结束后,它的生命周期 就结束了。
重要方法:
getParameter(key) 获取提交表单的数据
getParameterValues(key) 获取提交表单的一组数据
request.getRequestDispatcher("list.jsp").forward(request,response) 转发(通过代码的方式进行转发)
request.setAttribute(key,object) 设置请求对象的属性
request.gettAttribute(key) 获取请求对象的属性
request.setCharacterEncoding("UTF-8") 对请求数据重新编码
3:resonpse
类型:Javax.servlet.http. HttpServletResponse
描述:它封闭了JSP 的响应,然后被发送到客户端以响应客户的请求。
作用域:page
方法:
response.sendRedirect("页面"):页面跳转。
response.setCharacterEncoding("gbk"):设置响应编码
4:session
类型:Javax.servlet.http.HttpSession
描述:表示一个会话,用来保存用户信息,以便跟踪每个用户的状态。
定义:是指在一段时间内客户端和服务器之间的一连串的相关的交互过程。
作用域:session。
客户端与服务器之间可能需要不断地进行数据交互(请求与相应),这个过程就可以理解为一段回话。Tomcat默认的会话时间为30分钟,这段时间内如果没有交互,会话结束;下次客户端一旦发送请求,重新创建会话。当客户端第一次发送请求的时候,才会创建一个会话。session的生命周期比request长
会话结束的条件的条件:服务器关闭 会话过期 手动终止 (满足一个即可)
方法:
session.getid():取得session的id号.id由tomcat自动分配。
session.isnew():判断session时候是新建的
session.setAttribute(key,object):往当前会话中设置一个属性
session.getAttribute(key):获取当前会话中的一个属性
session.removeAttribute(key):删除当前会话中的属性
session.setMaxInactiveInterval(1000*60*30):设置当前会话失效时间(ms) 。Tomcat默认的会话时间为30分钟。
session.invalidate():初始化当前会话对象(一般在推出的时候使用,可以删除当前会话的数据)
5.pageContext
类型:javax.servlet.jsp.PageContext
描述:本JSP的页面上下文。(上下文可以联系到当前页面所有的信息。)
作用域:page
6:config
类型:javax.servlet.ServletConfig
描述:本JSP的 ServletConfig
作用域:page
7:page
类型:java.1ang.Object
描述:实现处理本页当前请求的类的实例(javax.servlet.jsp.HttpJspPage),转换后的Servlet类本身
作用域:page
8:exception
类型:java.lang.Exception
描述:本JSP页面的异常对象
作用域:page
9:application
类型:javax.servlet.ServletContext
描述:从servlet配置对象获得的servlet上下文
作用域:application
这个对象的生命周期是最长的。服务器启动的时候就会创建application对象。从服务器存在到服务器终止,都一直存在,且只保留一个对象,所有用户共享一个application。
猜你喜欢
- 2024-10-10 SpringBoot整合Grpc实现跨语言RPC通讯
- 2024-10-10 RequestMapping属性详解 - SpringMVC高手进阶
- 2024-10-10 《Servlet》第22节:获取ServletContext上下文对象的四种方式
- 2024-10-10 阿里Java二面:说说Spring MVC执行流程及原理?这样聊能吊打面试官
- 2024-10-10 Springboot——用更优雅的方式发HTTP请求(RestTemplate详解)
- 2024-10-10 JavaServlet生命周期、HttpServletRequest和HttpServletResponse
- 2024-10-10 关于RESTful一些注意事项和自己整理的接口开发规范
- 2024-10-10 java版gRPC实战之二:服务发布和调用
- 2024-10-10 Servlet 点击计数器 点击计数在线
- 2024-10-10 Java开发架构篇:初识领域驱动设计DDD落地
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- oraclesql优化 (66)
- 类的加载机制 (75)
- feignclient (62)
- 一致性hash算法 (71)
- dockfile (66)
- 锁机制 (57)
- javaresponse (60)
- 查看hive版本 (59)
- phpworkerman (57)
- spark算子 (58)
- vue双向绑定的原理 (68)
- springbootget请求 (58)
- docker网络三种模式 (67)
- spring控制反转 (71)
- data:image/jpeg (69)
- base64 (69)
- java分页 (64)
- kibanadocker (60)
- qabstracttablemodel (62)
- java生成pdf文件 (69)
- deletelater (62)
- com.aspose.words (58)
- android.mk (62)
- qopengl (73)
- epoch_millis (61)
本文暂时没有评论,来添加一个吧(●'◡'●)