关于String转Json的几种方式

 更新时间:2023年12月07日 11:24:58   作者:爱若执炬迎风  
这篇文章主要介绍了关于String转Json的几种方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

String转Json方式

第一种

String格式为:

String result =  "{"code":200,"code":"0","message":"SUCCESS"}"

使用:

JSONObject json = JSONObject.parseObject(result);

第二种

String格式为:

result:
{
  "code": 200,
  "message": "查询成功",
  "result": {
    "records": [
      {
        "jobName": "高级开发工程师",
        "jobExperience": "一年以下",
        "education": "本科"
      },
    {
        "jobName": "高级开发工程师",
        "jobExperience": "一年以下",
        "education": "本科"
      }
    ],
    "total": 1,
    "size": 10,
    "current": 1,
    "pages": 1
  }
}

使用:

JSONObject json = (JSONObject) JSON.toJSON(result);

String转JSONObject遇到的奇怪的问题

遇到了一个String转JSONObject的报错,这个问题卡了我几个小时,这是转换的代码。

String jsondata = jSONString.toJSONString();
JSONObject DatajsonObject = JSON.parseObject(jsondata);

很简单的一个转换,理论上不会有任何问题,但是我在debug时一直出现异常。

我是用postman传入一个json,代码接收格式是JSONString。

在我调试了无数次以及查找了无数资料之后,我发现……根本没有找到解决方案。

 最后发现,是这边的老师用微信把样例输入的json数据发给我,而这里显示的空格是NBSP而不是我们认知中的空格,我将数据直接复制到postman中,postman里面显示的就是空格(我把它复制到这边的代码块中也是显示空格),但是我将数据直接复制到idea中作为字符串,就显示出了大量的NBSP,如图。

最后把NBSP去掉之后就没有问题了。我没想到这么一个小问题卡了这么久。

我一开始还以为这个NBSP是微信的问题,但是我自己试了一下没有这个问题,看来是我误解微信了。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Springboot基础之RedisUtils工具类

    Springboot基础之RedisUtils工具类

    本文来说下RedisUtils工具类,主要介绍了整合Redis、MyBatis,封装RedisUtils工具类等知识,文中有非常详细的代码示例,对正在学习java的小伙伴们有很好的帮助,需要的朋友可以参考下
    2021-05-05
  • Java实现线程安全单例模式的五种方式的示例代码

    Java实现线程安全单例模式的五种方式的示例代码

    这篇文章主要介绍了Java中实现线程安全单例模式的五种方式:饿汉式、枚举单例、懒汉式、DCL懒汉式和静态内部类懒汉单例,感兴趣的可以了解一下
    2022-03-03
  • mybatisplus如何根据不同ID批量更新

    mybatisplus如何根据不同ID批量更新

    本文介绍了MyBatis-Plus中使用Wrapper批量更新数据的方法,包括使用UpdateWrapper批量更新相同属性值、根据ID数组批量更新相同属性值,以及使用updateBatchById方法批量更新多个属性值,提供了示例代码和注意事项
    2026-04-04
  • spring boot加载资源路径配置和classpath问题解决

    spring boot加载资源路径配置和classpath问题解决

    这篇文章主要介绍了spring boot加载资源路径配置和classpath问题解决,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-03-03
  • java的线程池框架及线程池的原理

    java的线程池框架及线程池的原理

    这篇文章主要介绍了java的线程池框架及线程池的原理的相关资料,需要的朋友可以参考下
    2017-03-03
  • Java中@valid和@Validated注解的使用详解

    Java中@valid和@Validated注解的使用详解

    这篇文章主要介绍了Java中@valid和@Validated注解的使用详解,@Validated可以用在类型、方法和方法参数上,但是不能用在成员属性(字段)上,不支持嵌套检测,@Valid可以用在方法、构造函数、方法参数和成员属性(字段)上,支持嵌套检测,需要的朋友可以参考下
    2024-01-01
  • springmvc—handlermapping三种映射方式

    springmvc—handlermapping三种映射方式

    这篇文章主要介绍了springmvc—handlermapping三种映射方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • Java中Range函数的简单介绍

    Java中Range函数的简单介绍

    这篇文章主要介绍了Java中Range函数的简单介绍,Java中的range方法用于返回IntStream和LongStream在函数参数范围内的顺序值
    2022-07-07
  • svn 清理失败 (cleanup 失败) 的快速解决方法

    svn 清理失败 (cleanup 失败) 的快速解决方法

    下面小编就为大家带来一篇svn 清理失败 (cleanup 失败) 的快速解决方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-10-10
  • SpringBoot集成P6Spy实现SQL日志的记录详解

    SpringBoot集成P6Spy实现SQL日志的记录详解

    P6Spy是一个框架,它可以无缝地拦截和记录数据库活动,而无需更改现有应用程序的代码。一般我们使用的比较多的是使用p6spy打印我们最后执行的sql语句
    2022-11-11

最新评论