Scala 中 fastjson Object转JsonObject

Scala 中 fastjson Object转JsonObjectScala中,fastjson的Object转JsonObject相比于Java有些差别,不支持像Java一样强转。//java中Object转JsonObjectJSONObjectjsonObject=(JSONObject)JSON.toJSON(eventBean);导包<!–阿里巴巴开源json解析框架–><dep…

大家好,又见面了,我是你们的朋友全栈君。

Scala中,fastjson的Object转JsonObject相比于Java有些差别,不支持像Java一样强转。

// java中Object转JsonObject
JSONObject jsonObject = (JSONObject) JSON.toJSON(eventBean);

导包 

    <!--阿里巴巴开源json解析框架-->
    <dependency>
      <groupId>com.alibaba</groupId>
      <artifactId>fastjson</artifactId>
      <version>1.2.58</version>
    </dependency>

用法

// 1
val str = JSON.toJSON(eventBean).toString
val eventJson = JSON.parseObject(str)

// 2
val str = JSON.toJSONString(eventBean,SerializerFeature.WriteMapNullValue)
val eventJson = JSON.parseObject(str)

// 3
val eventJson = JSON.toJSON(eventBean).asInstanceOf[JSONObject]

 Bean类

import scala.beans.BeanProperty

class EventBean extends Serializable {
  @BeanProperty var event_time : String = _
  @BeanProperty var event_name : String = _
}

另外

JSONObject内部使用HashMap进行排序,所以输出结果按Key的ASCII码排序显示。要按照put顺序进行排序,可以设置参数true。

val packJson = new JSONObject(true)
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/135845.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • usb调试授权窗口出不来_usb调试是什么意思

    usb调试授权窗口出不来_usb调试是什么意思前段时间在玩Vysor这个Chrome扩展时遇到的一个问题:就是我在Chrome安装了Vysor扩展,但是Vysor跟我的手机老是连不上,提示我要开USB调试模式,但我的手机USB调试模式早已经打开,而且也选过“永久性授权”。-关闭USB调试再开也不行-更改连接方式也不行(MTP/PTP)-断开跟PC链接,然后撤销所有授权,再连上PC,也不见有弹出“USB调试…

    2022年9月2日
    7
  • 浅谈CICD持续集成、持续部署的流程

    浅谈CICD持续集成、持续部署的流程Jenkins是一个比较流行的持续集成工具GitLab是存储镜像的镜像仓库由客户端将代码push推送到git仓库,gitlab上配置了一个webHook的东西可以触发Jenkins的构建。进入到Jenkins虚线范围内,它所做的事情非常多,从mvn构建代码,对代码进行静态分析,做单元测试,测试通过之后就可以build镜像,镜像构建成功后就把镜像push推送到Harbor镜像仓库中,镜像push…

    2022年6月11日
    30
  • java基础之java输入输出语句[通俗易懂]

    java基础之java输入输出语句[通俗易懂]1、使用Scanner使用时需要引入包importjava.util.Scanner;首先定义Scanner对象Java基础学习:java输入输出语句比如:Java基础学习:java输入输出语句2、使用BufferedReader用前需要引入importjava.io.Reader;Java基础学习:java输入输出语句比如:Java基础学习:java输入输出语句应该注意的是:Java把从键盘输入的数据一律看作是字符串,因此若要从键盘输入并让系统认可是数值型数据,必须经过转换。

    2022年5月25日
    37
  • 宝塔分销源码_云进销存ERP开发教程

    宝塔分销源码_云进销存ERP开发教程大家好啊,我是测评君,欢迎来到web测评。本期给大家带来一套电商ERP进销存系统源码。运行环境服务器宝塔面板PHP5.6Mysql5.6LinuxCentos7以上文字教程下载源码,宝塔添加一个站点,创建一个数据库,导入数据库文件目录下的taoydm.sql修改数据库链接文件application\config\database.php(记得不要用记事本修改,否则可能会出现验证码显示不了问题,建议用Notepad++)压缩codes目录下的源码上传到宝塔新建网站的根目录后解压缩默认后

    2022年9月20日
    3
  • linux17:时间间隔计算脚本练习——距离你的生日还有多少天

    linux17:时间间隔计算脚本练习——距离你的生日还有多少天需求距离一个未来的日子还有多少天距离一个过去的日子过去多少天#!/bin/bash#name——timeDistance.sh#function#input a date, to calculate how many days to this day#2022.1.18 daxiongread -p “please input your date like YYYYMMDD ex>20150716 : ” date2#test whether or not have

    2022年8月11日
    7
  • [LeetCode] Wildcard Matching 外卡匹配

    [LeetCode] Wildcard Matching 外卡匹配

    2021年9月5日
    52

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号