系列文章目录
文章目录
- 系列文章目录
- 前言
前言
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。
首先要说明一点,SpringMVC进行JSON序列化处理时,使用的工具包是Jackson。
与其他 Java 的 json 的框架 Gson 等相比, Jackson 解析大的 json 文件速度比较快;Jackson 运行时占用内存比较低,性能比较好;Jackson 有灵活的 API,可以很容易进行扩展和定制。
Jackson 的 1.x 版本的包名是 org.codehaus.jackson ,当升级到 2.x 版本时,包名变为 com.fasterxml.jackson,本文讨论的内容是基于最新的 Jackson 的 2.9.1 版本。
Jackson 的核心模块由三部分组成。
jackson-core,核心包,提供基于"流模式"解析的相关 API,它包括 JsonPaser 和 JsonGenerator。Jackson 内部实现正是通过高性能的流模式 API 的 JsonGenerator 和 JsonParser 来生成和解析 json。
jackson-annotations,注解包,提供标准注解功能;
jackson-databind ,数据绑定包, 提供基于"对象绑定" 解析的相关 API ( ObjectMapper ) 和"树模型" 解析的相关 API (JsonNode);基于"对象绑定" 解析的 API 和"树模型"解析的 API 依赖基于"流模式"解析的 API。
当我们开发一个RestController接口时,如果返回的是对象,那么SpringMVC会进行JSON处理
表:
CREATE TABLE `sp_boot_user` (`id` int(11) NOT NULL AUTO_INCREMENT,`u_name` varchar(255) CHARACTER SET latin1 DEFAULT '',`create_time` datetime DEFAULT NULL,`balance_point` decimal(10,0) DEFAULT NULL,`total_point` decimal(10,0) DEFAULT NULL,`address` varchar(255) CHARACTER SET latin1 DEFAULT '',PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
INSERT INTO `sp_boot_user` VALUES ('1', '1', '2023-04-19 22:02:02', '100', '100', '1');
INSERT INTO `sp_boot_user` VALUES