浅谈请求中数据转换

目录

    • [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
相关推荐
爬山算法3 分钟前
Hibernate(87)如何在安全测试中使用Hibernate?
java·后端·hibernate
数据知道8 分钟前
PostgreSQL实战:详解如何用Python优雅地从PG中存取处理JSON
python·postgresql·json
云姜.15 分钟前
线程和进程的关系
java·linux·jvm
是码龙不是码农17 分钟前
支付防重复下单|5 种幂等性设计方案(从初级到架构级)
java·架构·幂等性
曹牧17 分钟前
Spring Boot:如何在Java Controller中处理POST请求?
java·开发语言
heartbeat..18 分钟前
JVM 性能调优流程实战:从开发规范到生产应急排查
java·运维·jvm·性能优化·设计规范
WeiXiao_Hyy21 分钟前
成为 Top 1% 的工程师
java·开发语言·javascript·经验分享·后端
苏渡苇27 分钟前
优雅应对异常,从“try-catch堆砌”到“设计驱动”
java·后端·设计模式·学习方法·责任链模式
团子的二进制世界34 分钟前
G1垃圾收集器是如何工作的?
java·jvm·算法
long31638 分钟前
Aho-Corasick 模式搜索算法
java·数据结构·spring boot·后端·算法·排序算法