JSON 格式的弊端与解决方法(真实示例)

目录
  • 1 JSON 格式弊端
  • 2 解决方法

JSON 格式是目前最流行的数据交互格式,广泛应用于前后端分离的系统。但也有一些场合不适合使用 JSON 格式。

1 JSON 格式弊端

有这样的一个需求:希望把客户端的日志上传到服务器存储起来。原先的设计是把 JSON 格式写入日志文件。形如:

[{"logTypeComment":"info","logTimeComment":"2022-08-xx 10:52:59","content":"坐席日志"},{"logTypeComment":"info","logTimeComment":"2022-08-xx 11:02:13","content":"坐席日志"},{"logTypeComment":"info","logTimeComment":"2022-08-xx 11:05:03","content":"坐席日志"}

如果日志内容简短,可以直接在日志文件中查看,但如果内容很长,那么就难以阅读。必须把日志从服务器下载下来,放到 JSON 格式化工具中查看。

下面是一个真实示例,记录的日志内容非常长,难以直接查看:

维护人员必须放到 JSON 格式化器中进行美化后再查看:

这种方式在实际使用中并不方便。维护人员必须把日志文件拷贝到本地,然后复制相应的内容,再粘贴到 JSON 美化器中进行查看。操作繁琐,而且在复制的时候容易出错。

2 解决方法

一种解决方法是对日志内容进行遍历,一行一行打印出来。日志内容前后加上打印标识,并对打印内容进行格式化。形如:

另一种更好的方法是把日志内容写入库表,然后使用日志 web 平台,来展示这些内容。

写入日志文件中的内容,JSON 格式并不适用。应该尽量按行进行打印输出,并在输出前后打印标识。

到此这篇关于JSON 格式的弊端与解决方法的文章就介绍到这了,更多相关JSON 格式内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • json文件书写格式详解

    目录  JSON是什么 为什么有这个技术 JSON 如何使用 - 数据格式 - 注意事项 - JS 内置两个Json方法 实例:  JSON是什么 JSON ( JavaScript Object Notation) ,是一种数据交互格式. 为什么有这个技术 Json之前,大家都用 XML 传递数据.XML 是一种纯文本格式,所以适合在网络上交换数据,但是 XML 格式比较复杂,终于道格拉斯·克罗克福特(Douglas Crockford)发明了JSON 这种超轻量级的数据交换格式. JSON

  • Jackson中json格式的字符串与对象的互相转换方式

    目录 json格式的字符串与对象的互相转换 Jackson 简介 jackson特点 json格式的字符串与对象的转换 Jackson进行json转对象,对象转json总结 JavaBean准备 json字符串和对象互转 json数组字符串和数组(集合)对象互转 json格式的字符串与对象的互相转换 Jackson 简介 Jackson是一个简单基于Java应用库,Jackson可以轻松的将Java对象转换成json字符串和xml文档,同样也可以将json.xml转换成Java对象.Jackso

  • mysql5.6 解析JSON字符串方式(支持复杂的嵌套格式)

    目录 mysql5.6 解析JSON字符串 支持复杂的嵌套格式 mysql5.6及以下解析json方法 先说一下问题的背景 下面是对应的代码 mysql5.6 解析JSON字符串 支持复杂的嵌套格式 废话不多说,先上代码. CREATE FUNCTION `json_parse`(`jsondata` longtext,`keyname` text) RETURNS text CHARSET utf8 BEGIN DECLARE delim VARCHAR(128); DECLARE resul

  • 使用JSON.toJSONString格式化成json字符串时保留null属性

    目录 JSON.toJSONString格式化成json字符串时保留null属性 属性说明 例子 处理返回结果中字段为空或为null,不展示字段的问题(字段展示不全) JSON.toJSONString格式化成json字符串时保留null属性 使用阿里的 com.alibaba.fastjson.JSON 格式化时,默认null属性会被过滤掉,可以设置不过滤null public static String parseScriptJsonStringWithNullValue(Object ob

  • Mysql怎么存储json格式数据详解

    目录 前言 JSON 数据类型推荐使用在不经常更新的静态数据存储 查询 json数据 增加索引 使用场景 总结 前言 Mysql5.7版本以后新增的功能,Mysql提供了一个原生的Json类型,Json值将不再以字符串的形式存储,而是采用一种允许快速读取文本元素(document elements)的内部二进制(internal binary)格式.在Json列插入或者更新的时候将会自动验证Json文本,未通过验证的文本将产生一个错误信息 JSON 数据类型推荐使用在不经常更新的静态数据存储 创

  • Json格式详解

    目录 一 JSON构建于两种结构: 二 JSON的形式 1.对象 2. 数组 三 值的内容 四 范例 总结 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式.易于阅读和理解,也易于机器解析和生成.JSON采用独立于语言的文本格式,使用了类似于C语言家族的习惯(包括C,C++,C#,Java, JavaScript, Perl, Python等).这些特性使得JSON成为理想的数据交换语言. 一 JSON构建于两种结构: "名称/值"对的集合(A

  • JSON 格式的弊端与解决方法(真实示例)

    目录 1 JSON 格式弊端 2 解决方法 JSON 格式是目前最流行的数据交互格式,广泛应用于前后端分离的系统.但也有一些场合不适合使用 JSON 格式. 1 JSON 格式弊端 有这样的一个需求:希望把客户端的日志上传到服务器存储起来.原先的设计是把 JSON 格式写入日志文件.形如: [{"logTypeComment":"info","logTimeComment":"2022-08-xx 10:52:59",&quo

  • Spring4.0 MVC请求json数据报406错误的解决方法

    Spring4.0 MVC请求json数据报406错误,如何解决? 解决方法一: 1.导入jackson-core-2.5.1.jar和jackson-databind-2.5.1.jar 2.Spring配置文件添加: <!-- 避免IE执行AJAX时,返回JSON出现下载文件 spring3为:org.springframework.http.converter.json.MappingJacksonHttpMessageConverter spring4为:org.springframew

  • Json_decode 解析json字符串为NULL的解决方法(必看)

    从APP端或从其他页面post,get过来的数据一般因为数组形式.因为数组形式不易传输,所以一般都会转json后再发送.本以为发送方json_encode(),接收方json_decode(),就解决的问题,结果发现,json_decode()后是NULL. 一般会反应是少了一个参数"true",但是回去看就是 json_decode($data,true); 那怎么还会是NULL呢?难道是编码,不会啊,接收后直接打印是一个完整json字符串的形式,在网上json解析网站,也是可以正常

  • C#实现json格式数据解析功能的方法详解

    本文实例讲述了C#实现json格式数据解析功能的方法.分享给大家供大家参考,具体如下: 来写写json的解析吧 首先添加web引用 System.Web.Extensions 路径 c:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\v3.5\System.Web.Extensions.dll 接下来就是两个函数了,一个是根据key来获取,一个是根据index来获取 public static bool GetValue

  • Python基于pandas实现json格式转换成dataframe的方法

    本文实例讲述了Python基于pandas实现json格式转换成dataframe的方法.分享给大家供大家参考,具体如下: # -*- coding:utf-8 -*- #!python3 import re import json from bs4 import BeautifulSoup import pandas as pd import requests import os from pandas.io.json import json_normalize class image_str

  • php 将json格式数据转换成数组的方法

    如下所示: //json格式数据 $data = '[{ "F_ModuleId": "1", "F_ParentId": "0", "F_EnCode": "SysManage",}]'; //转换成数组 $arr = json_decode($data,true); //输出 var_dump($arr); 以上这篇php 将json格式数据转换成数组的方法就是小编分享给大家的全部内

  • Java序列化JSON丢失精度问题的解决方法(修复Long类型太长)

    目录 原因: 解决办法一: 解决办法(二): 总结 Java序列化JSON时long型数值,会出现精度丢失的问题. 原因: java中得long能表示的范围比js中number大,也就意味着部分数值在js中存不下(变成不准确的值). 解决办法一: 使用ToStringSerializer的注解,让系统序列化时,保留相关精度 @JsonSerialize(using=ToStringSerializer.class) private Long createdBy; 上述方法需要在每个对象都配上该注

  • Golang解析JSON遇到的坑及解决方法

    目录 写在前面 空指针会被解析成字符串"null" int类型会被解析成float64 写在前面 在写go的时候经常用到序列化.反序列化,记录一下遇到过的坑. 空指针会被解析成字符串"null" type Person struct { Name string Age int } func main() { var p *Person bytes, err := json.Marshal(p) checkError(err) fmt.Printf("len

  • golang使用json格式实现增删查改的实现示例

    需求和思路 在一般的小项目或者一个小软件,例如客户端之类的小程序中,可能会需要数据的持久化.但是使用一般的数据库(Mysql)之类的不合适.使用sqlite3这种嵌入式的是个较好的方法,但是Go语言中sqlite3的库是C语言的,Cgo不支持跨平台编译.正是由于这种需求,才想到使用json格式将数据直接保存在文件中. 具体的思路是怎么样呢? 在Go语言中如果要将数据转化成json格式的话,有两种格式 struct 和 map. 如果同时需要增删查改功能的话,将map作为中间格式是比较合适的.接下

  • SQL注入原理与解决方法代码示例

    一.什么是sql注入? 1.什么是sql注入呢? 所谓SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令,比如先前的很多影视网站泄露VIP会员密码大多就是通过WEB表单递交查询字符暴出的,这类表单特别容易受到SQL注入式攻击.当应用程序使用输入内容来构造动态sql语句以访问数据库时,会发生sql注入攻击.如果代码使用存储过程,而这些存储过程作为包含未筛选的用户输入的字符串来传递,也会发生sql注入. 黑客通过SQL注入攻击

随机推荐