知识补充

JSON.stringify(), 将value(Object,Array,String,Number...)序列化为JSON字符串
JSON.parse(), 将JSON数据解析为js原生值
toJSON(), 作为JSON.stringify中第二个参数(函数过滤器)补充

1.传过来的单一的参数 不设计json

  	<script type="text/javascript">
$(function(){
var params = {name:"aaa"};
$.ajax({
type: "post",
url: "/paike/cltc/paiKeTest",
data: params,//非常重要的一步
datatype: "json", success:function(){
alert(3); }
})
}) </script>

  springMvc后台接收方式为

@RequestMapping(value = "paiKeTest",method = RequestMethod.POST)
@ResponseBody
public String emrSubmit( @RequestParam(value="name")String name){ System.out.println("JSONTOJAVAOBJ==================="+name); return null;
}

  2.$符号前面的都为页面的参数

<script type="text/javascript">
$(function(){
var mall = {
classid: $("#classid").val().trim(),
teacherid: $("#teacherid").val().trim(),
courseid: $("#courseid").val().trim(),
time: $("#time").val().trim(),
start: $("#start").val().trim(),
end: $("#end").val().trim()
}; $.ajax({
type: "post",
url: "/paike/cltc/paiKe",
data:{ds:JSON.stringify(mall)},//非常重要的一步 传过来的市String类型的json
datatype: "json",
success: function (){
alert(1);
}
}) })
</script>

  springMvc接收值得方式为:

@RequestMapping(value = "paiKe",method = RequestMethod.POST)
@ResponseBody
public String paiKe(@RequestParam(value="ds")String str) {
System.out.println("++++++TTTT============"); System.out.println(str); return null;
}

  *重点:后台解析:

1.导入相关jar包

<1> 单条解析

JSONObject jsonObject = JSONObject.fromObject(jsonStr);

User user =  (User) JSONObject.toBean(jsonObject, user.class);

<2> 多条用数组解析

前台json格式的数据如何传入后台

1. 将要传入后台的数据组装成JSON格式的字符串:

var jsonStr = [{'name':'jim' , 'age':20} , {'name':'king' , 'age':26},{'name':'jge' , 'age':30}]

2. 使用jQuery的ajax请求后台

jQuery.ajax({

type: "post",

url: url,

dataType : 'json',

data : {'mydata':jsonStr},

success: function(data,textStatus){

alert("操作成功");

},

error: function(xhr,status,errMsg){

alert("操作失败!");

}

});

  

3.后台数据的接收与解析:

// 解析多条

		JSONArray jsonArray = JSONArray.fromObject(jsonStr);

		for (int i = 0; i < jsonArray.size(); i++) {

			JSONObject jsonObject = jsonArray.getJSONObject(i);
Cltc cltc = (Cltc) JSONObject.toBean(jsonObject, Cltc.class); }

  

String jsonStr = ServletActionContext.getRequest().getParameter("mydata");

JSONArray jsonArray = JSONArray.fromObject(jsonStr);

for(int i=0;i<jsonArray.length(); i++){

JSONObject jsonJ = jsonArray.getJSONObject(i);

jsonJ.getInt("name");

jsonJ.getString("age");

}

4. 操作完成

字符串和json对象和json对象数组相互转换

var jsonStr  = "{\"userId\":\"001\"}";  // json对象字符串
var jsonArryStr = "[{\"userId\":\"001\"},{\"userId\":\"002\"}]"; // json数组字符串
var jsonObj = JSON.parse(jsonStr); // 字符串转为json对象
var jsonArry = JSON.parse(jsonArryStr); // 字符串转为json数组
var jsonStr = JSON.stringify(jsonObj); // json对象转为字符串
var jsonArryStr=JSON.stringify(jsonArry);// json数组转为字符串

spring 接收前台ajax传来的参数的几个方法的更多相关文章

  1. 【spring】spring boot中使用@EnableTransactionManagement 以后,spring mvc接收前台ajax的post方法传过来的参数,使用@RequestBody接收不到参数

    在启动类上添加了注解: @EnableTransactionManagement, postMan测试接口,以这种方式传递参数: 测试结果: 接收不到参数 问题解决: 原因:是因为 这个项目中的Con ...

  2. SpringMVC Controller接收前台ajax的GET或POST请求返回各种参数

    这几天写新项目遇到这个问题,看这位博主总结得不错,懒得写了,直接转!原文:http://blog.csdn.net/yixiaoping/article/details/45281721原文有些小错误 ...

  3. springmvc,controller层在接收浏览器url传来的参数带中文乱码问题。

    请求地址:http://localhost:8080/saveFlashSale?fsRemark=哈哈哈哈哈 接收方法:@RequestMapping("/saveFlashSale&qu ...

  4. Spring Security 使用Ajax登陆无法跳转页面解决方法

    使用Security的朋友都知道,使用Security后,不再需要我们自己过多的(还需要写少量代码)写登陆的逻辑,只需要自己在html的登陆表单上面定义好输入框name为:username和passw ...

  5. spring MVC 如何接收前台传入的JSON对象数组并处理

    spring MVC 如何接收前台传入的JSON对象数组 主要方法: (主要用到的包是 net.sf.json  即:json-lib-2.3-jdk15.jar 完整相关jar包: commons- ...

  6. spring MVC 如何接收前台传入的JSON对象数组

    spring MVC 如何接收前台传入的JSON对象数组 主要方法: (主要用到的包是 net.sf.json  即:json-lib-2.3-jdk15.jar 完整相关jar包: commons- ...

  7. Action接收页面传来的参数方法

    接收页面传来的参数方法 1.第一种:在action中设置相应的变量 在相应的action中设置与将要传进来的参数名相同的变量 eg: 页面传给后台两个参数 name=chance & age ...

  8. spring接收json格式的多个对象参数(变通法)

    两种方法 方法1 如果使用spring mvc同客户端通信,完全使用json数据格式,需要如下定义一个RequestMapping @Controller public class TestContr ...

  9. 使用Spring mvc接收整个url地址及参数时注意事项

    使用Spring mvc接收整个url地址及参数时注意事项:url= http://baidu?oid=9525c1f2b2cd45019b30a37bead6ebbb&td=2015-08- ...

随机推荐

  1. IntelliJ IDEA 2017版 spring-boot修改端口号配置把端口号改为8081

    1.修改端口号主要是通过配置文件修改.如图: 完整版配置 ######################################################## ###server 配置信息 ...

  2. Spring源码解析 - AbstractBeanFactory 实现接口与父类分析

    我们先来看类图吧: 除了BeanFactory这一支的接口,AbstractBeanFactory主要实现了AliasRegistry和SingletonBeanRegistry接口. 这边主要提供了 ...

  3. 好用的SHELL小编程

    1>判断输入为数字,字符或其他      脚本代码:      检测结果:   2>求平均数:   测试效果:     3>自减输出: 脚本代码: 测试效果:    4>在文件 ...

  4. 在EBS里新建一个OU的步骤

    http://blog.csdn.net/kevingao/archive/2010/09/11/5877092.aspx 在EBS里新建一个OU的步骤1. 建立OU组织,关联SOB,LE2. 系统管 ...

  5. api接口签名相关文章

    http://www.cnblogs.com/hnsongbiao/p/5478645.htmlhttp://www.cnblogs.com/codeon/p/5900914.html?from=ti ...

  6. NLayerAppV3--.net Core2实现的DDD分层架构

    虽然每天的工作都是CURD.还是使用着传统的三层架构.使用着.net Framework,但是这并不能影响我学习DDD和.net core. 总是希望软件在应对复杂多变的场景时能够游刃有余,在解决问题 ...

  7. CryptoJS与C#AES加解密互转

    CryptoJS下载地址: https://code.google.com/archive/p/crypto-js/downloads http://download.csdn.net/detail/ ...

  8. MSSQL数据表生成模型

    MSSQL数据表生成模型 http://pan.baidu.com/s/1mhBAapy

  9. .net Aspose.pdf 转html 去除版权

    时光偷走的,永远都是我们眼皮底下看不见的珍贵. 1. 资源文件 a)     Aspose.pdf.18.12.0.nupkg  链接:https://pan.baidu.com/s/171_OWOf ...

  10. webform gridview合并单元格

    gridview合并单元格 由于项目要求,需要合并某些单元格,因此特意封装了如下帮助类: /// <summary> /// 合并单元格 /// </summary> publ ...