MySQL数据库中存和取JSON数据

在数据库中会出现要存JSON数据的情况,但是由于项目的编程人员不一样,在存JSON数据可能出现不同的情况,导致在取数据时将JSON数据转换为集合时出现格式不匹配,说一下笔者遇到的情况,如

  • ["1", "2"]
  • "[\"1\",\"2\"]"

产生的原因:

这两种情况区别在于一个使用了转义字符一个没有使用转义字符

第一个数据在添加进数据库时,直接将集合数据转为了字符串

第二个数据在添加进数据库时,对数据进行了JSON格式的转换

解决方法:

  • 第二种数据存在转义字符,在取数据时是标准的JSON数据格式,自然是可以直接拿到数据后直接使用转换方法进行转换
     
  • 第一种数据直接拿到时数据存在空格,不是标准的JSON格式,需要先将它转化为标准格式后才能再将其转化为集合
    //转换前数据之间是存在空格的   ["1", "2"] 
    String list = user.getList();
    //转换后去除了空格  ["1","2"] 
    JSONArray jsonArray = JSON.parseArray(CardInfo.getTagList());
    
    List<String> list = JSON.parseArray(jsonArray.toJSONString(), String.class);

  • 15
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值