json数据格式

[{ "firstName": "Brett", "lastName":"McLaughlin", "email": "aaaa" },

{ "firstName": "Jason", "lastName":"Hunter", "email": "bbbb"},

{ "firstName": "Elliotte", "lastName":"Harold", "email": "cccc" }]

一、前台js代码(数据存储与json拼接)

以OutStoDetail类为例

var proDetail=[];//大的集合
var obj=new Object();
obj.outstodeid=outstodeid; //对象属性
obj.proname=proname;
obj.proprice=proprice;
obj.procount=procount;
obj.proamount=proamount;
obj.storagenum=storagenum;
obj.localnum=localnum;
proDetail.push(obj ); //对象放入集合 $("#btnSave").click(function(){
var jsonStr="[";
for(i=;i<proDetail.length;i++){
jsonStr+="{";
jsonStr+="\"outstodeid\":\""+proDetail[i].outstodeid+"\",";
jsonStr+="\"proname\":\""+proDetail[i].proname+"\",";
jsonStr+="\"proprice\":\""+proDetail[i].proprice+"\",";
jsonStr+="\"procount\":\""+proDetail[i].procount+"\",";
jsonStr+="\"proamount\":\""+proDetail[i].proamount+"\",";
jsonStr+="\"storagenum\":\""+proDetail[i].storagenum+"\",";
jsonStr+="\"localnum\":\""+proDetail[i].localnum+"\"";
jsonStr+="}";
if(i!=proDetail.length-) jsonStr+=",";
}
jsonStr+="]";
$.ajax({
type:"post",
url:'<%=basePath%>outStore/updateOrAdd.action?jsonStr='+jsonStr,
success:function(data,status){}
});
});

拼接json串时注意引号的拼接。

二、后台java代码(json数据解析)

1、在maven项目pom.xml中添加如下依赖

<!-- https://mvnrepository.com/artifact/org.json/json -->
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version></version>
</dependency>

或下载org.json的jar包

2、在controller中对json数据进行解析

引入包

import org.json.JSONArray;
import org.json.JSONObject;
List<OutStoDetail> outSDList=new ArrayList<OutStoDetail>();
JSONArray js = new JSONArray(jsonStr);
for (int i = ; i < js.length(); i++) {
  JSONObject ob = js.getJSONObject(i);
  OutStoDetail outStoDetail=new OutStoDetail();
  //outStoDetail.setOutstodeid(Integer.parseInt((String) ob.get("outstodeid")));
  outStoDetail.setProname((String)ob.get("proname"));
  outStoDetail.setProprice(Float.parseFloat((String)ob.get("proprice")));
  outStoDetail.setProcount(Float.parseFloat((String)ob.get("procount")));
  outStoDetail.setProamount(Float.parseFloat((String)ob.get("proamount")));
  outStoDetail.setStoragenum((String)ob.get("storagenum"));
  outStoDetail.setLocalnum((String)ob.get("localnum"));
  outStoDetail.setOutstonum(outStor.getOutstonum());
  outSDList.add(outStoDetail);
}

获取到OutStoDetail类型的集合就可以使用了。

json数据的拼接与解析的更多相关文章

  1. JSON数据的生成与解析

    JSON数据的生成与解析.首先先到网上下载一个json jar包,我用的是org.json 演示样例代码: package json; import org.json.JSONArray; impor ...

  2. Android 学习笔记之Volley(七)实现Json数据加载和解析...

    学习内容: 1.使用Volley实现异步加载Json数据...   Volley的第二大请求就是通过发送请求异步实现Json数据信息的加载,加载Json数据有两种方式,一种是通过获取Json对象,然后 ...

  3. ajax获取json数据为undefined--原因解析

    解决办法:var dataObj=eval("("+data+")");//转换为json对象 问题: 1. 碰到一个问题ajax成功获取json数据后,取值显 ...

  4. ajax提交json数据到后端C#解析

    本文链接:https://blog.csdn.net/qq_22103321/article/details/78015920 前端提交json数据 $.ajax({ type: "post ...

  5. AJAX提交到Handler.ashx一般处理程序返回json数据 (字符串拼接方式)

    <%@ WebHandler Language="C#" Class="Handler" %> using System; using System ...

  6. mysql中json数据的拼接方式

    SELECT CONCAT('[', GROUP_CONCAT( CONCAT('{"id":"',STRUCTURE_ID,'"'),',', CONCAT( ...

  7. 《项目经验》--通过js获取前台数据向一般处理程序传递Json数据,并解析Json数据,将前台传来的Json数据写入数据库表中

      先看一下我要实现的功能界面:   这个界面的功能在图中已有展现,课程分配(教师教授哪门课程)在之前的页面中已做好.这个页面主要实现的是授课,即给老师教授的课程分配学生.此页面实现功能的步骤已在页面 ...

  8. JSON数据解析(转)

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,为Web应用开发提供了一种理想的数据交换格式. 本文将主要介绍在Android ...

  9. JSON数据解析(GSON方式) (转)

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,为Web应用开发提供了一种理想的数据交换格式. 在上一篇博文<Andro ...

随机推荐

  1. Java 基础巩固:装箱拆箱 你真的熟悉吗

    先考两道题: Integer a1 = 300; Integer a2 =300; System.out.print(a1 == a2); Integer b1 = 1; Integer b2 = 1 ...

  2. 第六课作业——主从复制和sentinel高可用

    第六课时作业 静哥 by 2016.3.21~2016.4.3   [作业描述] 1.配置主从复制,截图看日志 2.配置一个哨兵,一主一从结构,并实现主宕机从接管的过程,截图显示 3.总结哨兵的原理 ...

  3. 程序如何在RAM ROM运行,内存分配与分区

    关于RAM ROM RAM与ROM就是具体的存储空间,统称为存储器 RAM(random access memory):运行内存,CPU可以直接访问,读写速度非常快,但是不能掉电存储.它又分为: 动态 ...

  4. view {display:block}

    view {display:block}

  5. Token bucket

    w https://en.wikipedia.org/wiki/Token_bucket

  6. diff工具

    Beyond Compare 4  可以diff文件夹.单个文件.

  7. KVM WEB管理工具webvirtmgr安装和使用

    生产环境的KVM宿主机越来越多,需要对宿主机的状态进行调控.这里用webvirtmgr进行管理.图形化的WEB,让人能更方便的查看kvm 宿主机的情况和操作 1 安装支持的软件源 yum -y ins ...

  8. VM和Windows Ping不通

    连接模式:桥接 Linux上1.修改 /etc/sysconfig/network-scripts/ifcfg-enp0s3 文件 ONBOOT=yes2.service network restar ...

  9. Linux中的判断式

    格式一:test [参数] 判断内容格式二:[ [参数] 判断内容 ] 说明: a.格式二可以认为是格式一的缩写 b.格式二里中括号和内容之间要有空格 基于文件的判断-d 判断文件是否存在,并且是目录 ...

  10. 安装MYSQL时出现libaio.so.1 is needed by MySQL-server-5.5,49.1等等

    安装MYSQL是出现: warning: MySQL-server--.linux2..i386.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: ...