本文为 SSM 框架系列之 SpringMVC 第四部分:JSON的使用
其它内容的链接如下:
1. 传统 MVC
2. Hello SpringMVC
3. 配置解析
4. JSON的使用
5. AJAX 的使用
6. 拦截器
目录:
1 JSON 的定义
1.1 JSON 的定义
JSON,即 JS 对象标记(JavaScript Object Notation),是一种轻量级的数据交换格式,它本质上是一种文本文件。它的语法要求为:
- 对象表示为键值对,数据由逗号分隔;
- 花括号保存对象;
- 方括号保存数组。
如:
[{
"name": "sharm", "sex": "男"}, {
"name": "jack", "sex": "男"}]
1.2 JSON 的特点
- 采用完全独立于编程语言的文本格式来存储和表示数据;
- 简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言;
- 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。
1.3 JSON 和 JavaScript 对象的区别
JSON 是 JavaScript 对象的字符串表示法,它使用文本表示一个 JS 对象的信息,本质是一个字符串。
var obj = {
a: 'Hello', b: 'World'}; //这是一个 JavaScript 对象,注意键名也是可以使用引号包裹的
var json = "{"a": "Hello", "b": "World"}"; //这是一个 JSON 字符串,本质是一个字符串
1.4 JSON 的作用
前后端分离时代,前端负责渲染后端的数据;而后端负责生成接口,提供数据。而两者之间就通过 JSON 来进行联系。
2 JavaScript 对象与 JSON 的互换
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>JavaScript 对象与 JSON 的互换</title>
</head>
<body>
<!-- script 标签只能双闭合 -->
<script type="text/javascript">
//编写一个 js 的对象
var user = {
name: "sharm",
age: 24,
sex: "男"
};
//将 js 对象转换成 json 字符串
var str = JSON.stringify(user);
console.log(str);
//将 json 字符串转换为 js 对象
var user2 = JSON.parse(str);
console.log(user2.name, user2.age, user2.sex);
</script>
</body>
</html>
在 IDEA 中使用浏览器打开,F12 进入开发者模式,查看控制台输出:

3 后端怎么返回 JSON 文件
再次介绍完整的步骤:
1 新建一个 Module,配置 Web 框架;
① 右键 module,add Web Application Frameworks Support;
②
③:

2 配置 pom.xml 文件;
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>springmvc</artifactId>
<groupId>sharm</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>springmvc-json</artifactId>
<!-- 经过实践证明,这段代码确实是必须要写的 -->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.encoding>UTF-8</maven.compiler.encoding>
<java.version>11</java.version>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.10.0</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc

最低0.47元/天 解锁文章
1万+





