首页 > 其他分享 >Gson与FastJson详解

Gson与FastJson详解

时间:2023-08-17 14:34:02浏览次数:37  
标签:FastJson 转换 对象 json JSON 详解 字符串 Gson

Gson与FastJson详解

Java与JSON

做什么?

将Java中的对象 快速的转换为 JSON格式的字符串.

将JSON格式的字符串, 转换为Java的对象.

Gson

将对象转换为JSON字符串

转换JSON字符串的步骤:

引入JAR包

在需要转换JSON字符串的位置编写如下代码即可:

String json = new Gson().toJSON(要转换的对象);

案例:

Book b = BookDao.find();

String json = new Gson().toJson(b);

System.out.println(json);

将JSON字符串转换为对象

引入JAR包

在需要转换Java对象的位置, 编写如下代码:

对象 = new Gson().fromJson(JSON字符串,对象类型.class);

案例:

String json = “{“id”:1,“name”:“金苹果”,“author”:“李”,“info”:“嘿嘿嘿嘿嘿嘿”,“price”:198.0}”;

Book book = new Gson().fromJson(json, Book.class);

System.out.println(book);

FastJson

将对象转换为JSON字符串

转换JSON字符串的步骤:

引入JAR包

在需要转换JSON字符串的位置编写如下代码即可:

String json=JSON.toJSONString(要转换的对象);

案例:

Book b = BookDao.find();

String json=JSON.toJSONString(b);

System.out.println(json);

将JSON字符串转换为对象

引入JAR包

在需要转换Java对象的位置, 编写如下代码:

类型 对象名=JSON.parseObject(JSON字符串, 类型.class);

List<类型> list=JSON.parseArray(JSON字符串,类型.class);

案例:

String json = “{“id”:1,“name”:“金苹果”,“author”:“李杰”,“info”:“嘿嘿嘿嘿嘿嘿”,“price”:198.0}”;

Book book = JSON.parseObject(json, Book.class);

System.out.println(book);


标签:FastJson,转换,对象,json,JSON,详解,字符串,Gson
From: https://blog.51cto.com/u_16207938/7122391

相关文章

  • toggleClass详解
    toggleClass()是一个jQuery方法,用于在元素之间切换一个或多个类。该方法的语法如下:$(selector).toggleClass(class1,class2,...)selector:表示要切换类的元素选择器。class1,class2,...:要切换的一个或多个类名。该方法的作用是,在被选元素上添加指定的类,如果元素已经有......
  • ConcurrentHashMap 源码详解
    ConcurrentHashMap是Java提供的一个并发散列映射实现,它允许多个线程同时读写而不需要同步整个数据结构。它是线程安全的,并且相比于其他线程安全的Map实现(如Collections.synchronizedMap或Hashtable),它提供了更高的并发性能。以下是ConcurrentHashMap的一些核心特性和相应......
  • DataBinding开始使用以及布局详解
    DataBinding开始使用了解如何为您的开发环境支持使用DataBinding,包括在AndroidStudio中支持数据绑定代码。DataBinding提供了灵活性和广泛的兼容性-它是一个支持库,因此您可以将其用于运行Android4.0(API14级)或更高版本的设备。我们建议在您的项目中使用最新的AndroidGradle插件......
  • 鸿蒙入门开发教程:一文带你详解工具箱元服务的开发流程
    鸿蒙入门开发教程:一文带你详解工具箱元服务的开发流程一,基本概念元服务(原名原子化服务)是一种基于HarmonyOSAPI的全新服务提供方式,以HarmonyOS万能卡片等多种呈现形态,向用户提供更轻量化的服务。具有即用即走、信息外显、服务直达的特性。万能卡片(简称卡片)是一种界面展示形式,可......
  • [BitSail] Connector开发详解系列三:SourceReader
    更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群SourceConnector本文将主要介绍负责数据读取的组件SourceReader:SourceReader每个SourceReader都在独立的线程中执行,只要我们保证SourceSplitCoordinator分配给不同SourceReader的切片没有交集,在S......
  • [BitSail] Connector开发详解系列三:SourceReader
    更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群SourceConnector本文将主要介绍负责数据读取的组件SourceReader:SourceReader每个SourceReader都在独立的线程中执行,只要我们保证SourceSplitCoordinator分配给不同SourceReader的切......
  • Java中Date方法详解
    先进行专栏介绍本专栏是自己学Java的旅途,纯手敲的代码,自己跟着黑马课程学习的,并加入一些自己的理解,对代码和笔记进行适当修改。希望能对大家能有所帮助,同时也是请大家对我进行监督,对我写的代码进行建议,互相学习。Date方法Date类是用于表示日期和时间的类。它提供了一系列的方......
  • ulimit -a详解
    参数描述corefilesizecore文件的最大值为100blocks,datasegsize进程的数据段可以任意大filesize文件可以任意大pendingsignals最多有2047个待处理的信号maxlockedmemory一个任务锁住的物理内存的最大值为32kBmaxmemorysize一个任务的常驻物理内存的最大值......
  • C++之右值引用与完美转发与可变参数模板(万字长文详解)
    C++之右值引用与完美转发与可变参数模板左值引用和右值引用的概念​ 传统的C++语法中就有引用的语法,而C++11中新增了的右值引用语法特性,所以从现在开始我们之前学习的引用就叫做左值引用。无论左值引用还是右值引用,都是给对象取别名。那么到底什么是左值什么是右值呢?难道说赋......
  • $('[id^="heading"]')详解
    $('[id^="heading"]')是一个jQuery选择器,它选择了所有id以"heading"开头的元素。这意味着它会选中所有具有以"heading"开头的id属性的元素。举个例子,假设页面上有以下两个元素:<divid="heading1">...</div><divid="heading2">...</div>通过......