深入浅析Java常用的格式化Json工具类

扩展:Java常用工具类汇总

前置条件

导入以下 jar

<dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.75</version>
        </dependency>

        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.11</version>
        </dependency>

一、数组格式json转成 隔开的字符串

业务场景

多选项时,前端一般传入数组包裹的数据。["灭火器","消防栓","泡沫"]

我们保存是没有问题,但是再返给前端时,前端需要再做处理才能正常渲染,不然格式就不对了!

所以我们可以在保存的时候做上一层处理

代码如下:

	public static String ArrayToStr(String array){
        List<String> arrList = JSONArray.parseArray(array, String.class);
        return StringUtils.strip(arrList.toString(),"[]").replace(" ","");
    }

执行结果如下:

二、String转List<对象>

我们查询数据库的时候,有的数据格式可能是这样的:

[{"name":"丁大大","age":"23","like":"钓鱼"},{"name":"面条","age":"22","like":"吃饭"}]

数组包对象的形式,假如我们需要对其进行一定的业务处理,则需要将格式作一个转换

代码如下:

public static List<Map<String,Object>> JsonToList(String json){
        return (List<Map<String, Object>>) JSONArray.parse(json);
    }

执行结果:

三、String转Map

数据格式:

{"name":"丁大大","age":"23","like":"钓鱼"}

代码如下:

public static Map<String,Object> JsonToMap(String json){
        return JSONObject.parseObject(json);
    }

执行结果:


到此这篇关于Java常用的格式化Json工具类的文章就介绍到这了,更多相关Java Json工具类内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Java实现操作JSON的便捷工具类完整实例【重写Google的Gson】

    本文实例讲述了Java实现操作JSON的便捷工具类.分享给大家供大家参考,具体如下: 对于JSON数据格式的处理,自开发Java以来,已用过多种JSON的开源工具,用得最好,也用得最High的恐怕要属Google的Gson了. 特别为它写了一个工具类,放入常备工具中,方便使用.下面是为GSON 1.5版本重写的工具类. 依赖包: slf4j-api-1.6.0.jar slf4j-log4j12-1.6.0.jar log4j-1.2.15.jar gson-1.5.jar /** * Copy

  • Java中JSON处理工具类使用详解

    本文实例为大家分享了JSON处理工具类的具体代码,供大家参考,具体内容如下 import java.io.IOException; import java.util.Date; import java.util.HashMap; import java.util.Map; import javax.servlet.http.HttpServletResponse; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.seri

  • Java使用DateTimeFormatter格式化输入的日期时间

    要求: 用DateTimeFormatter实现: 用扫描器获取输入的时间(年月日时分),这个时间的格式是常用的格式,然后格式化这个时间,把格式化的时间输出到控制台,可以在控制台重复输入时间.格式化的时间参考企业微信聊天记录的展示时间 分析: 1.时间的常用格式为: xxxx-xx-xx xx:xx xxxx/xx/xx xx:xx xxxx.xx.xx xx:xx 等格式 2.微信显式时间格式为: 今天显式: 00:01 - 23:59 ; 昨天显式: 昨天 01:01 ; 前天显式: 周几

  • Java实现的JSONUtil工具类与用法示例

    本文实例讲述了Java实现的JSONUtil工具类与用法.分享给大家供大家参考,具体如下: import java.util.HashMap; import java.util.Map; import com.alibaba.druid.util.StringUtils; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; public class JSONUtils { /** * Bean对象转J

  • Java使用DateTimeFormatter实现格式化时间

    用扫描器获取输入的时间(年月日时分),这个时间的格式是常用的格式,然后格式化这个时间,把格式化的时间输出到控制台,可以在控制台重复输入时间.格式化的时间参考企业微信聊天记录的展示时间.用DateTimeFormatter实现,功能如下: 同年: 不同年: 同月:月日+上午/下午+时分 同年不同月:月日+时分 今天:上午/下午+时分 明天:明天+上午/下午+时分 昨天:昨天+上午/下午+时分 包括今天在内的一周内:星期+上午/下午+时分 首先看一下测试类: package hrkj; import

  • 深入浅析Java常用的格式化Json工具类

    扩展:Java常用工具类汇总 前置条件 导入以下 jar 包 <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.75</version> </dependency> <dependency> <groupId>org.apache.commons</g

  • Java常用类库Apache Commons工具类说明及使用实例详解

    Apache Commons包含了很多开源的工具,用于解决平时编程经常会遇到的问题,减少重复劳动.下面是我这几年做开发过程中自己用过的工具类做简单介绍. 组件 功能介绍 BeanUtils 提供了对于JavaBean进行各种操作,克隆对象,属性等等. Betwixt XML与Java对象之间相互转换. Codec 处理常用的编码方法的工具类包 例如DES.SHA1.MD5.Base64等. Collections java集合框架操作. Compress java提供文件打包 压缩类库. Con

  • 浅析Java 常用的 4 种加密方式(MD5+Base64+SHA+BCrypt)

    一.工具类  md5加密工具类  public class MD5Utils { private static final String hexDigIts[] = {"0","1","2","3","4","5","6","7","8","9","a","b",&qu

  • 利用java生成二维码工具类示例代码

    二维码介绍 二维条形码最早发明于日本,它是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的,在代码编制上巧妙地利用构成计算机内部逻辑基础的"0"."1"比特流的概念,使用若干个与二进制相对应的几何形体来表示文字数值信息,通过图象输入设备或光电扫描设备自动识读以实现信息自动处理. 如下为java生成二维码工具类,可以选择生成文件,或者直接在页面生成,话不多说了,来一起看看详细的示例代码吧. 示例代码 import java.aw

  • java公众平台通用接口工具类HttpConnectUtil实例代码

    实例如下: package com.common.util; import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java.net.ConnectException; import java.net.HttpURLConnection; import java.net.URL; import

  • java中的Arrays这个工具类你真的会用吗(一文秒懂)

    Java源码系列三-工具类Arrays ​ 今天分享java的源码的第三弹,Arrays这个工具类的源码.因为近期在复习数据结构,了解到Arrays里面的排序算法和二分查找等的实现,收益匪浅,决定研读一下Arrays这个类的源码.不足之处,欢迎在评论区交流和指正. 1.认识Arrays这个类: ​ 首先它在java的utils包下,属于Java Collections Framework中的一员.它的初衷就是一个工具类,封装了操纵数组的各种方法,比如排序,二分查找,数组的拷贝等等.满足了我们日常

  • 关于Jackson的JSON工具类封装 JsonUtils用法

    直接上代码,都有注释,一看就懂,完全满足日常开发需求 import com.fasterxml.jackson.annotation.JsonInclude.Include; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.Deserializa

  • 详解JUC 常用4大并发工具类

    什么是JUC? JUC就是java.util.concurrent包,这个包俗称JUC,里面都是解决并发问题的一些东西 该包的位置位于java下面的rt.jar包下面 4大常用并发工具类: CountDownLatch CyclicBarrier Semaphore ExChanger CountDownLatch: CountDownLatch,俗称闭锁,作用是类似加强版的Join,是让一组线程等待其他的线程完成工作以后才执行 就比如在启动框架服务的时候,我们主线程需要在环境线程初始化完成之后

  • Java中解密微信加密数据工具类

    当我们开发微信公众号,小程序等,微信返回给我们的数据往往是经过加密的,我们需要使用 sessionKey 配合解密,才能得到我们想要的数据 1.引入依赖 <!-- lombok依赖 --> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> <

  • 基于Java的guava开源库工具类

    目录 基于Java的guava开源库工具类 1.guava的maven配置引入 2.LoadingCache 3.Multimap 和 MultiSet 4.BiMap 5.Table 6.Sets和Maps 7.EventBus 8.StopWatch 9.Files文件操作 10.RateLimiter 11.Guava Retry 基于Java的guava开源库工具类 前言: 平时我们都会封装一些处理缓存或其他的小工具.但每个人都封装一次,重复造轮子,有点费时间.有没有一些好的工具库推荐-

随机推荐