Json数据格式

json是一种轻量级的前端后端以及网络传输的数据交换格式,就是一串字符
串,只不过元素会使用特定的符号标注。 {} 双括号表示对象,[] 中括号表示数
组,”” 双引号内是属性或值,: 冒号表示后者是前者的值(这个值可以是字符
串、数字、也可以是另一个数组或对象)。也就是说在后端可以把一个字符串,
然后通过json来转换成特定的字符串传到前端去
json的几种格式
a.一个JSON对象——JSONObject
简单点的:var json={"name":"张三" , "age":18 };
复杂一点的:var json={"name":"张三", "age"=18"address":{"street":"湖南", "city":长沙","country":"中国"}};
b.一个JSON数组——JSONArray
简单点的:
var json=[{"name":"张三" , "age":18 },{"name":"李四" , "age":20 }];
复杂一点的:
[
{"name":"张三", "age"=18, "address":{"street":"湖南", "city":"长 沙","country":"中国"}},
{"name":"李四", "age"=20, "address":{"street":"湖南", "city":"张家 界","country":"中国"}}
]
c.还有一种结构
var json={"abc":[{"name":"txt1"},{"name","txt2"}]};

1.下载以下相关jar包
2.加载包:

commons-beanutils-1.9.3.jar,commons-collections-3.2.2.jar,
commons-lang-2.6.jar,commons-logging-1.2.jar,ezmorph-1.0.6.jar,
json-lib-2.4-jdk15.jar,commons-io-2.6.jar

3.将javaBean和Map转换成Json

Person person = new Person("mb", 12);
//JSONObject json = new JSONObject();
//javaBean-->json
//json = json.fromObject(person);
Map<String,String> map = new HashMap<>();
map.put("name", "mxb");
JSONObject js = new JSONObject();
js = js.fromObject(map); //Map-->json

4.利用commons.io-jar中的FileUtiles将文件转换为字符串

String str=FileUtils.readFileToString(
new File("C:\\Users\\痛吻\\eclipse-workspace\\TestJson\\src\\lll\\per.json"));
JSONObject j = new JSONObject();
j = j.fromObject(str);

5.Map–>json文件

Map<String, Person> map = new HashMap<>();
Person p1 = new Person("zs", 21);
Person p2 = new Person("ls", 22);
Person p3 = new Person("ww", 23);
map.put("zs", p1);
map.put("ls", p2);
map.put("ww", p3);
//map-->json
JSONObject json = new JSONObject();
json=json.fromObject(map);
//生存json文件
Writer writer = new FileWriter("D:\\p.txt");
json.write(writer);//将内容写入p.txt
writer.close();//关闭流

6.jsonArray:

[ {"name":"zs","age":"21"},{"name":"ls","age":"33"} ]
String jsonArray = "[{\"name\":\"zs\",\"age\":\"21\"},{\"name\":\"ls\",\"age\":\"33\"}]";
//String格式的字符数组-->json数组
JSONArray array = new JSONArray();
array = array.fromObject(jsonArray);
posted @   isalo  阅读(191)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示