<body>
<div id="chartmain" style="width: 600px; height: 400px;"></div>
</body>
<script type="text/javascript">
//初始化echarts
function chushihua(myChart){
var option = {
title:{
text:'ECharts 数据统计'
},
series:[{
name:'访问量',
type:'pie',
radius:'90%',
data:[
{value:0,name:'无'},
]
}]
};
myChart.setOption(option);
}
//从数据库读取数据赋值给echarts
function fuzhi(myChart){
$.ajax({
contentType : "application/json",
type : "GET",
url : "${pageContext.request.contextPath}/user_list.action",
dataType : "json",
success : function(data) {
//创建一个数组,用来装对象传给series.data,因为series.data里面不能直接鞋for循环
var servicedata=[];
for(var i=0;i<data.length;i++){
var obj=new Object();
obj.name=data[i].username;
obj.value=data[i].age;
servicedata[i]=obj;
}
myChart.setOption({
title:{
text:'ECharts 数据统计'
},
series:[{
name:'访问量',
type:'pie',
radius:'60%',
data:servicedata
}]
});
}
});
}
//初始化echarts实例
var myChart = echarts.init(document.getElementById('chartmain'));
chushihua(myChart);
fuzhi(myChart);
</script>
</html>
这是jsp页面
------------------------------2019年1月13日更新
eclipse---Project---properties----builders,注意这里的勾,特别是javabulder一定要勾上!我就是因为js老是验证不成功,百度说是builder问题,然后就把勾全部去了,所以一直运行以前的方法!!!
第二个问题就是,ssh中json问题的传输。以前用的是jsonlib,现在用fastjson,非常好使,前端不变,后台:
List user = userService.findAll();
String jsonString = FastJsonUtil.toJSONString(user);
HttpServletResponse response = ServletActionContext.getResponse();
FastJsonUtil.**write_json**(response, jsonString);
//输出json
public static void write_json(HttpServletResponse response,String jsonString)
{
response.setContentType("application/json;utf-8");
response.setCharacterEncoding("UTF-8");
try {
response.getWriter().print(jsonString);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
第三个问题就是map集合中,put方法,value相同,有可能是会覆盖key