我的程序有问题.
我有一个servlet; 在此servlet中保存会话属性
ArrayList<Integer> list = new ArrayList<Integer>;
list.add(1);
request.getsession().setAttribute("list",list);
Run Code Online (Sandbox Code Playgroud)
现在该属性是String而不是ArrayList.事实上,当我尝试做:
request.getsession().getAttribute(list)
Run Code Online (Sandbox Code Playgroud)
是一个字符串而不是一个数组.
我想要一个数组.
谢谢
当您从会话中获取属性时,您必须进行强制转换:
ArrayList<Integer> list = (ArrayList<Integer>)request.getsession().getAttribute("list");
Run Code Online (Sandbox Code Playgroud)
并且会话中的属性存储在映射中,这就是您使用的键是String的原因,您必须使用字符串来检索值.