1

我想使用 Highcharts(主/详细示例)在 .jsp 页面中显示数据。数据将从mysql数据库动态加载。有没有人有如何做到这一点的例子。任何从头开始的建议都会有所帮助,即使是最基本的,这意味着您可以建议任何数据以显示在最简单的 jsp 页面上。

感谢您的时间和帮助。谢谢,

4

1 回答 1

1

您可能已经找到了解决方案。如果不是,就是这样。

1) 您将需要在您的 JSP 中以 <% %> scriptlet 甚至更好的 servlet 形式的 JDBC 连接。我使用 SQLITE 是为了方便。

Class.forName("org.sqlite.JDBC");
Connection conn = DriverManager.getConnection("jdbc:sqlite:/DBlocation/Dbname");
Statement stat = conn.createStatement();

2)然后您希望通过 ResultSet 将结果解析为 ArrayList

ArrayList al = new ArrayList();

    // Query DB for dates
    ResultSet rs = stat.executeQuery("select distinct(date) from project_time;");
    while (rs.next()) 
      { 
         al.add(rs.getString("COLUMN_NAME"));
      } 
    rs.close();

3) 接下来,您要使用 RequestDispatcher 将此 ArrayList 传递回您的 JSP 页面

RequestDispatcher rd = null;

request.setAttribute("values",al);
rd = request.getRequestDispatcher("chart.jsp");
rd.forward(request,response);

4) 在您的 jsp 页面上,您希望获取从 servlet 传递的值,如下所示并将它们传递给迭代器

ArrayList valuelist=(ArrayList)request.getAttribute("values");
Iterator valueIterator = valuelist.iterator();

5)接下来,您需要循环遍历 javascript 中的迭代器以生成图形值。

xAxis: {
                    categories: 
                        [<% while(valueIterator.hasNext()) { out.println("'"+ valueIterator.next() +"',");} %>],                    
                    tickmarkPlacement: 'on',
                    title: {
                        enabled: false
                    }
                },

就是这样。希望这足够清楚,如果不是轻弹我的消息,我会进一步帮助你。

于 2013-04-01T05:54:41.610 回答