鸿蒙开发之gson解析

news/2024/7/21 8:33:39 标签: harmonyos, 华为

作为老牌的Java程序员,几乎每个项目都逃不掉fastjson/gson等三方库。那么在OpenHarmony/HarmonyOS应用开发中,做数据解析时能不能使用fastjson/gson三方库呢?于是我搜索了一下,其实在arkts开发过程中也是可以使用JS里自带的JSONparse和JSONstringify方法来实现JSON和对象转换的。并且在早期的版本中还提供了一个开源的三方库OpenHarmony-SIG/ohos_gson。有人做过验证ohos_gson与JSON的转换的时间评测,结果是ohos_gson花费的时间是JSON的20倍以上。所以,为了避免更多的应用入坑,因此ohos_gson到目前一直没发布到ohpm中心仓。

那有些同学还是会问,说JSON并不能像fastjson/gson满足所有的需求,主要是以下几问题:

  • JSON.parse转过来的对象,不能带方法。比如class 中有个getName(){return this.firstName + this.lastName},这个方法就不能调用
  • JSON接收的json字段名称必须与本地对象属性名一致,能否重命名。
  • 对象转JSON的时候,能否控制某些敏感字段不对外暴露。
  • 属性是map或其他复杂结构体时,无法转换实现json与对象的互转。

针对上述的问题,我尝试Google搜索了一把,最终找到了class-transformer来解决。这个库本身在OpenHarmony/HarmonyOS上正常跑,一行代码不用改,在三方库中心仓上可以直接下载到最新的0.51版本。


http://www.niftyadmin.cn/n/5412479.html

相关文章

算法沉淀——动态规划之其它背包问题与卡特兰数(leetcode真题剖析)

算法沉淀——动态规划之其它背包问题与卡特兰数 二维费用的背包问题01.一和零02.盈利计划 似包非包组合总和 Ⅳ 卡特兰数不同的二叉搜索树 二维费用的背包问题 01.一和零 题目链接:https://leetcode.cn/problems/ones-and-zeroes/ 给你一个二进制字符串数组 strs…

如何提高项目成功率?分享20 种项目管理工具、技术和软件

本文将分享20种项目管理常用的工具、技术和软件,比如项目管理软件 PingCode、Worktile、Redmine、Jira、SAP、PrimaveraSystems等;项目计划阶段工具和技术WBS、甘特图、PERT图、风险评估矩阵等等。 项目管理是确保项目成功交付的关键,它涉及到…

SSM+MySQL替换探索 openGauss对比postgresql12

SSM 介绍 SSM(SpringSpringMVCMyBatis)框架集由 Spring、MyBatis 两个开源框架整合而成(SpringMVC 是 Spring 中的部分内容),常作为数据源较简单的 web 项目的框架。 Spring Spring 就像是整个项目中装配 bean 的大…

如何远程SSH连接在家的服务器主机

当您需要通过SSH远程连接到家里的服务器主机时,以下是更详细的实施步骤: 1. 确保服务器主机已开启SSH服务 安装SSH服务:首先,确保您的服务器主机上安装了SSH服务。根据您的操作系统,您可以使用相应的包管理器来安装。…

uniapp 开发app,如何使用模拟器

1、开发app ,设置模拟器 (uniapp 如何设置模拟器) https://blog.csdn.net/sweetsoft/article/details/130727169 2、运行到模拟器 注意:1、模拟器所在的位置:“D:\Program Files\Nox\bin”,在该文件夹下找…

什么是IP白名单?为什么要设置IP白名单?

在互联网的世界里,IP地址是每个设备与网络进行通信的关键标识。然而,并不是所有的IP地址都可以无限制地访问所有网络资源。为了保障网络安全和资源管理,很多网站和服务会设置IP白名单。本文将详细介绍IP白名单的定义、作用以及为什么要设置IP…

word打字后面的字消失是怎么回事

在使用Microsoft Word进行文档编辑时,很多用户可能会遇到一个令人困惑的问题:当在文档中打字时,后面的字却莫名其妙地消失了。这种情况不仅影响了编辑效率,还可能导致重要数据的丢失。那么,这一现象背后的原因是什么&a…

虚拟机 CentOS 7 安装

1. 新建虚拟机 2. 选择ISO映像文件 3. 开启虚拟机 进入后回车 等待至此页面,进行配置 软件选择 图形化界面(可选择是否安装) 系统分区 按需求分配大小 4. 开始安装 配置完毕后开始安装 ROOT密码 创建用户 安装完重启即可 5. 启动虚拟机 输入刚…