十堰h5网站建设,如何选择网站建设平台,陕西政务服务网,人力资源做网站的好处内置对象和属性范围 四种属性范围 九个内置对象1.内置对象如果说想要使用一个对象#xff0c;必须new 出来#xff0c;但是在我们的jsp操作中#xff0c;发现我们使用过的out,request对象没有进行实例化#xff0c;类似于这样的对象#xff0c;我们叫做jsp的内置对象必须new 出来但是在我们的jsp操作中发现我们使用过的out,request对象没有进行实例化类似于这样的对象我们叫做jsp的内置对象也就是收不需要实例化的对象总共有9个。序号对象类型1pageContextjavax.servlet.jsp.PageContext2requestjavax.servlet.http.HttpServletRequest3responsejavax.servlet.http.HttpServletResponse4sessionjavax.servlet.http.HttpSession5applicationjavax.servlet.ServletContext6configjavax.servlet.ServletConfig7outjavax.servlet.jsp.jspWriter8pagejava.lang.Object9exceptionjava.lang.Throwable2.属性范围在jsp中有四种属性范围所谓属性范围就是指在一个jsp中设置了属性是否可以在其他页面能够访问。四种属性范围分别指的是以下的四种 ·属性范围在当前页面有效设置了一个属性在设置属性的页面可以取得属性跳转到其他页面则无法取得设置的属性 ·属性范围在服务端跳转范围内有效一个页面设置了属性然后经过服务端跳转(n次)依然可以取得设置的属性 ·属性范围在一次会话中有效一个页面设置属性无论是经过服务端还是客户端跳转只要浏览器不重启设置的属性都可以取得。 ·属性范围在服务器上下文中有效页面设置的属性无论是经过客户端还是服务端跳转无论是哪一个会话只要服务器不重启设置的属性都可以访问。NO方法描述1public void setAttribute(String name,Object val)设置属性2pulblic Object getAttribute(String name)取得属性3public void removeAttribute(String name)删除属性2.1page属性范围page属性范围也就是我们上面所提到的第一种属性范围使用的是pageContext这个内置对象设置和取得的指的是在一个页面使用pageContext设置了属性之后本页面可以通过pageContext取得设置的属性跳转到其他页面之后无法取得设置的属性。要注意的一点所谓的page属性范围使用的是pageContext这个内置对象设置和取得的。//设置属性pageContext.setAttribute(company,厦门);pageContext.setAttribute(address,厦门市);pageContext.setAttribute(tel,0592-2565166);%如果现在我们通过服务端跳转看能不能取得设置的属性这是pageAttributeDemo02.jsp发现我们通过服务端跳转后取不到之前设置的page范围的属性了如果说想要通过服务端跳转后也能取得设置的属性我们必须使用第二种属性范围。2.2request属性范围request属性范围是第二种属性范围也就是说设置的属性在当前页面可以取得通过服务端跳转之后也可以取得设置的属性。//设置属性request.setAttribute(company,厦门);request.setAttribute(address,厦门市);request.setAttribute(tel,0592-2565166);%这是pageAttributeDemo02.jsp通过//设置属性request.setAttribute(company,厦门);request.setAttribute(address,厦门);request.setAttribute(tel,0592-2565166);%现在我们发现request范围属性经过多次跳转之后依然可以取得设置的属性那么现在如果经过客户端跳转呢//设置属性request.setAttribute(company,厦门);request.setAttribute(address,厦门);request.setAttribute(tel,0592-2565166);%客户端跳转这是requestAttributeDemo03.jsp通过程序运行结果发现通过客户端跳转不能够取得设置的request范围的属性那么如果现在我就想要通过客户端取得设置的属性呢那么我们可以使用第三种范围属性。3.sessionsession属性范围就是我们第三种属性范围也就是之前提到过的属性范围在一次会话中有效。是无论经过客户端还是服务端跳转都可以取得设置的属性当然前提是浏览器不能重启。//设置属性session.setAttribute(company,厦门);session.setAttribute(address,厦门);session.setAttribute(tel,0592-2565166);%客户端跳转0203以上的程序说明我们session范围的属性在经过客户端或者服务端跳转之后设置的属性依然可以取得。现在我们来重启一下浏览器通过操作发现重启浏览器之后取不到设置的session范围属性了那么如果现在想要在浏览器重启后取得设置的属性我们必须使用第四种属性范围。4.application属性范围application范围属性就是第四种范围属性属性是设置在服务器的上下文中只要服务器不重启那么设置的属性统统都可以取得。无论是经过客户端你还是服务端还是浏览器重启都可取得设置的属性。//设置属性application.setAttribute(company,厦门);application.setAttribute(address,厦门);application.setAttribute(tel,0592-2565166);%客户端跳转03设置的application范围的属性无论是通过客户端还是服务端或者浏览器重启都可以取得设置的属性。那么现在如果服务器重启呢通过操作发现重启服务器后之前设置的属性取不到了那么如果想要在重启服务器后取得设置的属性呢那是没有办法的。3.属性范围使用说明在开发中我们常用的属性范围就是request和session范围那么在开发中怎么区分使用二者呢一般来说只对于同一个功能的属性的传递使用request范围属性。那么对于session范围来说主要还是用于登陆上面。4.关于pageContext属性的进一步说明上面我们讲解的是四种属性范围实际上四种属性范围都是通过pageContext设置的在pageContext中setAttribute()方式实际上被重载过·设置属性public abstract void setAttribute(java.lang.String name, java.lang.Object value)public abstract void setAttribute(java.lang.String name,java.lang.Object value,int scope)对于这两个方法第一个方法是我们之前一直在使用的对于第二个方法相比第一个方法多了一个参数(int scope)实际上这个参数就是指定属性范围的参数 ·APPLICATION_SCOPE ·PAGE_SCOPE ·SESSION_SCOPE ·REQUEST_SCOPE也就是说通过这个方法我们可以设置四种属性范围。pageContext.setAttribute(j1m,111,PageContext.SESSION_SCOPE);%跳转02总结知道九个内置对象(pageContext,session,request,response,applicatino,config,page,exception)充分掌握四种属性范围(page仅对于自己的页面传值request应用于服务端传值但是客户端跳转不能传值session一般应该于用户的登录注册保存在一次会话中会话结束属性值消失application属性范围应用于整个服务器中服务器关闭属性值消失。