jsp之九大内置对象与四大域对象

一,什么是内置对象?

在jsp开发中会频繁使用到一些对象,如ServletContext HttpSession PageContext等.如果每次我们在jsp页面中需要使用这些对象都要自己亲自动手创建就会特别的繁琐.SUN公司因此在设计jsp时,在jsp页面加载完毕之后自动帮开发者创建好了这些对象,开发者只需要使用相应的对象调用相应的方法即可.这些系统创建好的对象就叫做内置对象.

在servlet程序中,如果开发者希望使用session对象,必须通过request.getSession()来得到session对象;而在jsp程序中,开发中可直接使用session(系统帮我们创建好的session对象的名字就叫session)调用相应的方法即可,如:session.getId().

二,九大内置对象到底是哪九大呢?

内置对象名          类型
request	       HttpServletRequest
response       HttpServletResponse
config         ServletConfig
application    ServletContext
session        HttpSession
exception      Throwable
page           Object(this)
out            JspWriter
pageContext    PageContext 

三,解析几个内置对象

1)out对象对象,对象类型是JspWriter类,相当于带缓存的PrintWriter(不带缓存)

PrintWriter:write("内容")           直接向浏览器输出内容

JspWriter:writer("内容")            向jsp缓冲区写出内容

JspWriter当满足以下条件时之一时,缓冲区的内容写出:

a,缓冲区满了

b,刷新缓冲区

c,关闭缓冲区

d,jsp页面执行完毕

2)pageContext对象

pageContext的对象类型是PageContext,叫jsp的上下文对象.

pageContext作用:可以获取其他八个内置对象

//示例:
pageContext.getOut();
pageContext.getServletConfig()
使用场景:在自定义标签时会频繁使用到PageContext对象;或者是定义一个方法需要用到多个对象时,传一个pageContext对象就能解决问题.

四,JSP中四大域对象

分类:

ServletContext     context域
HttpServletRequet  request域
HttpSession        session域     --前三种在学习Servlet时就能接触到
PageContext        page域	 --jsp学习的
域对象的作用:保存数据,获取数据,共享数据.

保存数据:

pageContext.setAttribute("内容");//默认保存到page域
pageContext.setAttribute("内容",域范围常量);//保存到指定域中
//四个域常量
PageContext.PAGE_SCOPE
PageContext.REQUEST_SCOPE
PageContext..SESSION_SCOPE
PageContext.APPLICATION_SCOPE

获取数据:

pageContext.getAttribute("内容");

pageContext.getAttribute("name",域范围常量);

//自动在四个域中搜索数据 pageContext.findAttribute("内容");//在四个域中自动搜索数据,顺序:page域->request域->session域->application域(context域)

域作用范围:

page域:    只能在当前jsp页面使用                (当前页面)
request域: 只能在同一个请求中使用               (转发)
session域: 只能在同一个会话(session对象)中使用  (私有的)
context域: 只能在同一个web应用中使用            (全局的)

五,总结

坚持每天学一点新技术,坚持写写博客,这就是今天博客的总结!Fighting,bighuan!




  • 66
    点赞
  • 319
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
### 回答1: 四大对象分别是:请求对象(request)、会话对象(session)、应用程序对象(application)、以及服务器对象(server)。它们的作用范围分别为:请求对象(request):提供浏览器发出的请求所需要的信息;会话对象(session):可以在此对象中存储用户的会话信息;应用程序对象(application):用于存储应用程序范围内的数据;服务器对象(server):可以让访问者访问服务器的信息。 ### 回答2: JSP中的四大对象分别是:page、request、session和application。这些对象允许我们在不同的范围内共享数据,并且在整个JSP页面中访问和使用这些数据。 1. page对象:page对象用于存储和共享在当前JSP页面中使用的数据。它的作用范围只限于当前页面,其他页面无法访问该数据。这使得我们可以在同一个页面的不同部分共享数据,而不需要传递给其他页面。 2. request对象:request对象用于存储和共享在同一个请求(request)中使用的数据。它的作用范围只限于同一个请求,不同的请求无法访问该数据。这使得我们可以在不同的页面间传递数据,并且数据只在同一个请求中有效。 3. session对象:session对象用于存储和共享在同一个用户会话(session)中使用的数据。它的作用范围从用户登录到用户退出为止,即在多个请求之间持久存在。这使得我们可以在用户不同的请求间传递数据,并且数据在整个会话期间保持一致。 4. application对象:application对象用于存储和共享在整个Web应用程序中使用的数据。它的作用范围从Web应用程序启动到关闭为止,即在整个应用程序的生命周期内持久存在。这使得我们可以在不同的会话、不同的用户之间共享数据,并且数据在整个应用程序中保持一致。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值