JSON交互处理

目录

一、什么是JSON

二、JSON和JavaScript对象互转

​三、Controller返回JSON数据

[3.1 使用Jackson](#3.1 使用Jackson)

编写Controller

[1. 一个对象](#1. 一个对象)

[2. 多个对象](#2. 多个对象)

[3. 输出时间对象](#3. 输出时间对象)

[4. 优化:抽取为工具类](#4. 优化:抽取为工具类)


一、什么是JSON

Json是JavaScript对象的字符串表示法 ,它用文本表示一个JS对象的信息,本质是一个字符串

前后端分离时代:

后端部署后端,提供接口,提供数据;

Json

前端独立部署,负责渲染后端的数据

二、JSON和JavaScript对象互转

JSON字符串 -> JavaScript对象,使用JSON.parse()方法

JavaScript对象 -> JSON字符串,使用JSON.stringify()方法

测试代码:

在IDEA中使用浏览器打开,查看控制台输出!

三、Controller返回JSON数据

1、Jackson

2、fastjson(阿里巴巴)

3.1 使用Jackson

1、导入jar包

XML 复制代码
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>2.13.0</version>
        </dependency>

2、配置SpringMVC需要的配置(web.xml、springmvc-servlet.xml)

3、编写一个实体类

4、编写Controller

编写Controller

  • 方法一:@Controller和@ResponseBody配合使用
  • 方法二:直接在类上使用@RestController(推荐)
  • 两者的作用:不会跳转视图解析器,而是返回字符串

Jackson:

  1. 创建Jackson的对象映射器(ObjectMapper),用来解析数据
  2. 将对象解析成为json格式(writeValueAsString()方法)
1. 一个对象
2. 多个对象
3. 输出时间对象
  • 默认的日期格式会变成一个数字,是1970年1月1日到当前日期的毫秒数
  • Jackson默认把时间转换成 timestamps形式

解决方案:取消timestamps形式,自定义时间格式

4. 优化:抽取为工具类

使用工具类后,代码更加简洁了!

相关推荐
Bill FANG31 分钟前
从原生Java NIO到Netty重构:充电桩Socket服务端高性能改造实战
java·重构·nio
2601_9557594132 分钟前
Claude API 成本审计:该看哪些指标,怎么分析更靠谱
java
带刺的坐椅42 分钟前
跳出 Fatjar 的束缚:Solon 插件的体外扩展(E-Spi)与热插拔(H-Spi)
java·jar·solon·plugin·fatjar
宁之明起(B服)1 小时前
Java 反序列化漏洞-xmldecoder/SnakeYAM
java·开发语言
禾高网络1 小时前
开启环保新潮流:回收小程序系统功能介绍
java·大数据·小程序
deviant-ART1 小时前
java stream 的 findFirst 及 findAny 方法遇到 null 元素时会出现 NullPointerException
java·开发语言
oier_Asad.Chen1 小时前
【OI学习笔记】Floyed-Warshall算法解决传递闭包问题
c++·笔记·学习·算法·图论·最短路·传递闭包
鱼听禅2 小时前
C#学习笔记-添加编译参数到程序集自动更新程序编译时间
笔记·学习·c#
IDIOT___IDIOT2 小时前
JSON-RPC 2.0 与 MCP 协议:从消息格式到进程通信 大模型MCP
rpc·大模型·json·agent·mcp
香菜TTT2 小时前
LangChain框架_学习笔记
笔记·学习·langchain