域对象的作用:保存数据,获取数据,共享数据
适用:在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大内置对象】
作者:西伯尔
出处:http://www.cnblogs.com/sybil-hxl/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。