json字符串如何转换成map

来源:互联网 发布:网络用语粗鄙化原因 编辑:程序博客网 时间:2024/05/16 14:53
1.可以使用如下的方式将一个json字符串转换成一个map
String jsonStr = HttpConnectionUtil.getHttpContent("",map);            JSONObject json= JSONArray.parseObject(jsonStr);//        String tokon=json.getString("");            JSONArray jsonArray=json.getJSONArray("terms");            List<Map> xnxqs = new ArrayList<Map>();            for (int i=0;i<jsonArray.size();i++) {                JSONObject obj=jsonArray.getJSONObject(i);                String xn= obj.get("xn").toString();                String xq = obj.get("xq").toString();                Map map2 = new HashMap();                map2.put("xn",xn);                map2.put("xq",xq);                xnxqs.add(map2);//                System.out.println(xn);            }
2.如何在redis中存值和取值 
@Autowiredprivate RedisTemplate<String, Object> redisTemplate;
存值:
redisTemplate.opsForValue().set(school+"APP_"+id, FastJsonUtil.toJsonString(app))
取值:
redisTemplate.opsForValue().get(school+"APP_"+id)

3.个人认为比较经典的代码
@Autowiredprivate EbeanServer ebeanServer;@Autowiredprivate RedisTemplate<String, Object> redisTemplate;@Value("#{weixinCacheParams['SCHOOL_PREFIX']}")private String school;@Overridepublic App findById(Integer id) {    App app = null;    String appJson = String.valueOf(ObjectUtils.defaultIfNull(redisTemplate.opsForValue().get(school+"APP_"+id), ""));    if(StringUtils.isNotEmpty(appJson)){        try {            app = FastJsonUtil.toObject(appJson, App.class);        } catch (Exception e) {            e.printStackTrace();        }    }    if(app==null){        app = ebeanServer.find(App.class, id);        redisTemplate.opsForValue().set(school+"APP_"+id, FastJsonUtil.toJsonString(app));    }    return app;}

原创粉丝点击