知识补充

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. HDU 1846 Brave Game (博弈水题)

    题意:中文...你们懂得. 析:这个就是一个水题博弈,就是一个巴什博弈定理,直接就没有变,如果你们看过我写的那个,这个题绝对水过. 附地址:http://www.cnblogs.com/dwtfukg ...

  2. MySQL-5.7.10主主同步的安装和配置

    目录 目录 1 1. 安装 1 2. 修改MySQL的root密码 4 3. mysqld_safe和mysql.server 4 4. 主主同步配置 4 4.1. 创建同步用户 4 4.2. my. ...

  3. Linux监控本机当前状态命令

    vmstat 1.简介 vmstat命令是最常见的Linux监控工具,可以查看系统的状态值,其中包括:CPU.内存.虚拟内存.I/O情况. 2.参数说明 命令格式:  vmstat [-a] [-n ...

  4. Bellman_ford货币兑换——正权回路判断

    POJ1860 题目大意:你在某一点有一些钱,给定你两点之间钱得兑换规则,问你有没有办法使你手里的钱增多.就是想看看转一圈我的钱能不能增多,出现这一点得条件就是有兑换钱得正权回路,所以选择用bellm ...

  5. Ansible免密码登陆

    配置Linux主机无密码访问 生成秘钥 ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to ...

  6. java socket编程(也是学习多线程的例子)详细版----转

    7.2 面向套接字编程    我们已经通过了解Socket的接口,知其所以然,下面我们就将通过具体的案例,来熟悉Socket的具体工作方式 7.2.1使用套接字实现基于TCP协议的服务器和客户机程序  ...

  7. delphi中如何控制listview的每行的颜色

    我们可以设定一个字段的值,用以判断用什么颜色显示listview的颜色,例子如下 procedure TMainForm.ListView2CustomDrawItem(Sender: TCustom ...

  8. Android-卖票案例static-不推荐此方式

    需求描述:四个窗口一起卖票,把10张票卖完,不许多卖 先看一个错误的案例: package android.java.thread06; /** * 售票线程 */ class Booking ext ...

  9. Maven发布和管理项目

    1 什么是Maven? 如果没有Maven,你可能不得不经历下面的过程: 1 如果使用了spring,去spring的官网下载jar包:如果使用hibernate,去hibernate的官网下载Jar ...

  10. ReactJS 官网案例分析

    案例一.聊天室案例 /** * This file provided by Facebook is for non-commercial testing and evaluation * purpos ...