从mySQL数据库

时间:2016-07-03 06:12:50

标签: javascript java mysql charts

我已经彻底搜索了一个答案,并且无法跟踪任何可以解决此问题的事情。

我正在构建一个具有java / mySQL后端和html / js前端的简单webapp。在我的前端,我使用数据库中的值与chart.js库一起可视化数据。我在后端使用Jersey框架并编写代码,在传递适当的url时返回所需的值 - 例如:

http://localhost:8080/rest/database/chart/get/labels

返回

[&#34;测试&#34;&#34; TEST2&#34;&#34; TEST3&#34;&#34; TEST4&#34;&#34; TEST5&#34;] < / p>

我需要在图表上为图表传递一系列名称数组。

现在,我的图表轴是带占位符的名称,由.js脚本决定:

function loadChartLabels() {
    var xhttp = new XMLHttpRequest();
    var returnArray = [];
    xhttp.onreadystatechange = function () {
        if (xhttp.readyState == 4 && xhttp.status == 200) {
            returnArray = xhttp.responseText;
        }
    };
    xhttp.open("GET", "http://localhost:8080/rest/database/chart/get/labels", true);
    xhttp.send();

    return ["Eating", "Drinking", "21Test", "21Test1", "21Test2", "21Test3", "21Test4"];
    //window.alert(returnArray.toString);
    //return returnArray;
}

这是我的图表脚本:

    var testArray = loadChartLabels();

 var radarData = {
                    labels: testArray,
                    datasets: [
                        {
                            label: "My First dataset",
                            fillColor: "rgba(140,70,120,0.5)",
                            strokeColor: "#ACC26D",
                            pointColor: "#fff",
                            pointStrokeColor: "#9DB86D",
                            data: [65, 59, 90, 81, 56, 55, 40]
                        },
                        {
                            label: "My Second dataset",
                            fillColor: "rgba(172,194,132,0.4)",
                            strokeColor: "#ACC26D",
                            pointColor: "#fff",
                            pointStrokeColor: "#9DB86D",
                            data: [28, 48, 40, 19, 96, 27, 100]
                        }
                    ]
                };

                var habits = document.getElementById("habits").getContext("2d");

                new Chart(habits).Radar(radarData);

我假设某些AJAX变体允许我调用并返回数据库值并将它们设置为图表轴值,但我究竟该如何实现?

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:-1)

如果您需要处理来自AJAX的数据,您可以更改服务器输出数据的方式。我推荐一个JSON - 在JS和服务器上也很容易使用。 但是,如果您需要使用数据格式为'[“test”,“test2”,“test3”,“test4”,“test5”]',您可以尝试使用类似的东西

PDO

但请记住! Eval可能不安全!见https://stackoverflow.com/a/86580/3129342