发表于: 2022-06-18 18:54:44

1 244




json-lib可以将Java对象转成json格式的字符串,也可以将Java对象转换成xml格式的文档,

同样可以将json字符串转换成Java对象或是将xml字符串转换成Java对象。



Json,是一种轻量级的数据交换格式,易于阅读、编写,同时也易于机器解析和生成,并有效的提升网络传输效率。

而数据传输是前后端交互的关键,给数据一个统一的格式有利于我们编写和解析数据。所以json在数据交互中有较为广泛的应用。


在Json出现之前,大家都在用xml来传递数据,因为xml是一种纯文本格式,所以适合在网络上交换数据。xml本身并不复杂,

但是加上DTD、XSD等一大堆复杂的规范后,就会很让人头疼。所以在Json出现后,因为其简单、方便,很快就普及了。


Json的语法规则:

数组(Array)用方括号(“[]”)表示。

对象(Object)用大括号(“{}”)表示。

键值对(name/value)组合成数组和对象。


name置于双引号中,value有字符串(在双引号中)、数字(整数/浮点数)、布尔值、null、对象(在花括号中)和数组(在方括号中)。

其中并列的数据用逗号(“,”)分隔。


那么Json生成的方式有哪些呢?为什么推荐使用JsonTaglib来处理Json?

Json生成方式有三种:

① 使用json工具类库转化生成,如FastJson(阿里巴巴)、Gson(谷歌)、Jackson等;

② 使用注解ResponseBody返回java对象或集合,自动转化生成;

③ 使用JsonTaglib在jsp中设置字段或者嵌套生成。


那为什么推荐使用JsonTaglib来处理Json呢?


因为使用JsonTaglib与其他的最大区别就是更加灵活,修改更加方便,只需要在jsp中修改即可,不需要修改controller中的代码。

并且,在项目简单的情况下,controller中的代码简洁度并不明显,但是当项目复杂时,可以很清晰的认识到代码的简洁、易读。

而这其实也就是Json诞生原因之一。



JSONObject是将Java对象转换成一个json的Object形式,JSONArray是将一个Java对象转换成json的Array格式。


1.JSON的2种结构形式

1、键值对形式

示例:

{
"userid": "1111",
"username":"阿雨",
"age": "20",
"mobile": 12363287226,
"interest": ["听音乐"],
"address": "四川 成都"
}

这种结构的JSON数据规则是:一个无序的“‘名称/值’对”集合。一个对象以 {左括号 开始, }右括号 结束。每个“名称”后跟一个 :冒号 ;“‘名称/值’ 对”之间使用 ,逗号 分隔,。


2、数组形式
因为大多数时候大家用的JSON可能都是上面那种key-value形式,所以很多人在讲解JSON的时候总是会忽略数组形式,这一点是需要注意的。

示例:

["pig", 18, "man", "江西省抚州市崇仁县"]


数组形式的JSON数据就是值(value)的有序集合。一个数组以 [左中括号 开始, ]右中括号 结束。值之间使用 ,逗号 分隔。


sp文件代码:

<%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" %>

<!DOCTYPE html>
<html>
<head>
   <meta charset="utf-8">
   <title></title>
</head>
<body>
{
模拟数据:
"userid": "1111",
"username":"阿雨",
"age": "20",
"mobile": 12363287226,
"interest": ["听音乐"],
"address": "四川 成都"
}


<h1>我的第一个 JavaScript</h1>
<p>
   JavaScript 能够对事件作出反应。比如对按钮的点击:
</p>
<button type="button" onclick="alert('欢迎!')">点我!</button>

</body>
</html>



不用JSON Tag-lib直接使用spring返回 json对象  postman返回数据





收获:以上




明天计划:完成接下来的任务。



返回列表 返回列表
评论

    分享到