json字符串数组转json数组

json字符串数组转json数组当需要把一串字符串转成一个json数组,并遍历其中的内容时。首先要导入net.sf.json.JSONArray和net.sf.json.JSONObject两个jar包<dependency><groupId>net.sf.json-lib</groupId><artifactId>json-lib</artifactId><version>2.4</version><c

大家好,又见面了,我是你们的朋友全栈君。

当需要把一串字符串转成一个json 数组 ,并遍历其中的内容时。
首先要导入 net.sf.json.JSONArray和net.sf.json.JSONObject 两个jar 包

<dependency>
   <groupId>net.sf.json-lib</groupId>
   <artifactId>json-lib</artifactId>
   <version>2.4</version>
   <classifier>jdk15</classifier>
</dependency>
  

String str = "[{name:'a',value:'aa'},{name:'b',value:'bb'},{name:'c',value:'cc'},{name:'d',value:'dd'}]" ; // 一个未转化的字符串

JSONArray json = JSONArray.fromObject(str ); // 首先把字符串转成 JSONArray 对象
if(json.size()>0){ 
   
  for(int i=0;i<json.size();i++){ 
   
    JSONObject job = json.getJSONObject(i);  // 遍历 jsonarray 数组,把每一个对象转成 json 对象
    System.out.println(job.get("name")+"=") ;  // 得到 每个对象中的属性值
  }
}

前端页面json数组转为字符串

var contracts = [
   { 
   id: '1', name: 'yanggb合同1'},
   { 
   id: '2', name: 'yanggb合同2'},
   { 
   id: '3', name: 'yanggb合同3'},
   { 
   id: '4', name: 'yanggb合同4'},
   { 
   id: '5', name: 'yanggb合同5'}
];

JSON.stringify()方法将数组转换为JSON数组字符串
JSON.parse()方法把JSON字符串解析为json对象

$.ajax({ 
   
    type: 'post',
    url: 'contract\save',
    data: { 
   contracts: JSON.stringify(contracts)},
    success: function() { 
   
        console.log('保存合同成功!');
    }
});
@PostMapping(value = "/contract/save")
@ResponseBody
public void saveContracts(String contracts) { 
   
    List<Contract> contractList = JSON.parseArray(contracts, Contract.class);
    // 保存操作
}

封装成json数据

function demo(){ 
   
  var con = { 
   };
  con["id"] = 0;
  con["name"] = '张三';
  con["job"] = '学生';
  var json = JSON.stringify(con);          
  alert("封装成json数据为:"+json);  
}

最终结果为:{ 
   "id":0,"name":"张三","job":"学生"}

封装成json数组

function arr(){ 
   
  //定义一个数组 
  var cons = new Array(3); 
  for(var i = 0;i<3;i++){ 
   
    var con = { 
   };
    con["id"] = 0;
    con["name"] = '张三';
    con["job"] = '学生';
    cons[i] = con;
  }
  var json = JSON.stringify(cons);
  alert("json数组为:"+json); 
}
  最终结果为:[{ 
   "id":0,"name":"张三","job":"学生"},{ 
   "id":0,"name":"张三","job":"学生"},{ 
   "id":0,"name":"张三","job":"学生"}]

map转为实体

  <!-- https://mvnrepository.com/artifact/com.alibaba/fastjson -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.70</version>
        </dependency>
 Map<String,Object> map=new HashMap<>();
 map.put("hotId","dfasfaf454af");
 map.put("hotName","小明");
 map.put("hotKey","5464132645");
 map.put("isDelete","1");
 map.put("hotStatus","0");
 String mapString = JSONObject.toJSONString(map);
 Hop hop = JSONObject.parseObject(mapString, Hop.class);
 System.out.println(hop.toString());   
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/151832.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • redis查数据

    redis查数据

  • vector中find函数用法_java中set的用法

    vector中find函数用法_java中set的用法注意find不属于vector的成员,而存在于算法中,应加上头文件#include&lt;algorithm&gt;:#include&lt;vector&gt;#include&lt;algorithm&gt;#include&lt;iostream&gt;intmain(){   usingnamespacestd;   vector&lt;int&gt;…

    2022年10月14日
  • 企业竞争分析的几种方法:SWOT、波特五力、PEST「建议收藏」

    企业竞争分析的几种方法:SWOT、波特五力、PEST「建议收藏」最近实验室要申报一个互联网+的项目,项目中有关企业经营部分的内容着实令我们这些工科生无从下手,在咨询了某专业相关的学妹后稍微有了点头绪(此处手动感谢学妹的协助哈哈哈~),这里就把学到的有关竞争分析的方法总结一下~目录1、波特五力分析模型2、SWOT分析法3、PEST分析法1、波特五力分析模型波特五力分析模型是迈克尔·波特(MichaelPorter)与20世纪80年代提出的一种用于竞争战略的分析模型。顾名思义就是波特提出一个行业中的竞争,不只是在原有竞争对手中进行,而是存.

  • 机器学习小组知识点10:多项式分布(Mutibinomial distribution)

    机器学习小组知识点10:多项式分布(Mutibinomial distribution)介绍把二项分布公式再推广,就得到了多项分布。二项分布的典型例子是扔硬币,硬币正面朝上概率为pp,重复扔nn次硬币,kk次为正面的概率即为一个二项分布概率。(严格定义见二项分布中伯努利实验定义)把二项扩展为多项就得到了多项分布。比如扔骰子,不同于扔硬币,骰子有6个面对应6个不同的点数,这样单次每个点数朝上的概率都是16\frac{1}{6}(对应p1p_1至p6p_6,它们的值不一定都是16\f

  • 为什么 main 方法是 public static void ?

    为什么 main 方法是 public static void ?初级程序员面试经常会遇到这个问题,这篇博客带你排异解难。

  • pycharm2021 6月激活码【在线破解激活】

    pycharm2021 6月激活码【在线破解激活】,https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号