前后端——json的传值与接收(springMvc)

前端传值:

通过将要传输的数据封装为json,然后再通过ajax接收:

JSON.stringify(data)

后端接收值只需要通过一句话即可实现:

@RequestBody String param

此处的param就是你所接收的值
具体如何解析:

JSONObject jo=new JSONObject();
List<Map> parseArray = jo.parseArray(param, Map.class);
System.out.println("parseArray="+parseArray);

只需要这几句话即可
下面举一个小demo:
前端:

		$("#excelOutput").click(function(){
            	console.log("传出的数据="+JSON.stringify(excelData))
				$.ajax({
					url : "${App_Path}/excel",
					data:JSON.stringify(excelData),
					type : "post",
					dataType: "json",
					contentType: "application/json; charset=utf-8",//此处不能省略
					success : function(data) {
                        alert("success")
							},
					error:function(){
                        alert("fail")
					}
				});
		})

后端:

	@ResponseBody
	@RequestMapping(value = "/excel", method = RequestMethod.POST)
	public Msg excel(@RequestBody String param) throws Exception {
		System.out.println("param="+param);
		JSONObject jo=new JSONObject();
		List<Map> parseArray = jo.parseArray(param, Map.class);
        System.out.println("parseArray="+parseArray);
        for (Map map:parseArray) {
		System.out.println("map="+map);
		}
		return null;	
	}

以上就是传值与接收值的具体情况,当然也可以封装一个bean对象,直接转为bean也行

下面继续拓展一个springMvc的知识,如果前端传值是通过这种方式:

$("#excelOutput").click(function(){
            	console.log("传出的数据="+JSON.stringify(excelData))
				$.ajax({
					url : "${App_Path}/excel/"+result,
					data:JSON.stringify(excelData),
					type : "post",
					dataType: "json",
					contentType: "application/json; charset=utf-8",//此处不能省略
					success : function(data) {
                        alert("success")
							},
					error:function(){
                        alert("fail")
					}
				});
		})

上面传了两个值,一个是result,一个是excelData,看后端怎么处理:

@ResponseBody
	@RequestMapping(value = "/excel/{result}", method = RequestMethod.POST)
	public Msg excel(@RequestBody String param,@PathVariable String result) throws Exception{
        System.out.println("param="+param);
        System.out.println("result="+result);//result就是url : "${App_Path}/excel/"+result中的result
		JSONObject jo=new JSONObject();
		List<Map> parseArray = jo.parseArray(param, Map.class);
        System.out.println("parseArray="+parseArray);
        for (Map map:parseArray) {
		System.out.println("map="+map);
		}
		return null;	
	}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ZNineSun

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值