[code]
一般对象都要通过构造方法取得,而这九个可以直接使用
必须记住
内置对象 类型
pageContext javax.servlet.jsp.PageContext
request javax.servlet.http.HttpServletRequest
response javax.servlet.http.HttpServletResponse
session javax.servlet.http.HttpSession
application javax.servlet.ServletContext
config javax.servlet.ServletConfig
----------------------------------------------------------上面比较重要,后面的一般不会直接使用它
out javax.servlet.jsp.JspWriter
page java.lang.Object
exception java.lang.Throwable
四种属性(Attribute)范围:
1.当前页, page属性范围--用内置对象pageContext来搞。pageContext.setAttribute(xx,xx)
2.一次服务器请求范围--注意:只在服务器跳转才有效,名叫request属性范围
request.setAttribute(xx,xx), 而且如果在1.jsp上面设置了request.setAttr,然后跳转到2.jsp,然后2.jsp又跳到3.jsp,因为都是服务器端跳转,所以我们还是能在3.jsp中拿到值,因为只要是forward,那么request是同一个,没有变化,如果和客户端做了一次交互,则会生成一个新的request...注意:超链接相当于客户端跳转(由客户端发起的跳转),超链接会使得request重新生成
3.一次会话。 session.setAttribute();但是如果新开了一个浏览器,则肯定无法取得,session只是保留了一个人的信息
4.上下文中,在整个服务器上设置的属性,所有人都可以访问。application属性范围
,但是如果在服务器上设置了过多的Application属性,则会影响到服务器的性能
既然 JSP中提供了四种属性范围,则四种属性范围中都将包含以下的属性操作方法
设置属性 public void setAttribute(String name,Object value)
取得属性 public Object setAttribute(String name)
删除属性 public void removeAttribute(String name);
在jsp上写客户端跳转:1。写一个连接。2。用js来写链接
之前所讲的四种范围,实际上都是通过pageContext属性范围一起设置上的。
如果想了解,必须打开pageContext说明文档
在pageContext中有个 setAttribute(String name,Object o,int scope)
pageContext.setAttribute("name","zwz",pageContext.REQUEST_SCOPE);
所以request.setAttribute()包装了这个方法。。。。为了重用啊
[/code]
一般对象都要通过构造方法取得,而这九个可以直接使用
必须记住
内置对象 类型
pageContext javax.servlet.jsp.PageContext
request javax.servlet.http.HttpServletRequest
response javax.servlet.http.HttpServletResponse
session javax.servlet.http.HttpSession
application javax.servlet.ServletContext
config javax.servlet.ServletConfig
----------------------------------------------------------上面比较重要,后面的一般不会直接使用它
out javax.servlet.jsp.JspWriter
page java.lang.Object
exception java.lang.Throwable
四种属性(Attribute)范围:
1.当前页, page属性范围--用内置对象pageContext来搞。pageContext.setAttribute(xx,xx)
2.一次服务器请求范围--注意:只在服务器跳转才有效,名叫request属性范围
request.setAttribute(xx,xx), 而且如果在1.jsp上面设置了request.setAttr,然后跳转到2.jsp,然后2.jsp又跳到3.jsp,因为都是服务器端跳转,所以我们还是能在3.jsp中拿到值,因为只要是forward,那么request是同一个,没有变化,如果和客户端做了一次交互,则会生成一个新的request...注意:超链接相当于客户端跳转(由客户端发起的跳转),超链接会使得request重新生成
3.一次会话。 session.setAttribute();但是如果新开了一个浏览器,则肯定无法取得,session只是保留了一个人的信息
4.上下文中,在整个服务器上设置的属性,所有人都可以访问。application属性范围
,但是如果在服务器上设置了过多的Application属性,则会影响到服务器的性能
既然 JSP中提供了四种属性范围,则四种属性范围中都将包含以下的属性操作方法
设置属性 public void setAttribute(String name,Object value)
取得属性 public Object setAttribute(String name)
删除属性 public void removeAttribute(String name);
在jsp上写客户端跳转:1。写一个连接。2。用js来写链接
之前所讲的四种范围,实际上都是通过pageContext属性范围一起设置上的。
如果想了解,必须打开pageContext说明文档
在pageContext中有个 setAttribute(String name,Object o,int scope)
pageContext.setAttribute("name","zwz",pageContext.REQUEST_SCOPE);
所以request.setAttribute()包装了这个方法。。。。为了重用啊
[/code]