JSP九大内置对象:

a、JSP内置对象是Web容器创建的一组对象,【不使用new关键字】就可以使用的内置对象。例如:out

b、JSP九大内置对象:

五大常用对象:   out,request,response,session,application

其余四大对象:   Page,pageContext,exception,config

1.out内置对象:

2.request内置对象,常用方法如下:

request 对象是 javax.servlet.httpServletRequest类型的对象。 该对象代表了客户端的请求信息,

主要用于接受通过HTTP协议传送到服务器的数据。(包括头信息、系统信息、请求方式以及请求参数等)。

request对象的作用域为一次请求。

a.  //解决中文乱码,但不能解决URL传递中文出现的乱码

【测试url传参数】

其解决方法为:在server.xml中修改Connector,在里面添加:URIEncoding="utf-8"

b.  String getParameter(String xxx) 返回xxx指定参数的参数值

c.  String[] getParameterValues(String xxx) 返回包含参数xxx的所有值的数组

d.  void setAttribute(String,Object);存储此请求中的属性

e.  int getServerPort();//返回服务器接受此请求所用的端口号

f.  String getCharacterEncoding();//返回字符编码方式

g.  void setCharacterEncodinng();//设置请求的字符编码方式

h.  int getContentLength();//返回请求体的长途(以字节数)

i.  String getRemoteAddr();//返回发送此请求的客户端IP地址

j.  String getRealPath(String path);//返回虚拟路径的真实路径

k.  String request.getContextPath();//返回上下文路径

3.response内置对象

response 代表的是对客户端的响应,它是HttpServletResponse类的实例。

主要是将JSP容器处理过的对象传回到客户端。response对象也具有作用域,它只在JSP页面内有效。

response对象具有页面作用域,即访问一个页面时,该页面内的response对象只能对这次访问有效,其它页面的response对象对当前页面无效。

常用方法如下:

a. String getCharacterEncoding();返回响应用是何种字符编码

b. void setContentType(String type);设置响应的MIME类型

c. PrintWriter getWriter();返回可以向客户端输出字符的一个对象

d. response.sendRedirect("xxx.jsp"); 请求客户端重定向:如定向到xxx.jsp页面

注意:通过response.getWriter()获取的PrintWriter对象,在打印输出时【提前】于内置的out对象。

不过在写好out.println()之后,可以通过flush()方法将缓冲区内容强制写出,这样就会把文字在前面显示。

4.session内置对象(存在服务器内存中):

什么是session:HttpSession类的实例,从一个客户打开浏览器并连接到服务器开始,到客户关闭浏览器离开这个服务器结束,被称为一个会话。

当一个客户访问一个服务器时,可能会在这个服务器的几个页面之间反复连接,反复刷新一个页面,

服务器应当通过某种办法知道这是同一个客户,这就需要session对象。

session对象的ID:当一个客户首次访问服务器上的一个JSP页面时,JSP引擎产生一个session对象,同时分配一个String类型的ID号,

JSP引擎同时将这个ID号发送到客户端,存放在Cookie中,这样session对象和客户之间就建立了一一对应的关系。

当客户再访问连接该服务器的其他页面时,不再分配给客户新的session对象,

直到客户关闭浏览器后,服务器端该客户的session对象才取消,并且和客户的会话对应关系消失。

当客户重新打开浏览器再连接到该服务器时,服务器为该客户再创建一个新的session对象。

session对象存在一定时间过期问题,所以存在session中的名值对会在一定时间后失去,可以通过更改session有效时间来避免这种情况。

同时编程时尽量避免将大量有效信息存储在session中,request是一个不错的替代对象。

session内置对象常用方法:

a.long getCreationTime();//返回session创建时间

b.public String getId();//返回session创建时JSP引擎为它设的唯一ID号

c.public Object setAttribute(String name,Object value);//使用指定名称将对象绑定到此会话

d.public Object getAttribute(String name);//返回此会话中的指定名称绑定在一起的对象,如果没有对象绑定在该名称下,则返回null

e.String[] getVauleNames();//返回一个包含session中所有可用属性的数组

f.int getMaxInactiveInterval();//返回两次请求间隔多长时间此session被取消(单位秒)

session生命周期:分为三步,一:创建 二:活动 三:销毁

一.创建session的过程其实就是上文中介绍sessionID的过程。

二. 活动:

①某次会话当中通过超链接打开的新页面属于同一次会话

②只要当前会话页面没有全部关闭,重新打开的浏览器窗口访问同一个项目资源时属于同一次会话

③除非本次会话的所有页面都关闭后在重新访问某个JSP或者servlet将会创建新的会话

注意:注意此时原有会话还存在,只是这个旧的Session仍然存在于服务端,只不过再也没有客户端会携带它然后交给服务端校验

三. 销毁:session的销毁只有三种方式

①调用session.invalidate()方法

②Session过期(超时),Tomcat默认设置时间为30分钟,可以通过session.setMaxInactiveInterval(时间);单位是秒,来设置session的时长。

③服务器重新启动

在web.xml文件中配置超时会话销毁也可以

1

5.Application内置对象

a、实现了用户间数据的共享,可存放全局变量。(类似静态对象)

b、开始于服务器启动,终止于服务器的关闭(生命周期)

c、在用户的前后连接或不同用户之间的连接中,可以对application对象的同一属性进行操作

d、在任何地方对application对象属性进行操作,都将影响到其他用户对此的访问

e、application对象是ServletContext类的实例

Application对象常用方法:

a.pblic void setAttribute(String name,Object value);使用指定名称将对象绑定到此会话

b.public Object getAttribute(String name);返回与此会话中的指定名称绑定在一起的对象,如果没有对象绑定在该名称下,则返回null.

c.Enumeration getAttributeNames();返回所有可用属性那个名的枚举

d.String getServerInfo();返回JSP(SERVER)引擎及版本号6:page内置对象

page对象就是指向当前JSP页面本身,有点像类中的this指针,它是java.lang.Object类的实例。常用方法如下:

a. class getClass();//返回此Object类

b. int hashCode();//返回此Object的hash码

c. boolean equals(Object obj);//判断此Object是否与指定的Object对象相等

d. void copy(Object obj);//把此Object复制到指定的Object对象中

e. Object clone();//克隆此Object对象

f. String toString();//把此Object对象转换为String类的对象

g. void notify();//唤醒一个等待的线程

h. void notyfyAll();//唤醒所有等待的线程

i. void wait(int timeout);//使一个线程处于等待直到timeout结束或被唤醒

j. void wait();//使一个线程处于等待直到被唤醒

7.pageContext内置对象

* pageContext对象提供了对JSP页面内所有的对象及名字空间的访问

* pageContext对象可以访问到本页所在的session,也可以本页所在的application的某一属性值

* pageContext对象相当于页面中所有功能的集大成者

* pageContext对象的本类名也叫pageContext

*JspWriter getOut(); 返回当前客户端响应被使用的JspWriter流(out)

*HttpSessiongetSession(); 返回当前页面中HttpSession对象(session)

*ObjectgetPage(); 返回当前页面的Object对象(Object)

*ServeletRequestgetRequest(); 返回当前页面的ServletRequest对象(request)

*ServeletResponse getResponse(); 返回当前页面的ServletResponse对象(response)

*void setAttribute(String name,Object attribute); 设置属性及属性值

*void getAttribute(String name,int scope); 在指定范围内取属性的值

*int getAttributeScope(String name); 返回某属性的作用范围

*void forward(String relativeUrlPath); 使当前页面重导到另一页面

*void include(String relativeUrlPath); 在当前位置包含另一文件

8.config内置对象

config对象是在一个servlet初始化时,JSP引擎向它传递信息用的,

此信息包括Servlet初始化时所要用到的参数(通过属性名和属性值构成)以及服务器的有关信息(通过传递一个ServletContext对象)

常用方法:

a.ServletContext getServletContext();返回含有服务器相关信息的ServletContext对象

b.String getInitParameter(String name);返回初始化参数的值

c.Enumeration getInitParameterNames();返回Servlet初始化所需所有参数的枚举

9.Execption对象

exception对象是一个异常对象,当一个页面在运行过程中规发生了异常,就会产生这个对象。

如果一个JSP页面要应用此对象,就必须把isErrorPage设为true,否则无法编译。

实际上是java.lang.Throwable的对象,常用方法如下:

a. String getMessage();返回描述异常的消息

b. String toString();返回关于异常的简短描述消息

c. void printStackTrace();显示异常及其栈轨迹

d. Throwable FillInStackTrace();重写异常的执行栈轨迹

使用方法:

a. 在可能会抛出异常的页面page指令里,设置errorPage="xxx.jsp",表示出现异常将抛给xxx页面去处理

b. 在xxx页面里,要使用Exception对象,需要把page指令里的isErrorPage属性设置为true。

java pages_Java Server Pages 内置对象相关推荐

  1. jsp 将页面中的值导入java中_JavaWeb - JSP:概述和语法,内置对象,JavaBean 组件,MVC 设计模式

    JSP 的概述 概念 JSP 是 Java Server Pages 的简称,跟 Servlet 一样可以动态生成 HTML 响应, JSP 文件命名为 xxx.jsp. 与 Servlet 不同,J ...

  2. java遇上html,JAVA遇见HTML——JSP篇:JSP内置对象(上)

    JSP九大内置对象 JSP内置对象是Web容器创建的一组对象,不使用new关键就可以使用的内置对象. int[] value={60,70,80}; for(int i:value){ out.pri ...

  3. java自定义变量解析,Thymeleaf内置对象、定义变量、URL参数及标签自定义属性

    如标题所述,这篇文章主要讲述Thymeleaf中的内置对象(list解析.日期格式化.数字格式化等).定义变量.获取URL的参数和在页面标签中自定义属性的应用. 如果对Thymeleaf的基本使用.m ...

  4. Java Web学习总结(16)——JSP的九个内置对象

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

  5. Selenium Webdriver 的使用java执行js代码 解决 ScriptEngine不支持浏览器内置对象window,document的问题

    问题场景: 使用java 掉用js代码,发现 ScriptEngine不支持浏览器内置对象window,document的问题: 问题一:为什么要 用java掉用js代码? 比如在 抓取(爬取)对方网 ...

  6. JAVA Web入门之JSP内置对象的解析及使用(超详细必看)

    创作不易 觉得有帮助请点赞关注收藏~~ 概述:由于JSP使用java作为脚本语言 所以JSP具有强大的对象处理能力 并且可以动态创建web页面内容 但java语言在使用一个对象前  需要先实例化这个对 ...

  7. JAVA遇见HTML——JSP篇:JSP内置对象(上)

    JSP九大内置对象 JSP内置对象是Web容器创建的一组对象,不使用new关键就可以使用的内置对象. <% int[] value={60,70,80}; for(int i:value){ o ...

  8. java中jsp内建对象有_JSP内置对象有哪些

    JSP中的内置对象有:out应用程序.request应用程序.访问客户数据.response的应用.session的应用.application的应用.在web.xml中获取配置对象.获取异常信息等 ...

  9. Java Web复习——task03:JSP 内置对象和生命周期

    文章目录 前言 一.JSP内置对象 1.1 HttpServletRequest类和Request对象 1.2 HttpServletResponse类和Response对象 1.3 JspWrite ...

最新文章

  1. Android如何防止apk程序被反编译
  2. 数据结构(三) 用java实现七种排序算法。
  3. Mybatis-Plus 之 人生中荒废的一下午
  4. PATH环境变量设置
  5. golang中的测试命令
  6. 线性代数:第五章 相似矩阵及二次型(1)向量的内积 方阵的特征值与特征向量 相似矩阵
  7. P1903 [国家集训队]数颜色 / 维护队列
  8. IDEA @Override is not allowed when implementing interface method(转载)
  9. C# 导出 Excel 数字列出现‘0’的解决办法
  10. 在深圳呆那么就感觉伤心了有木有?
  11. mongodb objetcid_mongodb(1)
  12. php生成图片文件流,php 如何把图片转化为字节流存储到数据库?
  13. 归并排序 Java实现 简单易懂
  14. 西门子cpu指示灯含义_CPU中的指示灯亮的意思
  15. ERP库存管理 华夏
  16. 如何成为一名卓越的程序员
  17. 华为社招嵌入式软件面试_华为社招面试流程分享
  18. 在抖音找罗永浩干掉辣条
  19. 让 CXK 来教你实现游戏中的帧动画(上)
  20. HTML常用标签之列表标签

热门文章

  1. jdeveloper_在JDeveloper 12.1.3中为WebSocket使用Java API
  2. python venv 复制_pythonenv的安装及迁移
  3. python训练数据集_python – 如何训练大型数据集进行分类
  4. 骚操作!阿里云直接买www.huaweicloud.com的关键词来抢生意?
  5. 皮一皮:一直情绪不稳的原因终于找到了!
  6. 据说这套组合拳,可以把面试官给问懵逼了,你要不要试试?
  7. Hystrix的应用案例:多短信供应商的自动切换与恢复
  8. eclipse java代码某一行需要修改注释_看看这些Java代码开发规范吧!你好,我好,大家好!...
  9. java memcachedclient_Java memcached client怎样建立长连接
  10. CVPR 2021 妆容迁移 CPM SCGAN