session传值问题,对session看得比较少。

![图片说明](https://img-ask.csdn.net/upload/201805/09/1525847580_461475.png)图片说明我希望将session里面放的id显示到jsp页面表格中,session取值没用过,有大神帮忙看下吗

两种方式
1.<%=session.getAttribute("id")%>
2.${sessionScope.id}}

图片说明

希望将session里面放的id显示到jsp页面表格中

一、在second.jsp中取first中的表单信息(用request.getParameter()方法),将这些变量存入session中,语法为session.setAttribute(String key, Object value):
设有接收表单语句:String user_name = requrequest.getParameter("user_name ");
那么将其放入session中key为name的语句为:session.setAttribute("name",user_name);
二、在third.jsp页面中要输出second的信息有两种方法:1.接收值然后直接输出;2.接收值,存入session中(方法如第一步)再从session中取出值。
输出first.jsp的值:从session中取出存入的信息,语句如下:
out.println( (String)session.getAttribute("name") );

el表达式:$("id") 同request中取值一样啊 只是作用域不一样,session设置属性后 每个页面都能使用,request只是当前页面使用

EL表达式${}传递值

....
List<Integer> list = new ArrayList<>();
 while(rs111.next()){
     int id = rs111.getInt("id");
     list.add(id);
 }

 session111.setAttribute("ids",list);

*.jsp

 <c:forEach items="${ids}" var="item">
 (${item})
 </c:forEach>

大概这个样子

el表达式:$("id")

1、jsp自带几个对象,session就是其一,可直接使用<% int id=(int)session.getAttribute("id"); %>,后面要用的时候直接<%=id%>即可
2、el表达式

看上面的代码,应该是后台传值到某个jsp上,不会再次使用,直接采用request去存值,没必要采用session,一般放session的内容是set一次,需要的时候每个地方都可以直接获取到,比如登录用户的信息。

如果你那里支持EL表达式的话直接${这里面输入你session里面的名字},这个是最方便的。一般jsp都支持的,我也建议你这样用,看着简洁