--欢迎多多评论多多交流,指正缺点

在这之前必要提到这些JSON的转换都是依赖于引入   ,

首先你得懂得用 ajax 传值到一般处理程序, 以及基本得json字符串结构

Newtonsoft.Json.dll  动态链接库文件,

需要的同学可以点击链接去我的百度云下载 ,下面给出地址

链接:https://pan.baidu.com/s/1yINv3y6r-MsV1C6hcyxMtQ   提取码:2lv6

用的时候就首先引入命名空间就可以调用里面的方法拉

然后我们来介绍介绍里面的主要方法

1) JsonConvert.SerializeObject()           将指定的对象序列化为JSON字符串。 (后台打包回来)

2)  JsonConvert.DeserializeObject()    将JSON字符串反序列化为指定的.NET类型(后台解析,JSON字符串为某种集合类型)

3) JSON.parse()                将JSON字符串转为一个对象。(前台转换)

4)   JSON.stringify()            将 JavaScript 值转换为 JSON 字符串,     (前台转换)

里面有很多转换方法,但这里主要转换是字符串,数组,键值对 的方法, 其他方法不过多累赘

JSON传递到后台的数据是多种多样的,但基本思想大致是一样的,(我想其他的传递思想应该是大同小异的)

1.不同的传值方式前台序列化成JSON字符串传递到后台

2.后台用合适的集合或者封装类的方法进行解析浅谈传递过来的JSON字符串,然后在后台程序中处理,处理完成序列化成JSON字符串打包回来

3.前台接送到后台传递回来的JSON字符串,转换为JSON 对象进行合理的拆分,取值(原来什么类型传就用什么方式取)

(方法1——传递单个字符串)      当传递单个值得情况下

var self="asd";

JSON.stringify("asd") 后台接收:  "asd"

如果说单纯得传递一个字符串到后台得时候往往是非常容易的,           这里就不过多累赘

比较简单得就可实现 数据库语句得字符串拼接了,

这个时候而言,我们无非就是对返回回来的字符串进行判读处理,值得一提的是如果我们返回一个Bool 值类型 ,在经过toString()方法之后,   首字母是会转换成大写的

因此判断的时候如果出错要稍微注意一下了

(方法2,3 传递多值得时候)通过一个例子来理解把

这个例子是基于点击按钮之后,通过后台为文本添加上已经处理

点击之后效果如下

(方法2——传递键值对的形式)

获取相应文本框的数据作为值,

我们在文本框依次输入   测试数据1,测试数据2,测试数据3,测试数据4

如果我们前台alert直接弹出这个return的值

alert(JSON.stringify([object Object]) )弹窗处理这个对象之后可以得到这样一个JSON 字符串:

那么后台(一般处理程序或者类文件中)如何取出这样的键值对形式呢,可以直接通过字典集合的形式进行解析处理      一般来所键值对的形式我们用字典集合处理比较好

Dictionary WeekDictionary = JsonConvert.DeserializeObject>(pars); //将我们的键值对对象转换为字典集合

for (int i = 0; i < WeekDictionary.Count; i++)

{

string ValueIndex = "value" + (i + 1).ToString();

WeekDictionary[ValueIndex] = "已处理" +WeekDictionary[ValueIndex];

}

return JsonConvert.SerializeObject(WeekDictionary);                                 //将指定的对象序列化为JSON字符串。

这样我们就可以在前台用统一的格式来处理这个JSON字符串了

对于这个  re  数据 我们可以对它进行处理,之后就可以在前台通过类似数组的索引的方式取出某一个值了

msg = (typeof (data) == "object" ? msg : JSON.parse(data)); //将这个json字符串转换成json对象//将返回回来的数据转换成为一个数组

self.elems.$tmpl_input.val(msg["value1"]);

self.elems.$tmpl_input1.val(msg["value2"]);

self.elems.$tmpl_input2.val(msg["value3"]);

self.elems.$tmpl_input3.val(msg["value4"]);

msg = (typeof (re) == "object" ? msg : JSON.parse(re));         --这句的意思是,判断是不是一个JSON对象,如果不是将JSON字符串转为一个对象。

(方法3——传数组的形式)

如果我们前台     alert($p);

alert(JSON.stringify($p)); 处理这个对象之后可以得到这样一个JSON 字符串:

后台转换之后得到的数据

最后经过    JsonConvert.SerializeObject(list);               //将指定的list集合序列化为JSON字符串。  (拿数据)

在这之后前台可以拿到数据

对于这个  re  数据 我们可以对它进行处理,之后就可以在前台通过类似数组的索引的方式取出某一个值了           (读取数据)

msg = (typeof (data) == "object" ? msg : JSON.parse(data)); //将这个json字符串转换成json对象

self.elems.$tmpl_input.val(msg[0]);

self.elems.$tmpl_input1.val(msg[1]);

self.elems.$tmpl_input2.val(msg[2]);

self.elems.$tmpl_input3.val(msg[3]);

msg = (typeof (re) == "object" ? msg : JSON.parse(re));

--这句的意思是,判断是不是一个JSON对象,如果不是将JSON字符串转为一个对象。

----不能只思考而不去做,也不能只去做而不思考,同样在生活中也要成为一个细心的人

java 向后台传两个json数据类型_前台向后台传递JSON字符串,处理JSON字符串类型的方法...相关推荐

  1. vue的post请求data可以传两个参吗_我知道的HTTP请求

    HTTP大家都不陌生,但是HTTP的许多细节就并不是很多人都知道了,本文将讨论一些容易被忽略但又比较重要的点. 首先,怎么用原生JS写一个GET请求呢?如下代码,只需3行: let xhr = new ...

  2. ASP.NET中使用JSON方便实现前台与后台的数据交换

    一.前台向后台请求数据 在页面加载时,有时需要对一些表单进行初始化,此时可以利用JQuery的 get 函数向后台发起异步请求: /初始化函数 function initSettings() {$.g ...

  3. python加密字符串小写字母循环后错两位_python数据类型_字符串常用操作(详解)

    这次主要介绍字符串常用操作方法及例子 1.python字符串 在python中声明一个字符串,通常有三种方法:在它的两边加上单引号.双引号或者三引号,如下: name = 'hello' name1 ...

  4. controller接收json数据_答疑 | 前后端分离,如何接收json数据?

    1.颜老师,在前后端分离的项目中,后端如何接收前端发来的json数据?我记得是@RequestBody,但有时候会报错. 答:当使用SpringMVC接收json数据时,需要区分json的数据格式,具 ...

  5. 校验json格式_格式化展示,校验错误,编辑JSON,这几个JSON工具一定不能错过

    今天给大家介绍几个常用JSON的工具,基本上能满足你工作中对JSON的所有需求 google插件 JSONView 安装好插件后,格式化接口返回的JSON,还能展开节点和关闭节点,超级方便 格式化本地 ...

  6. flex bison解析json文件_每秒解析千兆字节的 JSON 解析器开源了

    本文转自我们的网站 InfoQ,译者无明.除了推荐 simdjson 之外,还想测试一下微信平台编辑器的代码样式功能. 事实证明,微信文章的代码展示能力很强了.非常棒. 近日,GitHub 开源了一 ...

  7. json 在后天怎么接_前台向后台传一个json数据,后台怎么接?

    * 用户注册 */ @ResponseBody @RequestMapping(value="/register", method=RequestMethod.GET) //这里是 ...

  8. pg数据库json数据类型_科学网—如何使用PostgreSQL中的JSONB数据类型(PG JSON系列2) - 孙鹏的博文...

    上一篇 使用PostgreSQL中的row_to_json()直接获得JSON(PG JSON系列1)主要针对现有的非json/jsonb类型如何输出json结果,这一篇主要写一下在数据库设计中直接使 ...

  9. java虚拟机如何判断两个类相同_你有没有想过: Java 虚拟机是如何判断两个对象是否相同的?判断的流程是什么?...

    在Java程序运行时,会产生那么多的对象,那 Java 虚拟机是如何判断两个对象是否相同的呢?判断的流程是什么? 参考解答: Java 虚拟机会先判断两个对象的hashCode是否相同,如果hashC ...

  10. java feign同时传对象和其他参数_关于Spirng Cloud的Feign传参问题:

    Feign传参注意: 使用Feign客户端组件来调用微服务,经常出现参数传不过去变成null的问题,网上查了一下发现feign在参数上的使用还是有一定的限制的,主要是要注意: 1. 当参数比较复杂时, ...

最新文章

  1. QQ web api
  2. 复习笔记(一)——C++基础
  3. 计算机实践报告800字,计算机软件专业大学生社会实践报告800字
  4. Qt 【关于控件样式,鼠标进入、离开、点击】
  5. fibonacci数列前20项_数学第十七课:数列综合应用第一弹
  6. 为什么python这么慢_为啥 Python 运行速度这么慢 ?
  7. 攻防世界 CRYPTO 新手练习区 答题(1-12题解)
  8. html代码中如何将浏览器的菜单栏,状态栏,地址栏,工具栏等隐藏,标题栏html代码 HTML中怎么设置标题居中...
  9. 类型的设计--方法:构造器、操作符、转换操作符和参数
  10. 笔记本怎么打开html的面板,联想笔记本控制面板在哪里打开
  11. 康托尔集的物理意义1.2
  12. 7月书讯 | 12本新书如期而至!
  13. 基于BP-Adaboost神经网络的高斯函数模型预测研究-含Matlab代码
  14. SQL连接的理解和使用(内连接:自然连接等值连接,外连接:左连接右连接全外连接)
  15. CTF-网络信息安全攻防学习平台(注入关)
  16. 为什么静下心来阅读会是一种奢侈?
  17. 百度地图获取省市边界、设置图片背景
  18. 怎么建立客户的小档案?
  19. win10 “你不能访问此共享文件夹,因为你组织的安全策略阻止未经身份验证的来宾访问。”
  20. 【DB宝46】NoSQL数据库之CouchBase简介、集群搭建、XDCR同步及备份恢复

热门文章

  1. Java_学生信息管理系统——数组版——尝试将main函数单独放了一个类,并加了文件...
  2. spring mvc+mybatis ios android整合cms内容发布平台
  3. 前端数据可视化echarts.js使用指南
  4. 多线程JAVA篇(一)
  5. linux系统学习(常用命令)
  6. mysql open files
  7. 学习笔记_Java_day12_Cookie
  8. MySQL性能优化的最佳20+套经验
  9. poj2594 Treasure Exploration 二分匹配之最小路径覆盖+传递闭包
  10. import keras的错误module ‘tensorflow.compat.v2‘ has no attribute ‘__internal__‘