zoukankan      html  css  js  c++  java
  • Python 爬取 热词并进行分类数据分析-[热词关系图+报告生成]

    日期:2020.02.05

    博客期:144

    星期三

      

      【本博客的代码如若要使用,请在下方评论区留言,之后再用(就是跟我说一声)】

      所有相关跳转:

      a.【简单准备

      b.【云图制作+数据导入

      c.【拓扑数据

      d.【数据修复

      e.【解释修复+热词引用

       f.【JSP演示+页面跳转

      g.【热词分类+目录生成

      h.【热词关系图+报告生成】(本期博客)

      i . 【App制作

      j . 【安全性改造


      本来是说今天、昨天要写一篇完整实现的,然后今天这一篇就去写演示类的博客的!但是又怕自己查起来不方便,还是分开写吧!

      按照昨天的进度我们就只剩下 热词关系图 和 报告生成 两部分需求了,今天晚上努努力吧!

      1、使用 ECharts 接口实现关系图。

        本来想用之前那个模板来实现热词关系图的,但是发现数据量大了以后,完全 js 承受不住,不过,难得也封装了代码,你们可以简单看一下:

        com.runtask 包:

     1 package com.runtask;
     2 
     3 import org.json.JSONObject;
     4 
     5 public class MetBuilder {
     6     /*获取新节点*/
     7     public static JSONObject getPointData(String name,String des,int symbolSize,String color){
     8         LockedModel.dataSize += 1;
     9         JSONObject jsonObject = new JSONObject();
    10         jsonObject.put("name",name);
    11         jsonObject.put("des",des);
    12         jsonObject.put("symbolSize",symbolSize);
    13         JSONObject job1 = new JSONObject();
    14         JSONObject job2 = new JSONObject();
    15         job1.put("color",color);
    16         job2.put("normal",job1);
    17         jsonObject.put("itemStyle",job2);
    18         return jsonObject;
    19     }
    20     public static JSONObject getPointData(String name,String des,int symbolSize){
    21         LockedModel.dataSize += 1;
    22         JSONObject jsonObject = new JSONObject();
    23         jsonObject.put("name",name);
    24         jsonObject.put("des",des);
    25         jsonObject.put("symbolSize",symbolSize);
    26         return jsonObject;
    27     }
    28     /*获取新线路*/
    29     public static JSONObject getLineData(String source,String target,String name,String des){
    30         LockedModel.linkSize += 1;
    31         JSONObject jsonObject = new JSONObject();
    32         jsonObject.put("name",name);
    33         jsonObject.put("des",des);
    34         jsonObject.put("target",target);
    35         jsonObject.put("source",source);
    36         return jsonObject;
    37     }
    38     public static JSONObject getLineData(String source,String target){
    39         LockedModel.linkSize += 1;
    40         JSONObject jsonObject = new JSONObject();
    41         jsonObject.put("name","");
    42         jsonObject.put("des","");
    43         jsonObject.put("target",target);
    44         jsonObject.put("source",source);
    45         return jsonObject;
    46     }
    47 }
    MetBuilder.java
      1 package com.runtask;
      2 
      3 import java.sql.SQLException;
      4 
      5 import org.json.JSONArray;
      6 
      7 import com.dblink.basic.utils.SqlUtils;
      8 import com.dblink.basic.utils.sqlKind.MySql_s;
      9 import com.dblink.basic.utils.user.UserInfo;
     10 import com.dblink.bean.BeanGroup;
     11 import com.dblink.bean.JavaBean;
     12 import com.dblink.bean.ReadableTable;
     13 import com.dblink.sql.DBLink;
     14 
     15 public class LockedModel {
     16     
     17     public JSONArray data;
     18     public JSONArray link;
     19     public static int dataSize = 0;
     20     public static int linkSize = 0;
     21     
     22     //构造方法
     23     public LockedModel() {
     24         this.rebuild();
     25     }
     26     public void rebuild(){
     27         this.data = new JSONArray();
     28         this.link = new JSONArray();
     29         LockedModel.dataSize = 0;
     30         LockedModel.linkSize = 0;
     31         this.buildBasicData();
     32         this.buildBasicLink();
     33         this.build();
     34     }
     35     private void buildBasicData(){
     36         this.data.put(MetBuilder.getPointData("热词","所有热词",125,"green"));
     37         
     38         this.data.put(MetBuilder.getPointData("互联网类","分类",100,"red"));
     39         this.data.put(MetBuilder.getPointData("IT业界类","分类",100,"red"));
     40         this.data.put(MetBuilder.getPointData("软件开发类","分类",100,"red"));
     41         this.data.put(MetBuilder.getPointData("开源类","分类",100,"red"));
     42         this.data.put(MetBuilder.getPointData("电脑硬件类","分类",100,"red"));
     43         this.data.put(MetBuilder.getPointData("游戏类","分类",100,"red"));
     44         this.data.put(MetBuilder.getPointData("创业类","分类",100,"red"));
     45         this.data.put(MetBuilder.getPointData("手机相关类","分类",100,"red"));
     46         this.data.put(MetBuilder.getPointData("科学类","分类",100,"red"));
     47         this.data.put(MetBuilder.getPointData("其他类","分类",100,"red"));
     48     }
     49     private void buildBasicLink(){
     50         this.link.put(MetBuilder.getLineData("热词","互联网类"));
     51         this.link.put(MetBuilder.getLineData("热词","IT业界类"));
     52         this.link.put(MetBuilder.getLineData("热词","软件开发类"));
     53         this.link.put(MetBuilder.getLineData("热词","开源类"));
     54         this.link.put(MetBuilder.getLineData("热词","电脑硬件类"));
     55         this.link.put(MetBuilder.getLineData("热词","游戏类"));
     56         this.link.put(MetBuilder.getLineData("热词","创业类"));
     57         this.link.put(MetBuilder.getLineData("热词","手机相关类"));
     58         this.link.put(MetBuilder.getLineData("热词","科学类"));
     59         this.link.put(MetBuilder.getLineData("热词","其他类"));
     60     }
     61     private void build(){
     62         this.makeOneTable("互联网类","互联网类");
     63         this.makeOneTable("手机相关类","手机相关类");
     64         this.makeOneTable("其他类","其他类");
     65         this.makeOneTable("电脑硬件类","电脑硬件类");
     66         this.makeOneTable("软件开发类","软件开发类");
     67         this.makeOneTable("开源类","开源类");
     68         this.makeOneTable("游戏类","游戏类");
     69         this.makeOneTable("创业类","创业类");
     70         this.makeOneTable("科学类","科学类");
     71         this.makeOneTable("IT业界类","IT业界类");
     72     }
     73     private void makeOneTable(String tableName,String linkSource){
     74         DBLink dbLink = new DBLink(new SqlUtils(new MySql_s("rc"),new UserInfo("root","123456")));
     75         try {
     76             ReadableTable rt = dbLink.getSelect("Select word As word , SUM(num) As num From "+tableName+" Group By word Order By num DESC Limit 0,10");
     77             BeanGroup bg = rt.beans;
     78             
     79             int leng_bg = bg.size();
     80             
     81             for(int i=0;i<leng_bg;++i)
     82             {
     83                 JavaBean jbs = bg.get(i);
     84                 String nam = jbs.get(0).toString();
     85                 String str = "名称:"+nam+"<br>引用次数:"+jbs.get(1);
     86                 
     87                 this.data.put(MetBuilder.getPointData(nam,str,50));
     88                 this.link.put(MetBuilder.getLineData(linkSource,nam));
     89             }
     90         } catch (SQLException e) {
     91             e.printStackTrace();
     92         }
     93     }
     94     public static void main(String[] args) {
     95         LockedModel lm = new LockedModel();
     96         System.out.println(lm.data.toString());
     97         System.out.println();
     98         System.out.println(lm.link.toString());
     99         System.out.println();
    100         System.out.println(LockedModel.dataSize);
    101         System.out.println();
    102         System.out.println(LockedModel.linkSize);
    103     }
    104 }
    105 
    106 LockedModel.java
    LockedModel.java

        对应导入 js 文件:

      1 function makePageToRe()
      2 {
      3     var Area = '';
      4     Area += '<div class="row">';
      5     Area += '    <div class="col-md-12">';
      6     Area += '        <h2>热词关系图</h2>';
      7     Area += '    </div>';
      8     Area += '</div>';    
      9     Area += '<hr />';
     10     Area += '<br>';
     11     Area += '<br>';
     12     Area += '<div id="MessageArea">';
     13     Area += "    <br>";
     14     Area += "    <div id='main' style='1150px;height:800px;'></div>";
     15     Area += "    <br>";
     16     Area += '</div>';
     17     document.getElementById("page-inner").innerHTML = Area;
     18     
     19     // 动态加载数据
     20     //readAndDeal();
     21     // 静态加载数据
     22     build_SameData();
     23 }
     24 function readAndDeal()
     25 {
     26     var xmlHttp = null;
     27     try{
     28         xmlHttp = new XMLHttpRequest();
     29        } catch (e1) {
     30             try {
     31                 xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
     32         } catch (e2) {
     33             alert("Your browser does not support XMLHTTP!");
     34             return;
     35         }
     36     }
     37     xmlHttp.onreadystatechange = function() {
     38         if (xmlHttp.readyState == 4) {
     39             if (xmlHttp.status == 200) 
     40             {
     41                 s = xmlHttp.responseText;
     42                 var InformationSet = eval('('+s+')');
     43                 var da = InformationSet.DATA;
     44                 var li = InformationSet.LINK;
     45                 
     46                 build_Change_Worth_Deal(da,li);
     47             }
     48            }
     49     };
     50     var url ="../com/servlet/ServletForImage"; 
     51 
     52     xmlHttp.open("POST", url, true);
     53     xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
     54     xmlHttp.send(null);
     55 }
     56 function build_SameData()
     57 {
     58     var li = [{"des":"","name":"","source":"u70edu8bcd","target":"u4e92u8054u7f51u7c7b"},{"des":"","name":"","source":"u70edu8bcd","target":"ITu4e1au754cu7c7b"},{"des":"","name":"","source":"u70edu8bcd","target":"u8f6fu4ef6u5f00u53d1u7c7b"},{"des":"","name":"","source":"u70edu8bcd","target":"u5f00u6e90u7c7b"},{"des":"","name":"","source":"u70edu8bcd","target":"u7535u8111u786cu4ef6u7c7b"},{"des":"","name":"","source":"u70edu8bcd","target":"u6e38u620fu7c7b"},{"des":"","name":"","source":"u70edu8bcd","target":"u521bu4e1au7c7b"},{"des":"","name":"","source":"u70edu8bcd","target":"u624bu673au76f8u5173u7c7b"},{"des":"","name":"","source":"u70edu8bcd","target":"u79d1u5b66u7c7b"},{"des":"","name":"","source":"u70edu8bcd","target":"u5176u4ed6u7c7b"},{"des":"","name":"","source":"u4e92u8054u7f51u7c7b","target":"5G"},{"des":"","name":"","source":"u4e92u8054u7f51u7c7b","target":"u6211u4eec"},{"des":"","name":"","source":"u4e92u8054u7f51u7c7b","target":"u6280u672f"},{"des":"","name":"","source":"u4e92u8054u7f51u7c7b","target":"u673au5668u4eba"},{"des":"","name":"","source":"u4e92u8054u7f51u7c7b","target":"u4e00u4e2a"},{"des":"","name":"","source":"u4e92u8054u7f51u7c7b","target":"u516cu53f8"},{"des":"","name":"","source":"u4e92u8054u7f51u7c7b","target":"AI"},{"des":"","name":"","source":"u4e92u8054u7f51u7c7b","target":"u4e2du56fd"},{"des":"","name":"","source":"u4e92u8054u7f51u7c7b","target":"u6570u636e"},{"des":"","name":"","source":"u4e92u8054u7f51u7c7b","target":"u4ebau5de5u667au80fd"},{"des":"","name":"","source":"u624bu673au76f8u5173u7c7b","target":"u624bu673a"},{"des":"","name":"","source":"u624bu673au76f8u5173u7c7b","target":"u5c0fu7c73"},{"des":"","name":"","source":"u624bu673au76f8u5173u7c7b","target":"u82f9u679c"},{"des":"","name":"","source":"u624bu673au76f8u5173u7c7b","target":"u534eu4e3a"},{"des":"","name":"","source":"u624bu673au76f8u5173u7c7b","target":"iPhone"},{"des":"","name":"","source":"u624bu673au76f8u5173u7c7b","target":"u5e02u573a"},{"des":"","name":"","source":"u624bu673au76f8u5173u7c7b","target":"u6211u4eec"},{"des":"","name":"","source":"u624bu673au76f8u5173u7c7b","target":"5G"},{"des":"","name":"","source":"u624bu673au76f8u5173u7c7b","target":"u5370u5ea6"},{"des":"","name":"","source":"u624bu673au76f8u5173u7c7b","target":"u4e09u661f"},{"des":"","name":"","source":"u5176u4ed6u7c7b","target":"u7528u6237"},{"des":"","name":"","source":"u5176u4ed6u7c7b","target":"u6211u4eec"},{"des":"","name":"","source":"u5176u4ed6u7c7b","target":"u4ea7u54c1"},{"des":"","name":"","source":"u5176u4ed6u7c7b","target":"u4e00u4e2a"},{"des":"","name":"","source":"u5176u4ed6u7c7b","target":"u8bbeu8ba1"},{"des":"","name":"","source":"u5176u4ed6u7c7b","target":"u516cu53f8"},{"des":"","name":"","source":"u5176u4ed6u7c7b","target":"u53efu4ee5"},{"des":"","name":"","source":"u5176u4ed6u7c7b","target":"u7279u65afu62c9"},{"des":"","name":"","source":"u5176u4ed6u7c7b","target":"u5de5u4f5c"},{"des":"","name":"","source":"u5176u4ed6u7c7b","target":"u4ed6u4eec"},{"des":"","name":"","source":"u7535u8111u786cu4ef6u7c7b","target":"u5e73u677f"},{"des":"","name":"","source":"u7535u8111u786cu4ef6u7c7b","target":"u82afu7247"},{"des":"","name":"","source":"u7535u8111u786cu4ef6u7c7b","target":"u5904u7406u5668"},{"des":"","name":"","source":"u7535u8111u786cu4ef6u7c7b","target":"u7535u8111"},{"des":"","name":"","source":"u7535u8111u786cu4ef6u7c7b","target":"u6211u4eec"},{"des":"","name":"","source":"u7535u8111u786cu4ef6u7c7b","target":"u82f1u7279u5c14"},{"des":"","name":"","source":"u7535u8111u786cu4ef6u7c7b","target":"u786cu76d8"},{"des":"","name":"","source":"u7535u8111u786cu4ef6u7c7b","target":"iPad"},{"des":"","name":"","source":"u7535u8111u786cu4ef6u7c7b","target":"AMD"},{"des":"","name":"","source":"u7535u8111u786cu4ef6u7c7b","target":"u534eu4e3a"},{"des":"","name":"","source":"u8f6fu4ef6u5f00u53d1u7c7b","target":"u6211u4eec"},{"des":"","name":"","source":"u8f6fu4ef6u5f00u53d1u7c7b","target":"u4e00u4e2a"},{"des":"","name":"","source":"u8f6fu4ef6u5f00u53d1u7c7b","target":"u53efu4ee5"},{"des":"","name":"","source":"u8f6fu4ef6u5f00u53d1u7c7b","target":"u5b66u4e60"},{"des":"","name":"","source":"u8f6fu4ef6u5f00u53d1u7c7b","target":"u6570u636e"},{"des":"","name":"","source":"u8f6fu4ef6u5f00u53d1u7c7b","target":"u6a21u578b"},{"des":"","name":"","source":"u8f6fu4ef6u5f00u53d1u7c7b","target":"u6280u672f"},{"des":"","name":"","source":"u8f6fu4ef6u5f00u53d1u7c7b","target":"u95eeu9898"},{"des":"","name":"","source":"u8f6fu4ef6u5f00u53d1u7c7b","target":"u4ee3u7801"},{"des":"","name":"","source":"u8f6fu4ef6u5f00u53d1u7c7b","target":"u6e38u620f"},{"des":"","name":"","source":"u5f00u6e90u7c7b","target":"u5f00u6e90"},{"des":"","name":"","source":"u5f00u6e90u7c7b","target":"u6211u4eec"},{"des":"","name":"","source":"u5f00u6e90u7c7b","target":"u4e00u4e2a"},{"des":"","name":"","source":"u5f00u6e90u7c7b","target":"Linux"},{"des":"","name":"","source":"u5f00u6e90u7c7b","target":"u9879u76ee"},{"des":"","name":"","source":"u5f00u6e90u7c7b","target":"u53efu4ee5"},{"des":"","name":"","source":"u5f00u6e90u7c7b","target":"u8f6fu4ef6"},{"des":"","name":"","source":"u5f00u6e90u7c7b","target":"u6570u636e"},{"des":"","name":"","source":"u5f00u6e90u7c7b","target":"u5b66u4e60"},{"des":"","name":"","source":"u5f00u6e90u7c7b","target":"GitHub"},{"des":"","name":"","source":"u6e38u620fu7c7b","target":"u6e38u620f"},{"des":"","name":"","source":"u6e38u620fu7c7b","target":"u73a9u5bb6"},{"des":"","name":"","source":"u6e38u620fu7c7b","target":"u6211u4eec"},{"des":"","name":"","source":"u6e38u620fu7c7b","target":"u7f51u6e38"},{"des":"","name":"","source":"u6e38u620fu7c7b","target":"u4e00u4e2a"},{"des":"","name":"","source":"u6e38u620fu7c7b","target":"u516cu53f8"},{"des":"","name":"","source":"u6e38u620fu7c7b","target":"u7528u6237"},{"des":"","name":"","source":"u6e38u620fu7c7b","target":"u4e2du56fd"},{"des":"","name":"","source":"u6e38u620fu7c7b","target":"u66b4u96ea"},{"des":"","name":"","source":"u6e38u620fu7c7b","target":"u4ea7u54c1"},{"des":"","name":"","source":"u521bu4e1au7c7b","target":"u516cu53f8"},{"des":"","name":"","source":"u521bu4e1au7c7b","target":"u6211u4eec"},{"des":"","name":"","source":"u521bu4e1au7c7b","target":"u4e00u4e2a"},{"des":"","name":"","source":"u521bu4e1au7c7b","target":"u521bu4e1a"},{"des":"","name":"","source":"u521bu4e1au7c7b","target":"u6295u8d44"},{"des":"","name":"","source":"u521bu4e1au7c7b","target":"u4ed6u4eec"},{"des":"","name":"","source":"u521bu4e1au7c7b","target":"u4ea7u54c1"},{"des":"","name":"","source":"u521bu4e1au7c7b","target":"u4f01u4e1a"},{"des":"","name":"","source":"u521bu4e1au7c7b","target":"u8fd9u4e2a"},{"des":"","name":"","source":"u521bu4e1au7c7b","target":"u81eau5df1"},{"des":"","name":"","source":"u79d1u5b66u7c7b","target":"u6211u4eec"},{"des":"","name":"","source":"u79d1u5b66u7c7b","target":"u91cfu5b50"},{"des":"","name":"","source":"u79d1u5b66u7c7b","target":"u9ed1u6d1e"},{"des":"","name":"","source":"u79d1u5b66u7c7b","target":"u7814u7a76"},{"des":"","name":"","source":"u79d1u5b66u7c7b","target":"u536bu661f"},{"des":"","name":"","source":"u79d1u5b66u7c7b","target":"u5b87u5b99"},{"des":"","name":"","source":"u79d1u5b66u7c7b","target":"u7ec6u80de"},{"des":"","name":"","source":"u79d1u5b66u7c7b","target":"u4e00u4e2a"},{"des":"","name":"","source":"u79d1u5b66u7c7b","target":"u661fu7cfb"},{"des":"","name":"","source":"u79d1u5b66u7c7b","target":"u706bu661f"},{"des":"","name":"","source":"ITu4e1au754cu7c7b","target":"AI"},{"des":"","name":"","source":"ITu4e1au754cu7c7b","target":"u4f01u4e1a"},{"des":"","name":"","source":"ITu4e1au754cu7c7b","target":"u516cu53f8"},{"des":"","name":"","source":"ITu4e1au754cu7c7b","target":"u6570u636e"},{"des":"","name":"","source":"ITu4e1au754cu7c7b","target":"u6211u4eec"},{"des":"","name":"","source":"ITu4e1au754cu7c7b","target":"u82afu7247"},{"des":"","name":"","source":"ITu4e1au754cu7c7b","target":"u6280u672f"},{"des":"","name":"","source":"ITu4e1au754cu7c7b","target":"u534eu4e3a"},{"des":"","name":"","source":"ITu4e1au754cu7c7b","target":"u8ba1u7b97"},{"des":"","name":"","source":"ITu4e1au754cu7c7b","target":"u817eu8baf"}];
     59     var da = [{"des":"u6240u6709u70edu8bcd","symbolSize":125,"name":"u70edu8bcd","itemStyle":{"normal":{"color":"green"}}},{"des":"u5206u7c7b","symbolSize":100,"name":"u4e92u8054u7f51u7c7b","itemStyle":{"normal":{"color":"red"}}},{"des":"u5206u7c7b","symbolSize":100,"name":"ITu4e1au754cu7c7b","itemStyle":{"normal":{"color":"red"}}},{"des":"u5206u7c7b","symbolSize":100,"name":"u8f6fu4ef6u5f00u53d1u7c7b","itemStyle":{"normal":{"color":"red"}}},{"des":"u5206u7c7b","symbolSize":100,"name":"u5f00u6e90u7c7b","itemStyle":{"normal":{"color":"red"}}},{"des":"u5206u7c7b","symbolSize":100,"name":"u7535u8111u786cu4ef6u7c7b","itemStyle":{"normal":{"color":"red"}}},{"des":"u5206u7c7b","symbolSize":100,"name":"u6e38u620fu7c7b","itemStyle":{"normal":{"color":"red"}}},{"des":"u5206u7c7b","symbolSize":100,"name":"u521bu4e1au7c7b","itemStyle":{"normal":{"color":"red"}}},{"des":"u5206u7c7b","symbolSize":100,"name":"u624bu673au76f8u5173u7c7b","itemStyle":{"normal":{"color":"red"}}},{"des":"u5206u7c7b","symbolSize":100,"name":"u79d1u5b66u7c7b","itemStyle":{"normal":{"color":"red"}}},{"des":"u5206u7c7b","symbolSize":100,"name":"u5176u4ed6u7c7b","itemStyle":{"normal":{"color":"red"}}},{"des":"u540du79f0uff1a5G<br>u5f15u7528u6b21u6570:1269","symbolSize":50,"name":"5G"},{"des":"u540du79f0uff1au6211u4eec<br>u5f15u7528u6b21u6570:1156","symbolSize":50,"name":"u6211u4eec"},{"des":"u540du79f0uff1au6280u672f<br>u5f15u7528u6b21u6570:914","symbolSize":50,"name":"u6280u672f"},{"des":"u540du79f0uff1au673au5668u4eba<br>u5f15u7528u6b21u6570:862","symbolSize":50,"name":"u673au5668u4eba"},{"des":"u540du79f0uff1au4e00u4e2a<br>u5f15u7528u6b21u6570:839","symbolSize":50,"name":"u4e00u4e2a"},{"des":"u540du79f0uff1au516cu53f8<br>u5f15u7528u6b21u6570:824","symbolSize":50,"name":"u516cu53f8"},{"des":"u540du79f0uff1aAI<br>u5f15u7528u6b21u6570:785","symbolSize":50,"name":"AI"},{"des":"u540du79f0uff1au4e2du56fd<br>u5f15u7528u6b21u6570:745","symbolSize":50,"name":"u4e2du56fd"},{"des":"u540du79f0uff1au6570u636e<br>u5f15u7528u6b21u6570:625","symbolSize":50,"name":"u6570u636e"},{"des":"u540du79f0uff1au4ebau5de5u667au80fd<br>u5f15u7528u6b21u6570:592","symbolSize":50,"name":"u4ebau5de5u667au80fd"},{"des":"u540du79f0uff1au624bu673a<br>u5f15u7528u6b21u6570:6068","symbolSize":50,"name":"u624bu673a"},{"des":"u540du79f0uff1au5c0fu7c73<br>u5f15u7528u6b21u6570:3344","symbolSize":50,"name":"u5c0fu7c73"},{"des":"u540du79f0uff1au82f9u679c<br>u5f15u7528u6b21u6570:3076","symbolSize":50,"name":"u82f9u679c"},{"des":"u540du79f0uff1au534eu4e3a<br>u5f15u7528u6b21u6570:1988","symbolSize":50,"name":"u534eu4e3a"},{"des":"u540du79f0uff1aiPhone<br>u5f15u7528u6b21u6570:1078","symbolSize":50,"name":"iPhone"},{"des":"u540du79f0uff1au5e02u573a<br>u5f15u7528u6b21u6570:1057","symbolSize":50,"name":"u5e02u573a"},{"des":"u540du79f0uff1au6211u4eec<br>u5f15u7528u6b21u6570:993","symbolSize":50,"name":"u6211u4eec"},{"des":"u540du79f0uff1a5G<br>u5f15u7528u6b21u6570:978","symbolSize":50,"name":"5G"},{"des":"u540du79f0uff1au5370u5ea6<br>u5f15u7528u6b21u6570:809","symbolSize":50,"name":"u5370u5ea6"},{"des":"u540du79f0uff1au4e09u661f<br>u5f15u7528u6b21u6570:649","symbolSize":50,"name":"u4e09u661f"},{"des":"u540du79f0uff1au7528u6237<br>u5f15u7528u6b21u6570:2776","symbolSize":50,"name":"u7528u6237"},{"des":"u540du79f0uff1au6211u4eec<br>u5f15u7528u6b21u6570:2471","symbolSize":50,"name":"u6211u4eec"},{"des":"u540du79f0uff1au4ea7u54c1<br>u5f15u7528u6b21u6570:2381","symbolSize":50,"name":"u4ea7u54c1"},{"des":"u540du79f0uff1au4e00u4e2a<br>u5f15u7528u6b21u6570:2107","symbolSize":50,"name":"u4e00u4e2a"},{"des":"u540du79f0uff1au8bbeu8ba1<br>u5f15u7528u6b21u6570:2045","symbolSize":50,"name":"u8bbeu8ba1"},{"des":"u540du79f0uff1au516cu53f8<br>u5f15u7528u6b21u6570:1157","symbolSize":50,"name":"u516cu53f8"},{"des":"u540du79f0uff1au53efu4ee5<br>u5f15u7528u6b21u6570:962","symbolSize":50,"name":"u53efu4ee5"},{"des":"u540du79f0uff1au7279u65afu62c9<br>u5f15u7528u6b21u6570:717","symbolSize":50,"name":"u7279u65afu62c9"},{"des":"u540du79f0uff1au5de5u4f5c<br>u5f15u7528u6b21u6570:670","symbolSize":50,"name":"u5de5u4f5c"},{"des":"u540du79f0uff1au4ed6u4eec<br>u5f15u7528u6b21u6570:651","symbolSize":50,"name":"u4ed6u4eec"},{"des":"u540du79f0uff1au5e73u677f<br>u5f15u7528u6b21u6570:469","symbolSize":50,"name":"u5e73u677f"},{"des":"u540du79f0uff1au82afu7247<br>u5f15u7528u6b21u6570:443","symbolSize":50,"name":"u82afu7247"},{"des":"u540du79f0uff1au5904u7406u5668<br>u5f15u7528u6b21u6570:369","symbolSize":50,"name":"u5904u7406u5668"},{"des":"u540du79f0uff1au7535u8111<br>u5f15u7528u6b21u6570:362","symbolSize":50,"name":"u7535u8111"},{"des":"u540du79f0uff1au6211u4eec<br>u5f15u7528u6b21u6570:324","symbolSize":50,"name":"u6211u4eec"},{"des":"u540du79f0uff1au82f1u7279u5c14<br>u5f15u7528u6b21u6570:322","symbolSize":50,"name":"u82f1u7279u5c14"},{"des":"u540du79f0uff1au786cu76d8<br>u5f15u7528u6b21u6570:252","symbolSize":50,"name":"u786cu76d8"},{"des":"u540du79f0uff1aiPad<br>u5f15u7528u6b21u6570:229","symbolSize":50,"name":"iPad"},{"des":"u540du79f0uff1aAMD<br>u5f15u7528u6b21u6570:206","symbolSize":50,"name":"AMD"},{"des":"u540du79f0uff1au534eu4e3a<br>u5f15u7528u6b21u6570:201","symbolSize":50,"name":"u534eu4e3a"},{"des":"u540du79f0uff1au6211u4eec<br>u5f15u7528u6b21u6570:4513","symbolSize":50,"name":"u6211u4eec"},{"des":"u540du79f0uff1au4e00u4e2a<br>u5f15u7528u6b21u6570:4494","symbolSize":50,"name":"u4e00u4e2a"},{"des":"u540du79f0uff1au53efu4ee5<br>u5f15u7528u6b21u6570:2412","symbolSize":50,"name":"u53efu4ee5"},{"des":"u540du79f0uff1au5b66u4e60<br>u5f15u7528u6b21u6570:2294","symbolSize":50,"name":"u5b66u4e60"},{"des":"u540du79f0uff1au6570u636e<br>u5f15u7528u6b21u6570:2234","symbolSize":50,"name":"u6570u636e"},{"des":"u540du79f0uff1au6a21u578b<br>u5f15u7528u6b21u6570:1746","symbolSize":50,"name":"u6a21u578b"},{"des":"u540du79f0uff1au6280u672f<br>u5f15u7528u6b21u6570:1579","symbolSize":50,"name":"u6280u672f"},{"des":"u540du79f0uff1au95eeu9898<br>u5f15u7528u6b21u6570:1457","symbolSize":50,"name":"u95eeu9898"},{"des":"u540du79f0uff1au4ee3u7801<br>u5f15u7528u6b21u6570:1427","symbolSize":50,"name":"u4ee3u7801"},{"des":"u540du79f0uff1au6e38u620f<br>u5f15u7528u6b21u6570:1305","symbolSize":50,"name":"u6e38u620f"},{"des":"u540du79f0uff1au5f00u6e90<br>u5f15u7528u6b21u6570:3660","symbolSize":50,"name":"u5f00u6e90"},{"des":"u540du79f0uff1au6211u4eec<br>u5f15u7528u6b21u6570:1379","symbolSize":50,"name":"u6211u4eec"},{"des":"u540du79f0uff1au4e00u4e2a<br>u5f15u7528u6b21u6570:1358","symbolSize":50,"name":"u4e00u4e2a"},{"des":"u540du79f0uff1aLinux<br>u5f15u7528u6b21u6570:1231","symbolSize":50,"name":"Linux"},{"des":"u540du79f0uff1au9879u76ee<br>u5f15u7528u6b21u6570:1197","symbolSize":50,"name":"u9879u76ee"},{"des":"u540du79f0uff1au53efu4ee5<br>u5f15u7528u6b21u6570:745","symbolSize":50,"name":"u53efu4ee5"},{"des":"u540du79f0uff1au8f6fu4ef6<br>u5f15u7528u6b21u6570:660","symbolSize":50,"name":"u8f6fu4ef6"},{"des":"u540du79f0uff1au6570u636e<br>u5f15u7528u6b21u6570:617","symbolSize":50,"name":"u6570u636e"},{"des":"u540du79f0uff1au5b66u4e60<br>u5f15u7528u6b21u6570:588","symbolSize":50,"name":"u5b66u4e60"},{"des":"u540du79f0uff1aGitHub<br>u5f15u7528u6b21u6570:575","symbolSize":50,"name":"GitHub"},{"des":"u540du79f0uff1au6e38u620f<br>u5f15u7528u6b21u6570:12217","symbolSize":50,"name":"u6e38u620f"},{"des":"u540du79f0uff1au73a9u5bb6<br>u5f15u7528u6b21u6570:1577","symbolSize":50,"name":"u73a9u5bb6"},{"des":"u540du79f0uff1au6211u4eec<br>u5f15u7528u6b21u6570:1410","symbolSize":50,"name":"u6211u4eec"},{"des":"u540du79f0uff1au7f51u6e38<br>u5f15u7528u6b21u6570:630","symbolSize":50,"name":"u7f51u6e38"},{"des":"u540du79f0uff1au4e00u4e2a<br>u5f15u7528u6b21u6570:584","symbolSize":50,"name":"u4e00u4e2a"},{"des":"u540du79f0uff1au516cu53f8<br>u5f15u7528u6b21u6570:510","symbolSize":50,"name":"u516cu53f8"},{"des":"u540du79f0uff1au7528u6237<br>u5f15u7528u6b21u6570:458","symbolSize":50,"name":"u7528u6237"},{"des":"u540du79f0uff1au4e2du56fd<br>u5f15u7528u6b21u6570:437","symbolSize":50,"name":"u4e2du56fd"},{"des":"u540du79f0uff1au66b4u96ea<br>u5f15u7528u6b21u6570:421","symbolSize":50,"name":"u66b4u96ea"},{"des":"u540du79f0uff1au4ea7u54c1<br>u5f15u7528u6b21u6570:407","symbolSize":50,"name":"u4ea7u54c1"},{"des":"u540du79f0uff1au516cu53f8<br>u5f15u7528u6b21u6570:16844","symbolSize":50,"name":"u516cu53f8"},{"des":"u540du79f0uff1au6211u4eec<br>u5f15u7528u6b21u6570:9498","symbolSize":50,"name":"u6211u4eec"},{"des":"u540du79f0uff1au4e00u4e2a<br>u5f15u7528u6b21u6570:8272","symbolSize":50,"name":"u4e00u4e2a"},{"des":"u540du79f0uff1au521bu4e1a<br>u5f15u7528u6b21u6570:7067","symbolSize":50,"name":"u521bu4e1a"},{"des":"u540du79f0uff1au6295u8d44<br>u5f15u7528u6b21u6570:3973","symbolSize":50,"name":"u6295u8d44"},{"des":"u540du79f0uff1au4ed6u4eec<br>u5f15u7528u6b21u6570:3807","symbolSize":50,"name":"u4ed6u4eec"},{"des":"u540du79f0uff1au4ea7u54c1<br>u5f15u7528u6b21u6570:2441","symbolSize":50,"name":"u4ea7u54c1"},{"des":"u540du79f0uff1au4f01u4e1a<br>u5f15u7528u6b21u6570:2430","symbolSize":50,"name":"u4f01u4e1a"},{"des":"u540du79f0uff1au8fd9u4e2a<br>u5f15u7528u6b21u6570:2256","symbolSize":50,"name":"u8fd9u4e2a"},{"des":"u540du79f0uff1au81eau5df1<br>u5f15u7528u6b21u6570:2150","symbolSize":50,"name":"u81eau5df1"},{"des":"u540du79f0uff1au6211u4eec<br>u5f15u7528u6b21u6570:1463","symbolSize":50,"name":"u6211u4eec"},{"des":"u540du79f0uff1au91cfu5b50<br>u5f15u7528u6b21u6570:1205","symbolSize":50,"name":"u91cfu5b50"},{"des":"u540du79f0uff1au9ed1u6d1e<br>u5f15u7528u6b21u6570:993","symbolSize":50,"name":"u9ed1u6d1e"},{"des":"u540du79f0uff1au7814u7a76<br>u5f15u7528u6b21u6570:889","symbolSize":50,"name":"u7814u7a76"},{"des":"u540du79f0uff1au536bu661f<br>u5f15u7528u6b21u6570:796","symbolSize":50,"name":"u536bu661f"},{"des":"u540du79f0uff1au5b87u5b99<br>u5f15u7528u6b21u6570:789","symbolSize":50,"name":"u5b87u5b99"},{"des":"u540du79f0uff1au7ec6u80de<br>u5f15u7528u6b21u6570:751","symbolSize":50,"name":"u7ec6u80de"},{"des":"u540du79f0uff1au4e00u4e2a<br>u5f15u7528u6b21u6570:662","symbolSize":50,"name":"u4e00u4e2a"},{"des":"u540du79f0uff1au661fu7cfb<br>u5f15u7528u6b21u6570:591","symbolSize":50,"name":"u661fu7cfb"},{"des":"u540du79f0uff1au706bu661f<br>u5f15u7528u6b21u6570:533","symbolSize":50,"name":"u706bu661f"},{"des":"u540du79f0uff1aAI<br>u5f15u7528u6b21u6570:1678","symbolSize":50,"name":"AI"},{"des":"u540du79f0uff1au4f01u4e1a<br>u5f15u7528u6b21u6570:1547","symbolSize":50,"name":"u4f01u4e1a"},{"des":"u540du79f0uff1au516cu53f8<br>u5f15u7528u6b21u6570:1444","symbolSize":50,"name":"u516cu53f8"},{"des":"u540du79f0uff1au6570u636e<br>u5f15u7528u6b21u6570:1317","symbolSize":50,"name":"u6570u636e"},{"des":"u540du79f0uff1au6211u4eec<br>u5f15u7528u6b21u6570:1284","symbolSize":50,"name":"u6211u4eec"},{"des":"u540du79f0uff1au82afu7247<br>u5f15u7528u6b21u6570:1148","symbolSize":50,"name":"u82afu7247"},{"des":"u540du79f0uff1au6280u672f<br>u5f15u7528u6b21u6570:1087","symbolSize":50,"name":"u6280u672f"},{"des":"u540du79f0uff1au534eu4e3a<br>u5f15u7528u6b21u6570:1083","symbolSize":50,"name":"u534eu4e3a"},{"des":"u540du79f0uff1au8ba1u7b97<br>u5f15u7528u6b21u6570:1078","symbolSize":50,"name":"u8ba1u7b97"},{"des":"u540du79f0uff1au817eu8baf<br>u5f15u7528u6b21u6570:920","symbolSize":50,"name":"u817eu8baf"}];
     60     build_Change_Worth_Deal(da,li);
     61 }
     62 function build_Change_Worth_Deal(da,li){
     63     var myChart = echarts.init(document.getElementById('main'));
     64     
     65     var option = {
     66             title: { text: '信息领域热词关系图谱' },
     67             tooltip: {
     68                 formatter: function (x) {
     69                     return x.data.des;
     70                 }
     71             },
     72             series: [
     73                 {
     74                     type: 'graph',
     75                     layout: 'force',
     76                     symbolSize: 80,
     77                     roam: true,
     78                     edgeSymbol: ['circle', 'arrow'],
     79                     edgeSymbolSize: [4, 10],
     80                     edgeLabel: {
     81                         normal: {
     82                             textStyle: {
     83                                 fontSize: 20
     84                             }
     85                         }
     86                     },
     87                     force: {
     88                         repulsion: 2500,
     89                         edgeLength: [10, 50]
     90                     },
     91                     draggable: true,
     92                     itemStyle: {
     93                         normal: {
     94                             color: '#4b565b'
     95                         }
     96                     },
     97                     lineStyle: {
     98                         normal: {
     99                              2,
    100                             color: '#4b565b'
    101 
    102                         }
    103                     },
    104                     edgeLabel: {
    105                         normal: {
    106                             show: true,
    107                             formatter: function (x) {
    108                                 return x.data.name;
    109                             }
    110                         }
    111                     },
    112                     label: {
    113                         normal: {
    114                             show: true,
    115                             textStyle: {
    116                             }
    117                         }
    118                     },
    119                     data: da
    120                     ,
    121                     links: li
    122                 }
    123             ]
    124         };
    125     myChart.setOption(option);
    126 }
    re.js

        (数据量过大警告!!!)

        现在要找到一个能够加载大量数据的关系图......才怪!我仔细分析了一下,根本不是这么回事儿!100项数据都能加载出来,那么几项数据怎么可能会加载不上?原因到底处在了哪里呢?其实吧,就算数据划分的问题,理想状态下,如果一个词仅仅能够被归为一个类那么,就可以生成我想的那样的 树形结构图 (如果导入出来应该是中心点为树根的星云图)。问题就是词语划分没有规定上的那么严格,这就让我们的关系图较为复杂,难以生成!那么怎么办?树形结构是怎样建立呢?建立一个 Node 结点,然后去找 它 的根结点 ,这样就绘制了一个分支,也就是说 在根节点的基础之上,我们每每建立一个新节点,就会建立一个与之对应的分支,也就是说 新建分支数 = 新建结点数。在这种情况下,我们 结点的建立 和 分支的建立是同步进行的,就像上方封装的 Java 代码一样!我们要的图的结构并不是树形结构,而是 图!所以我们要结点建立和分支建立分步进行!先结点,后分支!

        建立思路:在中心结点的基础上,添加10个分类的结点,并建立相关分支(这部分是树形结构)。构建完成基础部分以后,开始以 keywords 表为中心建立结点。最后,以 10 类视图为中心建立关联。

        如下图:

     

         修改以后的 LockedModel Java 类:

      1 package com.runtask;
      2 
      3 import java.sql.SQLException;
      4 
      5 import org.json.JSONArray;
      6 import org.json.JSONObject;
      7 
      8 import com.dblink.basic.utils.SqlUtils;
      9 import com.dblink.basic.utils.sqlKind.MySql_s;
     10 import com.dblink.basic.utils.user.UserInfo;
     11 import com.dblink.bean.BeanGroup;
     12 import com.dblink.bean.JavaBean;
     13 import com.dblink.bean.ReadableTable;
     14 import com.dblink.sql.DBLink;
     15 
     16 public class LockedModel {
     17     
     18     public JSONArray data;
     19     public JSONArray link;
     20     public static int dataSize = 0;
     21     public static int linkSize = 0;
     22     
     23     //构造方法
     24     public LockedModel() {
     25         this.rebuild();
     26     }
     27     public void rebuild(){
     28         this.data = new JSONArray();
     29         this.link = new JSONArray();
     30         LockedModel.dataSize = 0;
     31         LockedModel.linkSize = 0;
     32         this.buildBasicData();
     33         this.buildBasicLink();
     34         this.build();
     35     }
     36     private void buildBasicData(){
     37         this.data.put(MetBuilder.getPointData("热词","所有热词",125,"green"));
     38         
     39         this.data.put(MetBuilder.getPointData("互联网类","分类",100,"red"));
     40         this.data.put(MetBuilder.getPointData("IT业界类","分类",100,"red"));
     41         this.data.put(MetBuilder.getPointData("软件开发类","分类",100,"red"));
     42         this.data.put(MetBuilder.getPointData("开源类","分类",100,"red"));
     43         this.data.put(MetBuilder.getPointData("电脑硬件类","分类",100,"red"));
     44         this.data.put(MetBuilder.getPointData("游戏类","分类",100,"red"));
     45         this.data.put(MetBuilder.getPointData("创业类","分类",100,"red"));
     46         this.data.put(MetBuilder.getPointData("手机相关类","分类",100,"red"));
     47         this.data.put(MetBuilder.getPointData("科学类","分类",100,"red"));
     48         this.data.put(MetBuilder.getPointData("其他类","分类",100,"red"));
     49     }
     50     private void buildBasicLink(){
     51         this.link.put(MetBuilder.getLineData("热词","互联网类"));
     52         this.link.put(MetBuilder.getLineData("热词","IT业界类"));
     53         this.link.put(MetBuilder.getLineData("热词","软件开发类"));
     54         this.link.put(MetBuilder.getLineData("热词","开源类"));
     55         this.link.put(MetBuilder.getLineData("热词","电脑硬件类"));
     56         this.link.put(MetBuilder.getLineData("热词","游戏类"));
     57         this.link.put(MetBuilder.getLineData("热词","创业类"));
     58         this.link.put(MetBuilder.getLineData("热词","手机相关类"));
     59         this.link.put(MetBuilder.getLineData("热词","科学类"));
     60         this.link.put(MetBuilder.getLineData("热词","其他类"));
     61     }
     62     private void build(){
     63         buildNode();
     64         buildLink();
     65     }
     66     private void buildNode(){
     67         this.makeOneNode("互联网类");
     68         this.makeOneNode("手机相关类");
     69         this.makeOneNode("其他类");
     70         this.makeOneNode("电脑硬件类");
     71         this.makeOneNode("软件开发类");
     72         this.makeOneNode("开源类");
     73         this.makeOneNode("游戏类");
     74         this.makeOneNode("创业类");
     75         this.makeOneNode("科学类");
     76         this.makeOneNode("IT业界类");
     77     }
     78     private void buildLink() {
     79         this.makeOneLink("互联网类","互联网类");
     80         this.makeOneLink("手机相关类","手机相关类");
     81         this.makeOneLink("其他类","其他类");
     82         this.makeOneLink("电脑硬件类","电脑硬件类");
     83         this.makeOneLink("软件开发类","软件开发类");
     84         this.makeOneLink("开源类","开源类");
     85         this.makeOneLink("游戏类","游戏类");
     86         this.makeOneLink("创业类","创业类");
     87         this.makeOneLink("科学类","科学类");
     88         this.makeOneLink("IT业界类","IT业界类");
     89     }
     90     private void makeOneNode(String tableName) {
     91         DBLink dbLink = new DBLink(new SqlUtils(new MySql_s("rc"),new UserInfo("root","123456")));
     92         try {
     93             ReadableTable rt = dbLink.getSelect("Select word As word , SUM(num) As num From "+tableName+" Group By word Order By num DESC Limit 0,10");
     94             BeanGroup bg = rt.beans;
     95             
     96             int leng_bg = bg.size();
     97             
     98             for(int i=0;i<leng_bg;++i)
     99             {
    100                 JavaBean jbs = bg.get(i);
    101                 String nam = jbs.get(0).toString();
    102                 String str = "名称:"+nam+"<br>引用次数:"+jbs.get(1);
    103                 
    104                 int size = this.data.length();
    105                 
    106                 boolean isAccess = true;
    107                 
    108                 for(int j=0;j<size;++j)
    109                 {
    110                     JSONObject jso = this.data.getJSONObject(j);
    111                     if(jso.get("name").toString().compareTo(nam)==0)
    112                     {
    113                         isAccess = false;
    114                         break;
    115                     }
    116                 }
    117                 if(isAccess)
    118                     this.data.put(MetBuilder.getPointData(nam,str,50));
    119             }
    120         } catch (SQLException e) {
    121             e.printStackTrace();
    122         }
    123     }
    124     private void makeOneLink(String tableName,String linkSource){
    125         DBLink dbLink = new DBLink(new SqlUtils(new MySql_s("rc"),new UserInfo("root","123456")));
    126         try {
    127             ReadableTable rt = dbLink.getSelect("Select word As word , SUM(num) As num From "+tableName+" Group By word Order By num DESC Limit 0,10");
    128             BeanGroup bg = rt.beans;
    129             
    130             int leng_bg = bg.size();
    131             
    132             for(int i=0;i<leng_bg;++i)
    133             {
    134                 JavaBean jbs = bg.get(i);
    135                 String nam = jbs.get(0).toString();
    136 
    137                 this.link.put(MetBuilder.getLineData(linkSource,nam));
    138             }
    139         } catch (SQLException e) {
    140             e.printStackTrace();
    141         }
    142     }
    143     public static void main(String[] args) {
    144         LockedModel lm = new LockedModel();
    145         System.out.println(lm.data.toString());
    146         System.out.println();
    147         System.out.println(lm.link.toString());
    148         System.out.println();
    149         System.out.println(LockedModel.dataSize);
    150         System.out.println();
    151         System.out.println(LockedModel.linkSize);
    152     }
    153 }
    LockedModel.java

      2、Word报告生成

         对于 Java 生成 Doc 文档部分,我早在之前做河北填报项目的时候做过了,想了解更多的话,自己去查找 POI 的相关知识,本篇博客不是来讲 POI 怎么用的,请博友勿问,自己去网上找相关的代码资料,我仅提供检索式:“Java POI 写 word ”

        将 POI 相关 Jar 包 导入 lib 文件夹:

         因为是去年10月多做项目来着,所以是那个时候的 Jar 包,也不知道更新没有。

         为了防止因为MySql的原因,出现 SQLNonTransientConnectionException ,提前先设置好 最大连接数目:

    //查看最大连接数目
    show variables like 'max_connections';
    //修改最大连接数目为1000
    set GLOBAL max_connections=1000;
    

        以上两句代码,需要以 Shell 模式运行 MySql 输入。

        其次,需要我们整理构建顺序,我们写数据是一类一类写的,而我们可以在同步构建 Word 的目录结构和具体词频解释!(其中我写了链接跳转,但因为老师没有这方面的需求。于是我又把那部分代码注释掉了)

        然后,我来分享我自己在项目制作过程中 POI 用到的知识点。

        添加页码(参考博客:https://www.iteye.com/blog/53873039oycg-2149884

        添加标题(参考博客:https://blog.csdn.net/qq_28796037/article/details/99168627

        具体报告生成部分的代码不再给予(用到了多方博客的源码,免于侵权)

     1 package com.servlet;
     2 
     3 import java.io.IOException;
     4 
     5 import javax.servlet.ServletException;
     6 import javax.servlet.http.HttpServlet;
     7 import javax.servlet.http.HttpServletRequest;
     8 import javax.servlet.http.HttpServletResponse;
     9 
    10 import com.docmake.FinalFunction;
    11 
    12 
    13 public class ServletForMakeFiles extends HttpServlet{
    14     /**
    15      * 
    16      */
    17     private static final long serialVersionUID = 1L;
    18 
    19     //----------------------------------------------------------------------//
    20     public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException
    21     {
    22         request.setCharacterEncoding("utf-8");
    23         response.setCharacterEncoding("utf-8");
    24         response.setContentType("application/json");
    25         response.setHeader("Cache-Control", "no-cache");
    26         
    27         String filepath = request.getParameter("filepath");
    28         
    29         FinalFunction ff = new FinalFunction(filepath);
    30         
    31         ff.make();
    32         
    33         ff.close();
    34     }
    35     //---------------------------------------------------------------------------------//
    36 }
    ServletForMakeFiles.java

        效果演示:

         可以看到新添加了 “创建Doc文档” 按钮!

     

         难得能在 10 天时间以内,做完这个项目啊!

  • 相关阅读:
    创建Android守护进程(底层服务)【转】
    jack server 常见错误解决方法【转】
    kvm初体验——linux之kvm安装及使用qemu工具安装系统【转】
    全志H3-NanoPi开发板SDK之三编译流程【转】
    数字图像处理之二维码图像提取算法(一)【转】
    Ubuntu登陆不进去(已解决)【转】
    可重入函数设计的基本原理【学习笔记】
    Linux文件系统十问---深入理解文件存储方式(rhel6.5,EXT4)【转】
    [RK3288][Android6.0] TS-ADC驱动流程小结【转】
    手把手教你使用eclipse+qemu+gdb来单步调试ARM内核【学习笔记】
  • 原文地址:https://www.cnblogs.com/onepersonwholive/p/12266059.html
Copyright © 2011-2022 走看看