jsp操作session

session代表一次用户会话,一次会话就是:从客户端浏览器连接服务器开始,到浏览器与服务器断开为止,就称为一次会话。

session通常用户跟踪用户会话信息,如判断用户是否登录,或者在购物车应用中,用于跟踪用户购买的物品等。session范围内的属性可以在多个页面的跳转之间共享,一旦浏览器关闭,session就结束了。java中session对象是HttpSession的实例。

下面是一个完整的例子:

<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  </head>
 
  <body>
    <form action="first.jsp">
        书籍:<input type="checkbox" name ="item" value="book" >
        电脑:<input type="checkbox" name ="item" value="computer">
        汽车:<input type="checkbox" name ="item" value="car">
        <input type="submit" value="提交">
    </form>
  </body>
</html>

那个面表格提交的处理如下:

<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<%@ page import="java.util.*" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<%
       Map<String,Integer> itemMap =  (Map<String,Integer>)session.getAttribute("itemMap");
       if(itemMap == null)
       {
           itemMap = new HashMap<String,Integer>();
           itemMap.put("书籍", 0);
           itemMap.put("电脑", 0);
           itemMap.put("汽车", 0);
       }          
       String[] buys = request.getParameterValues("item");
       for(String str:buys)
       {
           if(str.equals("book"))
           {
              int num = itemMap.get("书籍").intValue();
              itemMap.put("书籍", num+1);
           }else if(str.equals("computer"))
           {
              int num = itemMap.get("电脑").intValue();
              itemMap.put("电脑", num+1);
           }else if(str.equals("car"))
           {
              int num = itemMap.get("汽车").intValue();
              itemMap.put("汽车", num+1);
           }
       }
        session.setAttribute("itemMap", itemMap);
     %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <body>
    //  
     您所购买的物品:<br>
     书籍:<%=itemMap.get("书籍") %><br>
     电脑:<%=itemMap.get("电脑") %><br>
     汽车:<%=itemMap.get("汽车") %><br>
  </body>
</html>

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。