学习 JSON.parseObject 和 JSON.toJSONString 一篇文章就够了
2023-04-18 16:15:24 时间
JSON.parseObject
是将Json字符串转化为相应的对象;
JSON.toJSONString
是将对象转化为Json字符串
两者主要用于前后台的数据传输过程中
使用前需要先导入该包:
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.62</version>
</dependency>
一、JSON.parseObject
将JSON字符串转为Bean对象
Java 对象 Student
@Data
@Accessors(chain = true)
public class Student {
private String name;
private int score;
}
将JSON字符串转为该对象
public class Main {
public static void main(String[] args) {
String jsonStudent = "{name:'yolo',score:90}";
Student student = JSON.parseObject(jsonStudent, Student.class);
System.out.println(student);
}
}
二、JSON.toJSONString
是将对象转化为Json字符串
public class Main {
public static void main(String[] args) {
Student student = new Student().setName("yolo").setScore(98);
String s = JSON.toJSONString(student);
System.out.println(s);
}
}
三、JSON.parseObject 的其他几种使用
示例1:str = “{“name”:“Yolo”,“Address”:“Beijing”}”;
public class Main {
public static void main(String[] args) {
String str = "{"name":"Yolo","Address":"Beijing"}";
JSONObject jsonObject = JSON.parseObject(str);
System.out.println(jsonObject.toString());
System.out.println(jsonObject.getString("name"));
System.out.println(str);
}
}
示例2:str2 = “{“name”:“Yolo”,“Address”:“Beijing”, “data”:{“id”: 123}}”
public class Main {
public static void main(String[] args) {
String str2 = "{"name":"Yolo","Address":"Beijing", "data":{"id": 123}}";
JSONObject jsonObject2 = JSON.parseObject(str2);
System.out.println(jsonObject2.getString("data"));
System.out.println(JSON.parseObject(jsonObject2.getString("data")).getString("id"));
}
}
示例3:str3 = “{“name”:“Yolo”,“Address”:“Beijing”, “data”:[{“id”: 123},{“id”: 345}]}”;
public class Main {
public static void main(String[] args) {
String str3 = "{"name":"Yolo","Address":"Beijing", "data":[{"id": 123},{"id": 345}]}";
JSONObject jsonObject3 = JSON.parseObject(str3);
System.out.println(jsonObject3.toString());
System.out.println(jsonObject3.toJSONString());
System.out.println("data " + jsonObject3.getString("data"));
JSONArray data = JSON.parseArray(jsonObject3.getString("data"));
for (Object d: data) {
System.out.println(d);
System.out.println(JSON.parseObject(d.toString()).getString("id"));
System.out.println(JSON.parseObject(String.valueOf(d)).getString("id"));
}
}
}
相关文章
- GNN落地不再难,一文总结高效GNN和可扩展图表示学习最新进展
- 总结机器学习三个时代的算力规律:大模型的出现改变了什么?
- 喜报|CKafka荣获可信云消息队列服务稳定性先进级认证
- Kaggle大神们都在用什么语言、框架、模型?这里有一份详细统计
- 为什么深度学习是非参数的?
- 机器学习、深度学习和强化学习的关系和区别是什么?
- 谈谈腾讯和百度的C++开发环境
- 2022,人工智能开启未来新密码
- Adobe把GAN搞成了缝合怪,凭空P出1024分辨率全身人像
- 想让机器人跑得更快,让人工智能来控制
- 好好学react源码然后惊艳所有人
- 清华大学崔鹏:因果推断技术最新的发展趋势
- 面向MLOps的机器学习设计模式
- hyperf学习过程~~~延展学习积累
- 南极冰盖数据集不如火星?借助无人机和机器学习,斯坦福学者着力挖掘最有价值数据
- go-zero源码学习
- CVPR最有趣论文 | 再模糊的照片AI都可以可以恢复
- Michael Bronstein 最新几何深度学习综述:超越 WL 和原始消息传递的 GNN
- commanderJs与InquirerJs学习笔记
- 迭代器(Iterator)和生成器(Generator)-学习