在1.jsp中有个input text 我想将这里面的值传给2.jsp,通过session
如果用form提交的话,get方法提交的参数大小有限制,post方法提交后不能保存(用浏览器保存)
所以想用session,不知道行不行?如果行的话请大大们提供一个例子,谢谢

解决方案 »

  1.   

    可以,可以先提交到action中,在类里做处理,在返回到页面上就可以了
      

  2.   

    //设置值
    String id = request.getParameter("id");
                
    if(id != null)  {
    Trade trade= TradeDao.getTradeBeanByPK(Integer.parseInt(id));
    trade.setCount(1);//设置值为1

    List cart = (List)session.getAttribute("cart");

    if(cart == null){
    cart = new ArrayList();
    session.setAttribute("cart",cart);
    }

    cart.add(trade);
    }
    //打印值
    List trades = (List)session.getAttribute("cart");
            for(int i=0;i<trades.size();i++) {
            Trade trader= (Trade)trades.get(i);
                    out.print(  trader.getTradename()  );
         out.print(  trader.getVipprice()  );
         out.print(  trader.getCount()  );
      

  3.   

    action="abc.do?id="+document.getElementById("id").value
      

  4.   

    紧紧2个jsp之间的数据传递不建议用sesion传的。一个比较广的范围内才用,比如用户登录了,保存user信息session.setAttribute("webUser",user);    //把user保存进sesion,对象名是webUserUser user = (User)session.getAttribute("webUser");   //从session中取出来
      

  5.   

    看看这个例子吧  会有帮助的!
    JSP Login.jsp <%@ page contentType="text/html;charset=GB2312" %><html>
    <head>
    <title>CH5 - Login.jsp</title>
    </head>
    <body><h2>javax.servlet.http.HttpSession - session 对象</h2> 
    <form action=Login.jsp method="POST" >
    Login Name: <input type="text" name="Name"><br>
    Login Password: <input type="text" name="Password" ><br>
    <input type="submit" value="Send"><br>
    <form><% if (request.getParameter("Name") != null &&
     request.getParameter("Password") != null) { 
    String Name = request.getParameter("Name");
    String Password = request.getParameter("Password");if (Name.equals("mike") && Password.equals("1234")) { 
    session.setAttribute("Login", "OK");
    response.sendRedirect("Member.jsp");
    }
    else { 
    out.println("登录错误,请输入正确名称"); 

    }
    %></body>
    </html> 
    JSP Member.jsp <%@ page contentType="text/html;charset=GB2312" %><html>
    <head>
    <title>CH5 - Member.jsp</title>
    </head>
    <body><h2>javax.servlet.http.HttpSession - session 对象</h2> 
    <% 
    String Login = (String)session.getAttribute("Login");if (Login != null && Login.equals("OK")) { 
    out.println("欢迎进入");
    session.invalidate(); 

    else { 
    out.println("请先登录,谢谢") ;
    out.println("<br>经过五秒之后,网页会自动返回Login.jsp");response.setHeader("Refresh","5;URL=Login.jsp"); 
    }
    %></body>
    </html> 
      

  6.   

    1.jsp
    session.setAttribute("aa","ddd");//把字符串ddd保存在名为aa的session中
    2.jsp
    String s=session.getAttribute("aa");//把名为aa的session中的值取出来赋值给s,这样,s中的值就是ddd了
      

  7.   

    谢谢楼上的各位,尤其是6楼的例子相当之好,非常感谢。这里面有个问题就是 通过session传递之后(中文)有乱码。。怎么解决?