浅谈请求中数据转换
目录
- 1. 前端 JS 数据类型
- 2. JSON 数据类型(数据传输格式)
- 3. 后端 Java 数据类型
- 4. 后端序列化框架 Fastjson && Jackson 转换
- 4.1. JSON 转换 Java
- 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 |
相关文章:
浅谈请求中数据转换
目录 1. 前端 JS 数据类型2. JSON 数据类型(数据传输格式)3. 后端 Java 数据类型4. 后端序列化框架 Fastjson && Jackson 转换4.1. JSON 转换 Java4.2. Java 转换 JSON 1. 前端 JS 数据类型 数据类型示例Stringvar str 张三Number (数字)var a…...
Flutter学习:从搭建环境到运行
一、开发环境的搭建 本文所示内容都是在Windows系统下进行的。 1、下载 Flutter SDK Flutter 官网(https://docs.flutter.cn/release/archive?tabwindows) 或者通过 git clone -b master https://github.com/flutter/flutter.git 下载 2、配置环境…...
sheng的学习笔记-AI-聚类(Clustering)
ai目录 sheng的学习笔记-AI目录-CSDN博客 基础知识 什么是聚类 在“无监督学习”(unsupervised learning)中,训练样本的标记信息是未知的,目标是通过对无标记训练样本的学习来揭示数据的内在性质及规律,为进一步的数据分析提供基础。此类学…...
从0构建一个录制UI测试工具
很多UI自动化测试工具都具备录制UI自动化测试的能力,例如playwright,可以通过playwright vscode插件完成录制,如下图所示,当选择录制脚本时,会打开一个浏览器,在浏览器中输入被测应用url,用户在…...
代码随想录算法训练营第五十一天|LeetCode72 编辑距离、LeetCode647 回文子串、LeetCode516 最长回文子序列、动态规划的小总结
题1: 指路:72. 编辑距离 - 力扣(LeetCode) 思路与代码: 关于dp数组的定义,我们定义一个二维数组dp[i][j],其含义为以i-1为结尾的字符串word1和以j-1为结尾的字符串word2,最近编辑…...
sessionStorage 能在多个标签页之间共享数据吗?
🧑💻 写在开头 点赞 收藏 学会🤣🤣🤣 最近,我的一个朋友在面试中被一个关于 sessionStorage 的问题难住了。我们来聊聊这个话题。 sessionStorage 能在多个标签页之间共享数据吗? 在回答…...
鸿蒙期末项目(完结)
两天仅睡3个小时的努力奋斗之下,终于写完了这个无比拉跨的项目,最后一篇博客总体展示一下本项目运行效果兼测试,随后就是答辩被同学乱沙(悲 刚打开软件,会看到如下欢迎界面,介绍本app的功能和优点 随后我们…...
【Linux】对共享库加载问题的深入理解——基本原理概述
原理概述 【linux】详解——库-CSDN博客 共享库被加载后,系统会为该共享库创建一个结构,这个结构体中的字段描述了库的各种属性。在内存中可能会加载很多库,每一个库都用一个结构体描述。把这些结构体用一些数据结构管理起来,系…...
easyui的topjui前端框架使用指南
博主今天也是第一次点开easyui的商业搜权页面,之前虽然一直在使用easyui前端框架(easyui是我最喜欢的前端ui框架),但是都是使用的免费版。 然后就发现了easyui的开发公司居然基于easyui开发出了一个新的前端框架,于是我…...
Java中的程序异常处理介绍
一、异常处理机制 Java提供了更加优秀的解决办法:异常处理机制。 异常处理机制能让程序在异常发生时,按照代码的预先设定的异常处理逻辑,针对性地处理异常,让程序尽最大可能恢复正常并继续执行,且保持代码的清晰。 Ja…...
Gradle学习-3 Gradle插件
1、Gredle插件是什么 Gradle插件是用于扩展和增强Gradle构建系统的功能模块通过插件,Gradle可以执行各种构建任务,如编译代码、打包应用、运行测试等 Gradle插件主要分为:二进制插件、脚本插件 二进制插件二进制插件是预编译的、可以复用的…...
百度文心智能体,创建属于自己的智能体应用
百度文心智能体平台为你开启。百度文心智能体平台,创建属于自己的智能体应用。百度文心智能体平台是百度旗下的智能AI平台,集成了先进的自然语言处理技术和人工智能技术,可以用来创建属于自己的智能体应用,访问官网链接࿱…...
【软件测试】白盒测试与接口测试详解
🍅 视频学习:文末有免费的配套视频可观看 🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 一、什么是白盒测试 白盒测试是一种测试策略,这种策略允许我们检查程序的内部结构&a…...
【SpringBoot Web框架实战教程】03 SpingBoot 获取 http 请求参数
不积跬步,无以至千里;不积小流,无以成江海。大家好,我是闲鹤,微信:xxh_1459,十多年开发、架构经验,先后在华为、迅雷服役过,也在高校从事教学3年;目前已创业了…...
Mac14.1.2 M1芯片免费读写ntfs硬盘-亲测有效,免费!!!
1. 安装homebrew 打开终端,使用以下命令 /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)" 根据提示逐步完成即可,镜像选择我这里都是保持1的选项。 2. 重启终端 安装完成homebrew后,需…...
手写SpringMVC之ApplicationContextListener
什么是Spring MVC? Spring Web MVC是基于Servlet API构建的原始Web框架,从一开始就包含在Spring Framework中。正式名称“Spring Web MVC”来自其源模块的名称( spring-webmvc ),但它通常被称为“Spring MVC”。 手写…...
Paimon 在汽车之家的业务实践
汽车之家基于Paimon的实践 摘要:本文分享自汽车之家的王刚、范文、李乾⽼师。介绍了汽车之家基于 Paimon 的一些实践,和一些背景。内容主要为以下四部分: 一、背景 二、业务实践 三、paimon 优化实践 四、未来规划 一、背景 在使用Paimon之前…...
2024-06-27 问AI: 介绍一下 LLM building process
文心一言 LLM(Large Language Model,大语言模型)的构建过程是一个复杂且资源密集的任务,涉及多个关键步骤。以下是LLM构建过程的主要阶段,以及每个阶段的一些关键考虑因素: 数据收集与预处理:…...
猫也有自动厕所上了吗?自费分享好用的智能猫砂盆,看完不亏。
还有人在用普通猫砂盘吗?之前我也是用的普通猫砂盘,但我发现只要我在上班时间,我就无法顾忌到小猫的便便,但又不想回家就闻到一股臭味,更何况现在夏天也快到了,便便残留一会就会发酵发臭,导致生…...
《分析模式》漫谈07-怎样把一张图从不严谨改到严谨
DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 下图是《分析模式》原书第2章的图2.10,里面有一些错误和考虑不周的地方: 2004中译本和2020中译本的翻译如下: 基本上都是照搬,没有改过…...
纯干货丨知乎广告投放流程和避坑攻略
精准有效的广告投放企业获客的关键,知乎作为中国最大的知识分享平台,拥有着高质量的用户群体和高度的用户粘性,为广告主提供了独一无二的品牌传播与产品推广平台。然而,如何在知乎上高效、精准地进行广告投放,避免不必…...
mac 安装mysql启动报错 ERROR!The server quit without update PID file
发现问题: mac安装mysql初次启动报错: 一般出现这种问题,大多是文件夹权限,或者以前安装mysql卸载不干净导致。首先需要先确定问题出在哪?根据提示我们可以打开mysql的启动目录,查看启动日志。 问题解决&a…...
TypeScrip环境安装与基础
TS环境安装与基础 文章目录 一、什么是TypeScript(微软开发的)二、TypeScript的特性三、环境安装node安装配置详解(常用:outDir,strict ) 四、注释方式五、数据类型 一、什么是TypeScript(微软开…...
6.27学习总结
一、高数 1、斯托克斯公式(曲线<->曲面):看清顺时针(负)/逆时针(正) 2、曲面方程变二重积分: 前、上、右:正; 后、下、左:负; 3…...
选择第三方软件测试机构做验收测试的好处简析
企事业单位在自行开发完软件系统或委托软件开发公司生产软件之后,有一个必经流程就是验收测试,以验证该产品是否符合用户需求、是否可以上线。为了客观评估所委托生产的软件质量,第三方软件测试机构往往成为企事业单位做验收测试的首选&#…...
【图书推荐】CPython设计与实现“适合所有Python工程师阅读的书籍”
目录 一、图书推荐 |【CPython设计与实现】 1.1、书籍介绍 1.2、内容简介 1.3、适合哪些人阅读 1.4、作者译者简介 1.5、购买链接 一、图书推荐 |【CPython设计与实现】 "深入Python核心,揭秘CPython的设计智慧!📖 对于每一位热衷…...
原创作品—医疗行业软件界面UI、交互设计
在医疗行业大屏UI设计中,首要的是以用户为中心,深入理解医生、护士、管理层等用户群体的具体需求和工作流程。大屏设计应直观展示关键医疗数据、患者信息、设备状态等,确保用户能够迅速、准确地获取所需信息。同时,功能布局应合理…...
[C++深入] --- vector容器浅析
vector是一个封装了动态大小数组的顺序容器,它能够存放各种类型的对象。 可以删除元素、可以插入元素、可以查找元素,做这些工作我们无需管理容器内存。容器内存管理,这种脏活累活全部交由vector管理。了解一下vector的内存管理策略,能够更加充分的利用内存。 1 vector内存…...
用MySQL和navicatpremium做一个项目—(财务管理系统)。
1 ER图缩小的话怕你们看不清,所以截了两张图 2 vsdx绘图结果 3DDL和DML,都有点长分了好多次上传,慢慢看 DDL -- 用户表 CREATE TABLE users (user_id INT AUTO_INCREMENT PRIMARY KEY COMMENT 用户ID,username VARCHAR(50) NOT NULL UNIQUE COMMENT 用…...
Jenkins教程-5-gitee自动化测试任务构建
上一小节我们学习了Jenkins构建gitlab自动化测试任务的方法,本小节我们讲解一下gitee自动化测试任务的构建方法。 接下来我们以windows系统为例,讲解一下构建实际自动化测试任务的具体步骤。 安装git和gitee插件 点击进入Jenkins插件管理页面 安装完插…...
固原网站建设/域名查询系统
一、SDK的安装 安装过程中不要插相机,且一定注意SDK和realsense_ros之间的版本对应关系 我这里使用的版本是2.42.0,对应成功的包,可以到该链接下直接下载,https://download.csdn.net/download/YOULANSHENGMENG/87672407 然后再N…...
成都高新网站建设/免费无代码开发平台
# -*- coding:utf-8 -*-题目描述 操作给定的二叉树,输出二叉树的三种遍历结果前序遍历:根左右 8 6 5 7 10 9 11 第一位是根节点 中序遍历:左根右 5 6 7 8 9 10 11 中间一位是根节点 后续遍历:左右根 5 7 6 9 10 1…...
手机网站开发 教程/seo就是搜索引擎广告
温习一下这些天学习的CLR编程,存储过程,函数。 编写CLR的存储过程,运行起来的效率,果然比普通的SQL语句,存储过程或是函数均高。以后专案需求,或是执行效率较高的SQL,得写成CLR程序,…...
网站开发工程师职业定位/新网站推广最直接的方法
20150527.C语言—1人已学习 课程介绍 尹成老师带你步入 C 语言的殿堂,讲课生动风趣、深入浅出,全套视频内容充实,整个教程以 C 语言为核心,完整精彩的演练了数据结构、算法、设计模式、数据库、大数据高并发检索、文件重定向、…...
温州网络公司网站建设/恢复正常百度
一、前言我们在使用爬虫程序爬取网页时,一般对于静态页面的爬取是比较简单的,之前写过挺多的案例。但是对于使用js动态加载的页面如何爬取呢?对于动态js页面的爬取有以下几种爬取的方式:通过seleniumphantomjs实现。phantomjs是一…...
wordpress手机适应/今日新闻7月1日
JavaFX2的ListView中的多选没有提供鼠标拖动选择的功能,同时按下Ctrl和Shift后连续的区间选中也不支持,以下代码用于处理这两个问题,细节见代码注释: import com.sun.javafx.scene.control.skin.ListViewSkin; import com.sun.jav…...