前台ajax传数组,后台java接收

前台ajax传数组时,前台要封装成json格式 --JSON.stringify(array),同时设置 traditional : true;否则Java端接收值为null

js代码

var array=new Array("Saab","Volvo","BMW");
$.ajax({        
  type: 'GET',        
  contentType: 'application/json',        
  url: "/getsystemstatics.html",        
  data : {            
     array: JSON.stringify(array)  //前台要封装成json格式         
  },        
  traditional : true,        
  dataType: "jsonp",        
  jsonp: "jsonpCallback",         
  success: function(data){                 

  },        
  error: function(){   
       
  }   
});      

Java代码 

@ResponseBody
@RequestMapping(value = "/getsystemstatics", method = RequestMethod.GET)
public void getSysStatics(HttpServletRequest request, HttpSession session, HttpServletResponse response) {
	try {
		response.setContentType("text/plain");
		response.setHeader("Pragma", "No-cache");
		response.setHeader("Cache-Control", "no-cache");
		response.setDateHeader("Expires", 0);

		Map<String, Object> map = new HashMap<String, Object>();

		String array= request.getParameter("array");		
                if (array!= null && !"".equals(array)) {
			map.put("status", "200");
		} else {
			map.put("status", "404");
		}

		PrintWriter out = response.getWriter();
		JSONObject resultJSON = JSONObject.fromObject(map); // 根据需要拼装json
		String jsonpCallback = request.getParameter("jsonpCallback");// 客户端请求参数
		out.println(jsonpCallback + "(" + resultJSON.toString(1, 1) + ")");// 返回jsonp格式数据
		out.flush();
		out.close();
	} catch (IOException e) {
		e.printStackTrace();
	}
}

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值