java - 将参数从java传递到html以创建google图表

标签 java html spring hashmap

我想将四个查询值放入 Google 图表value1 到 value4。问题是将值从 java 传递到 html。下面我发布了相关代码。

那些

    <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">
  google.charts.load("current", {packages:["corechart"]});
  google.charts.setOnLoadCallback(drawChart);
  function drawChart() {


    var data = google.visualization.arrayToDataTable([
      ['Task', 'Hours per Day'],
      ['value1', **3**],
      ['value2', **2**],
      ['value3', **2**],
      ['value4', **2**]
    ]);

    var options = {
      title: 'My Daily Activities',
      pieHole: 0.4,
    };

    var chart = new google.visualization.PieChart(document.getElementById('donutchart'));
    chart.draw(data, options);
  }
</script>

这是java类。

    public ResponseEntity<Map<String,Object>> status() {
    Map<String,Object> map = new HashMap<String,Object>();

    long countByXmlSuccessResult = statusRepository.countByXmlSuccessResult();
    long countByXmlErrorResult = statusRepository.countByXmlErrorResult();
    long countByJsonSuccessResult = statusRepository.countByJsonSuccessResult();
    long countByJsonErrorResult = statusRepository.countByJsonErrorResult();

    map.put("xml success:", **countByXmlSuccessResult**);
    map.put("xml error:", **countByXmlErrorResult**);
    map.put("json success:", **countByJsonSuccessResult**);
    map.put("json error:", **countByJsonErrorResult**);


    return new ResponseEntity<Map<String,Object>>(map, HttpStatus.OK);
}

另外,html文件路径位于src/main/java文件夹下,java文件路径位于src/main/resources文件夹下。

最佳答案

您可以将该 Java 功能公开为服务,然后使用 jquery 对该服务进行 ajax 调用,最后获取结果并在您的 google 图表代码中使用它。 前任: Spring 启动:

@RestController
public class myHomeController{
   ...
   @RequestMapping("/getValues")
   public someDomainClass getMyValues(){
      ...
      //someDomainClass is just a reg. pojo to store your values.
      someDominClass class1 = new someDomainClass(value1, value2, value3
       , value4);
      return class1;
   }
}

您的 HTML 文件:

 ...
<script>
   $.ajax({
      url: "/getValues",
      type: "GET",
      success: function(result){
          //result is a json object containing your values 1..4.
      },
      failure: functtion(err){...}
   });
</script>

祝你好运:)

关于java - 将参数从java传递到html以创建google图表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49458345/

相关文章:

java - Spring boot Rest 以空主体响应异常,而不是在我的@ControllerAdvice 中覆盖的异常

java - HashMap 中的记录器

java - 如何在 Java 中创建受密码保护的 excel?

java - 获取具有多个可能的键名称的映射的值

java - 我的网络应用程序如何在加载时清除浏览器缓存?

javascript - 通过 HTML 表单页面安全地将 JSON 发送到服务器

html - <td> 的宽度是内部宽度为 50% 的 <img> 的两倍

javascript - 如何使用 Javascript 将 ISO 8601 日期格式化为更易读的格式?

java - Spring 批处理元素分割器

javascript - CORS - Java 和 Javascript