java json对象和json字符串互转的方法_将json字符串转换成对象

java json对象和json字符串互转的方法_将json字符串转换成对象包名:importnet.sf.json.JSONObject;1.maven地址<dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.4</…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

包名:import net.sf.json.JSONObject;

1.maven地址

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

2.People对象详情如下:

package pojo;
public class People {


	private int id;
	private int age;
	private String name;
	
	
	public People(int id, int age, String name) {
		super();
		this.id = id;
		this.age = age;
		this.name = name;
	}
	
	public People() {
		super();
	}


	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public int getAge() {
		return age;
	}
	public String getName() {
		return name;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public void setName(String name) {
		this.name = name;
	}
	@Override
	public String toString() {
		return "People [id=" + id + ", age=" + age + ", name=" + name + "]";
	}
	
}

 3.json字符串转为JSONObject对象:

String jsonStr = "{\"name\":\"1\",\"age\":1,\"id\":0}";
// json字符串转为JSONObject 对象
JSONObject jsonObject = JSONObject.fromObject(jsonStr);
System.out.println("name:" + jsonObject.get("name"));
System.out.println("age:" + jsonObject.get("age"));
System.out.println("id:" + jsonObject.get("id"));

4.JSONObject转为json字符串:

// JSONObject转为json字符串
String string = jsonObject.toString();
System.out.println("string" + string);

 

 

5.JSONObject对象转化为javaBean对象:

// JSONObject转为javaBean
People people = (People)JSONObject.toBean(jsonObject, People.class);
System.out.println(people);

6.有时候,我们需要将一个集合json转化为一个java的List<T>集合:

例如如下的一个json字符串:

[{"age":1,"id":1,"name":"first"},
{"age":2,"id":2,"name":"second"},
{"age":3,"id":3,"name":"third"}]

这个json字符串中包含的数据可以转化为一个List<People>集合,代码如下:

// 将List的Json字符串转化为List<T>集合
		String listStr = "[{\"age\":1,\"id\":1,\"name\":\"first\"},{\"age\":2,\"id\":2,\"name\":\"second\"},{\"age\":3,\"id\":3,\"name\":\"third\"}]";
		JSONArray jsonArray2 = JSONArray.fromObject(listStr);
		List<People> peopleList2 = (List<People>)JSONArray.toCollection(jsonArray2, People.class);
		for(People peo : peopleList2)
		{
			System.out.println(peo);
		}

7.JSONArray的遍历:

List<People> peopleList = new ArrayList<People>();
		peopleList.add(new People(1,1,"first"));
		peopleList.add(new People(2,2,"second"));
		peopleList.add(new People(3,3,"third"));
		JSONArray jsonArray = JSONArray.fromObject(peopleList);
		// JSONArray的遍历
		for (int i = 0; i < jsonArray.size(); i++) {
			JSONObject jsonObject2 = jsonArray.getJSONObject(i);
			People people1 = (People)jsonObject.toBean(jsonObject2, People.class);
			System.out.println(people1);
		}

 

 

 

 

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/190584.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 无人机新手基础操作教程

    无人机行业的快速发展使得航拍逐渐流行起来。据本人了解无人机可以生产一些GIS数据。1.起飞与降落练习远离无人机,解锁飞控,缓慢推动油门等待无人机起飞,这就是起飞的操作步骤。其中推动油门一定要缓慢,即使已经推动一点距离,电机还没有启动也要慢慢来。降落时,同样需要注意操作顺序:降低油门,使飞行器缓慢的接近地面;离地面约5-250px处稍稍推动油门,降低下降速度;然后再次降低油门直至无人机触地(触底后不得推动油门);油门降到最低,锁定飞控。相对于起飞来说,降落…

    2022年4月1日
    1.0K
  • ubuntu开机进入tty1_ubuntu tty模式

    ubuntu开机进入tty1_ubuntu tty模式1、一个作为宿主机的Linux;本文使用的是RedhatEnterpriseLinux5.4;2、在宿主机上提供一块额外的硬盘作为新系统的存储盘,为了降低复杂度,这里添加使用一块IDE接口的新硬盘;3、Linux内核源码,busybox源码;本文使用的是目前最新版的linux-2.6.34.1和busybox-1.16.1。说明:本文是一个stepbystep的…

    2022年8月12日
    7
  • MDK(keil)工具:如何使用MDK生成bin文件「建议收藏」

    MDK(keil)工具:如何使用MDK生成bin文件「建议收藏」在给开发板烧写程序时,有时候我们会用到bin文件,在使用MDK开发时,我们可以在魔法棒配置->output选项中看到生成hex文件的选项卡,图中标号1所示位置如果需要生成bin文件,就需要我们自己配置,配置方法如下,首先在魔术棒中找到User选项卡,并按照下图所示输入命令fromelf.exe–bin–output”@L.bin””#L”生成的文件名在图一中的红色标号2处设置。…

    2022年10月20日
    2
  • matlab单缝衍射强度分布_matlab双缝衍射曲线图

    matlab单缝衍射强度分布_matlab双缝衍射曲线图基于MATLAB单缝衍射?本科毕业论文(设计)题目基于matlab的单缝衍射和双缝干涉可视化模拟学生姓名学号系别物理学与电子信息工程系年级08级专业物理学指导教师职称完成日期闽江学院毕业论文(设计)诚信声明书本人郑重声明:兹提交的毕业论文(设计)《基于matl…

    2025年8月13日
    2
  • html gridview_美化表格的css样式

    html gridview_美化表格的css样式net中css控制GridView样式.GridViewStyle{       border-right: 2px solid #A7A6AA;    border-bottom: 2px solid #A7A6AA;    border-left: 2px solid white;    border-top: 2px solid whit

    2022年9月24日
    3
  • win10安装ubuntu「建议收藏」

    win10上安装ubuntu为了能更好地学python,本来打算装个双系统,用Linux写python,不过发现双系统切换起来麻烦了点,然后就发现有虚拟机这东西。花费了一些时间,最后成功通过VMwareWorkstationPro14虚拟机安装了ubuntu,在此将安装教程整合一下,供需要者参考。 1.安装VMwareWorkstationPro14虚拟机要安装ubun…

    2022年4月13日
    50

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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