浅谈请求中数据转换

目录

    • [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
相关推荐
乌萨奇也要立志学C++几秒前
【Linux】线程同步 条件变量精讲 + 生产者消费者模型完整实现
java·linux·运维
澄澈青空~几秒前
病毒木马侵入系统内核的底层运作机理
java·linux·服务器
古迪红尘6 分钟前
el-tree 采用懒加载方式,怎么初始化就显示根节点和下级节点
前端·javascript·vue.js
Aotman_13 分钟前
Vue el-table 字段自定义排序(进阶)
前端·javascript·vue.js·elementui·前端框架·ecmascript
lkbhua莱克瓦2415 分钟前
进阶-存储对象2-存储过程上
java·开发语言·数据库·sql·mysql
西维18 分钟前
大屏、看板必备的丝滑技巧 — 数字滚动
前端·javascript·动效
杨杨杨大侠19 分钟前
深入理解 LLVM:从编译器原理到 JIT 实战
java·jvm·编译器
前端达人31 分钟前
2026年React数据获取的第六层:从自己写缓存到用React Query——减少100行代码的秘诀
前端·javascript·react.js·缓存·前端框架
2501_9481226333 分钟前
React Native for OpenHarmony 实战:Steam 资讯 App 通知设置实现
javascript·react native·react.js·游戏·ecmascript·harmonyos