highcharts struts2 java_用highcharts前后台传输数据struts2

//柱形图 var categories = []; var name =''; var data = []; var chart = new Highcharts.Chart({ chart: { renderTo:'container', type: 'column' }, title: { text: '总负荷环比' }, xAxis: { categories: categories, title: { algin:'right', text: '

//柱形图

var categories = [];

var name ='';

var data = [];

var chart = new Highcharts.Chart({

chart: {

renderTo:'container',

type: 'column'

},

title: {

text: '总负荷环比'

},

xAxis: {

categories: categories,

title: {

algin:'right',

text: '时/h'

}

},

yAxis: {

min: 0,

title: {

text: 'KW'

}

},

tooltip: {

headerFormat: '{point.key}

pointFormat: '

{series.name}: ' +

'

{point.y:.1f} KW',

footerFormat: '

',

shared: true,

useHTML: true

},

plotOptions: {

column: {

pointPadding: 0,//设置两个柱形图的距离

borderWidth: 0

}

}

});

$.ajax({

type: "POST",

url: "tu/cloumnjson.action",

data: "year=1&lastyear=2&status=zhuxingtu",

dataType:'json',

success: function(returndata){

var result = eval('(' + returndata.json + ')');--------------------returndata.变量名(JSON)必须和后台的json变量名一致,json数据返回时候最好用eval来处理一下

for(var i = 0; i < result.length; i++) {

var varkeyTemp = (result[i].key).split("#")

if(varkeyTemp.length>0){

for (var n=0;n

categories.push(varkeyTemp[n].toString())

}

}

var varvalueTemp = (result[i].data).split("#")

if(varvalueTemp.length>0){

for (var j=0;j

data[j]= parseFloat(varvalueTemp[j]);//必须加parseFloat

}

}

chart.addSeries({ name: result[i].name, data:data});

//chart.xAxis[i].setCategories(categories);  已经push了,所以不需要再设置,

}

}

});

struts2配置文件:

/p>

"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"

"http://struts.apache.org/dtds/struts-2.3.dtd">

column_struts.xml:

/p>

"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"

"http://struts.apache.org/dtds/struts-2.3.dtd">

后台java

package com.nari.npce.action;

import java.util.Calendar;

import java.util.GregorianCalendar;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import net.sf.json.JSONArray;

import net.sf.json.JSONObject;

import org.apache.struts2.ServletActionContext;

import com.nari.npce.log.NPECRunLog;

import com.nari.npce.log.impl.NPECRunLogImpl;

import com.opensymphony.xwork2.ActionSupport;

/**

* Servlet implementation class HighChartsJsonAction

*/

public class HighChartsJsonAction extends ActionSupport {

private static final long serialVersionUID = 1L;

private static final NPECRunLog LOGGER = new NPECRunLogImpl();

/**

* @see HttpServlet#HttpServlet()

*/

private String json;

public String getJson()

{

return json;

}

/**

* @param 对jsonTree进行赋值

*/

public void setJson(String json)

{

this.json = json;

}

public String initCloumnString() {

JSONArray gdsNodes = new JSONArray();

JSONObject gdsNodeYear = new JSONObject();

gdsNodeYear.put("key", "1#2#3#4#5#6#7#8#9#10#11#12#13#14#15#16#17#18#19#20#21#22#23#24");

gdsNodeYear.put("name", "今年");

gdsNodeYear.put("data", "10# 11# 12# 13# 14# 15# 10#16# 17# 10# 18# 10#10#10#10#10#10#10#10#10#10#10#10#10");

JSONObject gdsNodeLastYear = new JSONObject();

gdsNodeLastYear.put("key", "1#2#3#4#5#6#7#8#9#10#11#12#13#14#15#16#17#18#19#20#21#22#23#24");

gdsNodeLastYear.put("name", "去年");

gdsNodeLastYear.put("data", "20# 20# 20#20# 20# 20# 20# 20# 20# 20# 20# 20#20#20#20#20#20#20#20#20#20#20#20#15");

gdsNodes.add(gdsNodeYear);

gdsNodes.add(gdsNodeLastYear);

json = gdsNodes.toString();   直接复制,前台直接就可)获取了或者(this.setJson(gdsNodes.toString())),

此种情况用在ajax情况下,不跳转页面,如果要跳转页面,那么就不需要写出了,直接request.setAtrrbute就可以了或者通过通过${json}的EL表达式

return SUCCESS;

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值