浅谈请求中数据转换

目录

    • [1. 前端 JS 数据类型](#1. 前端 JS 数据类型)
    • [2. JSON 数据类型(数据传输格式)](#2. JSON 数据类型(数据传输格式))
    • [3. 后端 Java 数据类型](#3. 后端 Java 数据类型)
    • [4. 后端序列化框架 Fastjson && Jackson 转换](#4. 后端序列化框架 Fastjson && Jackson 转换)
      • [4.1. JSON 转换 Java](#4.1. JSON 转换 Java)
      • [4.2. Java 转换 JSON](#4.2. Java 转换 JSON)

1. 前端 JS 数据类型

数据类型 示例
String var str = '张三'
Number (数字) var age = 18
Boolean (布尔值) var str = true
Null (null) var a = null
Undefined (未定义) var b = undefined
Symbol let name = Symbol()
Object var car = {name:"Fiat", model:500, color:"white"}
Array (数组) var arr = ['1', '2', '3']
Function (函数) function myFunction(name,job){ alert("Welcome " + name + ", the " + job);}
RegExp (正则) new RegExp("/^1[34578]\d{9}/").test("12376337373736")
Date (时间) var today = new Date()

2. JSON 数据类型(数据传输格式)

数据类型 示例
String (字符串) {"name": "张三"}
Number (数字) {"amount": 16180.45}
Boolean (布尔值) {"isMan": true}
Null (null) {"address": null}
Object (对象) {"class": {"name": "1年级3班", "count": 32}}
Arrray (数组) {"list": [{"name": "张三"}, {"name": "李四"}]}

3. 后端 Java 数据类型

数据类型 示例
Byte (字节型) byte b = 100
Short (短整型) short s = 10
Char (字符型) char c = 'a'
Boolean (布尔型) boolean b = true
Int (整型) int i = 100
Long (长整型) long l = 1234567890123L
Float (单精度浮点) float f = 1.1F
Double (双精度浮点) double d = 1.21D
String (字符串) String name = "张三"
BigDecimal BigDecimal amount = new BigDecimal("1.11111")
Date (时间型) Date date = new Date()

4. 后端序列化框架 Fastjson && Jackson 转换

4.1. JSON 转换 Java

转换前 Fastjson 转换后 Jackson 转换后
String String String
Number Integer: 不超长度的整型 Long:超 Integer 的整型 BigDecimal:小数 Date:时间 Integer: 不超长度的整型 Long:超 Integer 的整型 BigDecimal:小数 Date:时间
Boolean Boolean Boolean
Null Null Null
Array JSONArray ArrayList

4.2. Java 转换 JSON

Fastjson 转换前 Jackson 转换前 转换后
String String String
数字类型 (Byte、Short、Int、Long、Float、Double 等等) 数字类型 (Byte、Short、Int、Long、Float、Double 等等) Number
BigDecimal BigDecimal Number
Date Date Number
Boolean Boolean Boolean
Null Null Null
JSONArray、List、Array、ArrayList 等等 List、Array、ArrayList 等等 Array
相关推荐
TDengine (老段)4 分钟前
TDengine 中的日志系统
java·大数据·数据库·物联网·时序数据库·tdengine·iotdb
不想学习!!5 分钟前
linux之进程控制
java·linux·服务器
美食制作家13 分钟前
【无标题】Threejs第一个3D场景
javascript·three
JhonKI1 小时前
【从零实现Json-Rpc框架】- 项目实现 - 客户端注册主题整合 及 rpc流程示意
c++·qt·网络协议·rpc·json
nlog3n1 小时前
Java外观模式详解
java·开发语言·外观模式
Mryan20051 小时前
SpringBoot项目报错: 缺少 Validation
java·spring boot
HelloRevit1 小时前
React DndKit 实现类似slack 类别、频道拖动调整位置功能
前端·javascript·react.js
SnXJi_2 小时前
开源赋能,双驱协同:纷析云财务与进销存软件助力企业数字化转型
java·gitee·开源·开源软件
ohMyGod_1232 小时前
用React实现一个秒杀倒计时组件
前端·javascript·react.js
eternal__day2 小时前
第三期:深入理解 Spring Web MVC [特殊字符](数据传参+ 特殊字符处理 + 编码问题解析)
java·前端·spring·java-ee·mvc