在 JavaScript 开发工作中, session 是被经常使用的, 把某一对象置于 session 缓存内, 并在 jsp 页面中提取 session 中放进去的对象是很常见的, 下面一起看看:
1, 获取 Session 中的整条数据
- // 后台中向 Session 中放入值的代码:
- List<String> list = new ArrayList<String>();
- list.add("1314-");
- list.add("520");
- list.add("!!!");
- HttpSession session = request.getSession();
- session.setAttribute("message",list);
- // 前台中获取 Session 中的对象:
- <script language="JavaScript">
- function getMessage(){
- List list = (List)session.getAttribute("message");
- alert(list);
- }
- </script>
2, 获取 Session 中的某个数据
- // 后台中向 Session 中放入值的代码:
- String name = "C_staunch";
- HttpSession session = request.getSession();
- session.setAttribute("myname",name);
- // 前台中获取 Session 中的对象:
- <script language="JavaScript">
- function getMyName(){
- var myName = '<%=session.getAttribute("myname")%>';
- alert(myName);
- }
- </script>
在 session 中直接存放 String 类型的数据, 用上面方法直接获取时, 有时候取到的值为 null, 可以试试下面的方法
这是修改之后的方法, 将字符串加到 map 集合中
- String iname = "chenzhiqiang";
- Map<String, String> nn = new HashMap<String, String>();
- nn.put("myName", iname);
- request.getSession().setAttribute("myname", nn);
如果使用的是 SSM 框架的话, 将字符串加到 JSONObject 中
- String iname = "chenzhiqiang";
- JSONObject nn = new JSONObject();
- nn.put("myName", iname);
- request.getSession().setAttribute("myname", nn);
来源: http://www.css88.com/qa/javascript/11443.html