JSP页面结构(4)

来源:百度文库 编辑:神马文学网 时间:2022/09/25 09:31:52
session对象session对象是java.servlet.http.Session子类的对象。表示当前的用户回话信息,在session中保存的对象在当前用户连接的所有页面都是可以访问的。可以使用session对象存储用户登录网站时的信息。当用户在页面之间跳转时,存储在session对象中的变量不会被清除。对session的理解当用户登录网站时,系统自动分配给用户一个session,可以使用getId()方法得到该session的ID<%@ page contentType="text/html;charset=GBK" %>      <%      String str = session.getId();   %>   你的session ID:<%=str%>   这个ID是唯一标识每一个用户,当刷新浏览器的时候,这个值不是变的。自定义属性对于session对象中,经常用到的方法是setAttribute()、getAttribute()和removeAttribute()。分别可以对session中的对象进行存取和删除操作。session对象的主要用途也是保存信息,当用户第一次到达网站时,系统为其分配一个session和application一样也是用自己的自定义属性。程序名称:5_23.jsp<%@ page contentType="text/html;charset=GBK" %>   
   <%
      String str="欢迎!";      session.setAttribute("Greeting",str);      out.print((String)session.getAttribute("Greeting"));   %>   
下一页    首先给自定义属性数值,然后将该属性值读取并显示出来。
程序名称:5_24.jsp
<%@ page contentType="text/html;charset=GBK" %>      <%      out.print((String)session.getAttribute("Greeting"));   %>   
下一页   在该页面中没有对session赋值,同样也可以得到session的值。主要这要是通过5_23.jsp文件的超链接打开的该文件,如果打开一个新的浏览器直接执行5_24.jsp文件,就得不到值了 而application的自定义属性则可以。 cookie对象cookie对象是由Web服务器端产生后被保存到浏览器中的信息。cookie对象可以用来保存一些小量的信息在浏览器中。目前主流的浏览器都支持cookie。可以将cookie写到浏览器中,让浏览器来保存cookie的值。程序名称:5_25.jsp(写入cookie)<%@ page contentType="text/html;charset=GBK" %><%   String strName = "wangxuqin";   Cookie c = new Cookie("Name1",strName);   response.addCookie(c);%>写入Cookie

查看 程序名称:5_26.jsp(读出cookie)<%@ page contentType="text/html;charset=GBK" %><%   Cookie[] cookies = request.getCookies();
   for(int i=0; i读出Cookie

 在使用cookie时,有一些注意事项:1)cookie的存储场所是浏览器,当并不是每一种浏览器都具有cookie功能,同时,在客户端  的安全性设置可以禁用cookie。所以不能假设cookie的写入不一定能够成功。2)cookied对象和resquest对象(cookie的读取)或response对象(cookie的写入)结合使用。3)不同 浏览器中存储的cookie不是通用的,例如,IE存储的cookie只有IE自己可以使用。4)存储在浏览器中的cookie对任何Web服务器都是开放的,所以写入的cookie可能被其他网页  读取或覆盖掉。