1
我是新来的google.visualization.datasource,我想知道是否有一个简单的例子,用一个助手类创建数据表并返回给客户端,但没有使用查询和DataSourceServlet ??因为我已经通过spring mvc控制器实现了我的http请求。春天mvc 3和谷歌datatable
我想实现下面的例子:https://developers.google.com/chart/interactive/docs/dev/dsl_get_started
这里是我的代码:
@Controller
public class DBcontroller {
private SimpleDateFormat formater = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
@SuppressWarnings({ "rawtypes", "unchecked" })
@RequestMapping(value = "/getHistoricalData", method = {RequestMethod.POST,RequestMethod.GET})
public @ResponseBody DataTable setLampsRequest(@RequestParam String Lampid
, @RequestParam String StartDate, @RequestParam String EndDate) throws ParseException{
//converting time values to long
Long start = formater.parse(StartDate).getTime();
Long end = formater.parse(EndDate).getTime();
// Create a data table,
DataTable data = new DataTable();
ArrayList cd = new ArrayList();
cd.add(new ColumnDescription("name", ValueType.TEXT, "Animal name"));
cd.add(new ColumnDescription("link", ValueType.TEXT, "Link to wikipedia"));
cd.add(new ColumnDescription("population", ValueType.NUMBER, "Population size"));
cd.add(new ColumnDescription("vegeterian", ValueType.BOOLEAN, "Vegetarian?"));
data.addColumns(cd);
// Fill the data table.
try {
data.addRowFromValues("Aye-aye", "http://en.wikipedia.org/wiki/Aye-aye", 100, true);
data.addRowFromValues("Sloth", "http://en.wikipedia.org/wiki/Sloth", 300, true);
data.addRowFromValues("Leopard", "http://en.wikipedia.org/wiki/Leopard", 50, false);
data.addRowFromValues("Tiger", "http://en.wikipedia.org/wiki/Tiger", 80, false);
} catch (TypeMismatchException e) {
System.out.println("Invalid type!");
}
return data;
}
}
预先感谢您的任何帮助表示赞赏。
问题,什么你在运行?你有什么尝试?单独创建dataTable没有任何问题,只要最终的格式可以通过Google Visualization以JS对象的形式进行读取即可。因此,如果它是一个适当的对象,那么将它用作数据源应该不会对创建图表造成任何问题。你的问题究竟在哪里? – jmac
@jmac我试图通过google.gson转换为JSON对象 当我在浏览器中收到它并从它制作google.Visualization.Datatable并尝试绘制它时,我在控制台中得到此错误: 'Uncaught TypeError :对象#