这几天用到了HightCharts,关于从后台获取数据,看了好多json的,看不懂,没接触过json,就写了个很简单的
chart.jsp
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib uri="/struts-tags" prefix="s" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'index.jsp' starting page</title>
<script type="text/javascript" src="js/jquery-1.8.2.min.js"></script>
<script src="js/highcharts.js"></script>
<script src="js/gray.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
var chart;
var d = $("#h1").val();
var a = eval(d);
$(document).ready(function() {
chart = new Highcharts.Chart({
chart: {
renderTo: 'container',
type: 'column'
},
title: {
text: 'Monthly Average Rainfall'
},
subtitle: {
text: 'Source: WorldClimate.com'
},
xAxis: {
categories: [
'1月',
'2月',
'3月',
'4月',
'5月',
'6月',
'7月',
'8月',
'9月',
'10月',
'11月',
'12月'
]
},
yAxis: {
min: 0,
title: {
text: 'Rainfall (mm)'
}
},
legend: {
layout: 'vertical',
backgroundColor: '#FFFFFF',
align: 'left',
verticalAlign: 'top',
x: 100,
y: 70,
floating: true,
shadow: true
},
tooltip: {
formatter: function() {
return ''+
this.x +': '+ this.y +' ¥';
}
},
plotOptions: {
column: {
pointPadding: 0.2,
borderWidth: 0
}
},
series: [{
name: 'ddd',
data:a
}]
});
});
});
</script>
</head>
<body>
<input type="hidden" id="h1" value="<s:property value="str" />" />
<div id="container" style="width: 100%; height: 400px"></div>
</body>
</html>
SalaryInfoAction
public class SalaryInfoAction extends ActionSupport{
private String str;
public String data(){
str = "[49.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]";
return SUCCESS;
}
public String getStr() {
return str;
}
public void setStr(String str) {
this.str = str;
}
}
可以从数据库中获取数据,是用stringbuilder把数据拼接成str那种类型,先运行action