zoukankan      html  css  js  c++  java
  • 对标上一个随笔,jsp返回数据servlet一直接收不到,最后狠一点直接用流了,中间涉及了很多的转换,以及ContentType的设置都很关键

    ContentType;

    推荐园友的博客:介绍的比较详细:https://www.cnblogs.com/tugenhua0707/p/8975121.html

    需要使用阿里巴巴的fastjson

    servlet流的获取:

    response.setCharacterEncoding("UTF-8");
    response.setContentType("application/json; charset=utf-8");
    // 1.用流的方式将数据从jsp获取 +各种数据类型的转换
      BufferedReader reader = new BufferedReader(new InputStreamReader(request.getInputStream(), "utf-8")); // 将数据使用流进行传递
      StringBuffer strb = new StringBuffer();
         String line;
         while ((line = reader.readLine()) != null) { // 遍历数据
         strb = strb.append(line); // 数据暂存StringBuffer
           }

            //转成JSONObject

      JSONObject obj = (JSONObject) JSONObject.parse(strb.toString());

        // 2.JSONObject转String
        String value = obj.toJSONString();
        System.out.println("inputvalue" + value); 

        value = "[" + value + "]";

        //3String转listmap   

      // 数据转换为list
      List<Object> getlist = JSON.parseArray(value);
      // 转换listmap使用,最后都存入了这里
      List<Map<String, Object>> getlistvalue = new ArrayList<Map<String, Object>>();
      for (int i = 0; i < getlist.size(); i++) {
        // Map<String,Object> ageMap2 = new HashMap<String,Object>();
        System.out.println("获取的jsp值" + getlist.get(i));
        Map<String, Object> ret2 = (Map<String, Object>) getlist.get(i);// 取出list里面的值转为map
        // 将获取的值成功存入listmap中
        getlistvalue.add(ret2);
      }

  • 相关阅读:
    smarty对网页性能的影响
    php-fpm正在生成页面时,浏览器刷新后,php-fpm会退出吗?
    为什么日志记录到别的目录了?
    一个空格引发的bug
    linux内核--页高速缓存
    radix树
    linux内核--用户态内存管理
    linux内核--内核内存管理
    linux内核--软中断与tasklet
    linux内核--几个上下文(context)
  • 原文地址:https://www.cnblogs.com/liglacier/p/11224368.html
Copyright © 2011-2022 走看看