map和json之间的转换

Action中在session中存放了一个map<String,Object>,跳转到a.jsp,a.jsp通过form提交到BAction,BAction可从session中获得map值。

但是由于session是存放在tomcat的memcached中的,存放大对象会影响用户使用,同时,如果将map放到request中,通过hidden传递,页面之间传递map有问题。

故想到一个解决方案是将map转为json,存储到request中,a.jsp中写入hidden,最后在BAction中获取json,转为map即可

    map转为json的方式为:

JSONObject jsonObject = JSONObject.fromMap(productMap);  

  JSONObject jsonObject = JSONObject.fromObject(productMap);

  

 json转为map的方式为:

    String json = request.getPrarameter("product");//从hidden里面获得json串

ObjectMapper mapper = new ObjectMapper();  
Map<String,Object> productMap = mapper.readValue(json);//转成map  

  

  

原文地址:https://www.cnblogs.com/wqsbk/p/5341333.html