域对象的作用:保存数据,获取数据,共享数据
适用:在web应用中,负责存储数据

1、Servlet三大域对象

对象名称 对象类型
request HttpServletRequest
session HttpSession
application ServletContext

区别:
request: 每一次请求都是一个新的request对象,如果在web组件之间需要共享同一个请求中的数据,只能使用请求转发.
session: 每一次会话都是一个新的session对象,如果如果需要在一次会话中的多个请求之间需要共享数据,只能使用session.
application: 应用对象,Tomcat启动到关闭,表示一个应用,在一个应用中有且只有一个application对象,作用于整个Web应用,可以实现多次会话之间的数据共享.

2、Jsp四大域对象

对象名称 对象类型
pageContext PageContext【一个顶9个】
request HttpServletRequest
session HttpSession
application ServletContext

自动搜索数据顺序:page域->request域->session域->application域(context域)
获取其他内置对象:通过pageContext对象获取其它8个内置对象(pageContext对象本身也属于jsp 9大内置对象之一)

JspWriter getOut():获取out内置对象;
ServletConfig getServletConfig():获取config内置对象;
Object getPage():获取page内置对象;
ServletRequest getRequest():获取request内置对象;
ServletResponse getResponse():获取response内置对象;
HttpSession getSession():获取session内置对象;
ServletContext getServletContext():获取application内置对象;
Exception getException():获取exception内置对象;

3、Jsp九大内置对象

out(JspWriter):等同与response.getWriter(),用来向客户端发送文本数据;
config(ServletConfig):对应“真身”中的ServletConfig;
page(当前JSP的真身类型):当前JSP页面的“this”,即当前对象;
pageContext(PageContext):页面上下文对象,它是最后一个没讲的域对象;
exception(Throwable):只有在错误页面中可以使用这个对象;
request(HttpServletRequest):即HttpServletRequest类的对象;
response(HttpServletResponse):即HttpServletResponse类的对象;
application(ServletContext):即ServletContext类的对象;
session(HttpSession):即HttpSession类的对象,不是每个JSP页面中都可以使用,如果在某个JSP页面中设置<%@page session=”false”%>,说明这个页面不能使用session。

在这9个对象中有很多是极少会被使用的,例如:config、page、exception基本不会使用。
在这9个对象中有两个对象不是每个JSP页面都可以使用的:exception、session。
在这9个对象中有很多前面已经学过的对象:out、request、response、application、session、config。

4、EL表达式11大内置对象

参考:
https://blog.csdn.net/qq_40845373/article/details/82015691【Servlet三大域对象,Jsp四大域对象】
https://blog.csdn.net/qq_20610631/article/details/81333816【Jsp九大内置对象】
https://blog.csdn.net/qq_40845373/article/details/82016449【Jsp 9大内置对象,EL表达式11大内置对象】

posted on 2022-02-22 18:09  西伯尔  阅读(50)  评论(0编辑  收藏  举报