Servlet中生成json文件,echarts模板调用

Posted 苍天の笑

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Servlet中生成json文件,echarts模板调用相关的知识,希望对你有一定的参考价值。

在echarts官网中下载的模板数据都是固定的,而我的项目需要数据是动态改变的,所以我试了很多方法来解决这个问题,其中成功的一种方法是在Servlet中先生成json数据格式,之后再把内容写到一个json文件中,在html中在调用这个json文件就可以了。

先生成json数据格式

JSONObject q1 = new JSONObject();
        JSONObject q2 = new JSONObject();
        JSONObject q3 = new JSONObject();
        JSONObject q4 = new JSONObject();
        JSONArray array = new JSONArray();
        JSONArray array2 = new JSONArray();
        JSONArray array3 = new JSONArray();
        JSONObject w1 = new JSONObject();
        JSONObject w2 = new JSONObject();
        JSONObject s = new JSONObject();
        JSONArray htags = new JSONArray();
        for(int i=0;i<beank.size();i++)
        {
            q1=new JSONObject();
            q1.put("name", beank.get(i).getDISTNAME());
            System.out.println(beank.get(i).getDISTNAME());
            array.add(q1);
        }
        for(int i=0;i<beanl.size();i++)
        {
            q1=new JSONObject();
            q1.put("name", beanl.get(i).getSTOCKNAME());
            System.out.println(beanl.get(i).getSTOCKNAME());
            array2.add(q1);
        }
        w1.put("name", "对外投资");
        w1.put("children", array);
        
        w2.put("name", "股东");
        w2.put("children", array2);
        array3.add(w1);
        array3.add(w2);
        s.put("children", array3);
        s.put("name", corpbean.getCORPNAME());

在规定写入的文件并写入

Tool tool=new Tool();
        File file=new File("F:\\\\web\\\\Company\\\\WebContent\\\\data\\\\Text.json");
        if(!file.exists())//判断文件是否存在,若不存在则新建
        {
            file.createNewFile();
        }
        FileOutputStream fileOutputStream=new FileOutputStream(file);//实例化FileOutputStream
        OutputStreamWriter outputStreamWriter=new OutputStreamWriter(fileOutputStream,"utf-8");//将字符流转换为字节流
        BufferedWriter bufferedWriter= new BufferedWriter(outputStreamWriter);//创建字符缓冲输出流对象
        String jsonString=s.toString();//将jsonarray数组转化为字符串
        bufferedWriter.write(jsonString);//将格式化的jsonarray字符串写入文件
        bufferedWriter.flush();//清空缓冲区,强制输出数据
        bufferedWriter.close();//关闭输出流

之后就可以使用了

运行结果:

以上是关于Servlet中生成json文件,echarts模板调用的主要内容,如果未能解决你的问题,请参考以下文章

如何在 dist 目录中生成单独的 package.json 文件?

在 Java Servlet 中生成 HTML 响应

如何从 protobuf (.proto) 文件中生成 (.json/.yaml) 中的 swagger3 (OpenAPI3) 规范?

如何使用/引用在同一个 json 模式中生成的字段值

使 complierOptions 在 tsconfig 中生成警告而不是错误

PHP中生成json信息的方法