jjzjj

jsonSerialization

全部标签

c# - Json.NET JsonSerializer 线程安全吗?

我正在努力减少我的Web服务生成的垃圾量,我注意到我们正在为每个请求创建一个新的Json.NETJsonSerializer实例。它不是有史以来最轻量级的对象,所以我想知道我是否可以只创建一个实例并为所有请求重用它。这主要要求它在序列化和反序列化期间是线程安全的。Thedocumentation没有说它是否是线程安全的。检查thecode看起来序列化和反序列化方法是线程安全的,只要您不同时更改对象的任何设置。但是,这是一个复杂的类,所以我不能100%确定我的分析。有没有人尝试过重用JsonSerializer的实例并且它是否有效?重用它是否存在任何已知问题?

c# - 来自自定义 JsonConverter(Web API)的 Json.Net JsonSerializer 中的自引用循环

该项目是一个Asp.NetWebAPI网络服务。我有一个类型层次结构,我需要能够序列化到Json和从Json序列化,所以我从这个SO中获取了代码:HowtoimplementcustomJsonConverterinJSON.NETtodeserializeaListofbaseclassobjects?,并将转换器应用于我的层次结构的基类;像这样的东西(这里有伪代码来隐藏无关紧要的内容):[JsonConverter(typeof(TheConverter))]publicclassBaseType{//notethebaseofthistypehereisfromthelinked

c# - 来自自定义 JsonConverter(Web API)的 Json.Net JsonSerializer 中的自引用循环

该项目是一个Asp.NetWebAPI网络服务。我有一个类型层次结构,我需要能够序列化到Json和从Json序列化,所以我从这个SO中获取了代码:HowtoimplementcustomJsonConverterinJSON.NETtodeserializeaListofbaseclassobjects?,并将转换器应用于我的层次结构的基类;像这样的东西(这里有伪代码来隐藏无关紧要的内容):[JsonConverter(typeof(TheConverter))]publicclassBaseType{//notethebaseofthistypehereisfromthelinked

java - @JsonSerialize/@JsonDeserialize 未使用 Spring MVC 调用

我有一个Spring3.1MVC项目,但在反序列化发送到以下Controller方法的请求时遇到问题:@RequestMapping(value="/deposit",method=RequestMethod.POST)publicvoiddeposit(@RequestBodyDepositRequestrequest){}包含JodaMoney值的请求对象,我已经为它注册了一个自定义序列化器/反序列化器:publicclassDepositRequest{privateMoneyamount;@JsonDeserialize(using=JodaMoneyDeserializer.

java - @JsonSerialize/@JsonDeserialize 未使用 Spring MVC 调用

我有一个Spring3.1MVC项目,但在反序列化发送到以下Controller方法的请求时遇到问题:@RequestMapping(value="/deposit",method=RequestMethod.POST)publicvoiddeposit(@RequestBodyDepositRequestrequest){}包含JodaMoney值的请求对象,我已经为它注册了一个自定义序列化器/反序列化器:publicclassDepositRequest{privateMoneyamount;@JsonDeserialize(using=JodaMoneyDeserializer.

c# - 在 JsonConverter 中递归调用 JsonSerializer

我正在编写一个JsonConverter来执行一些我需要在读/写时完成的转换任务。特别是,我采用了现有的序列化行为,并在写入时添加了一些额外的属性/在读取时添加了这些额外的属性。在JsonConverter中,我想利用传递的JsonSerializer实例来执行大部分转换功能。但是,当我这样做时,我最终进入了一个递归循环,其中序列化程序调用我的转换器,该转换器调用序列化程序,该序列化程序调用转换器等。我见过人们做一些事情,例如使用JsonConvert.SerializeObject,从序列化程序实例exceptthis传递所有转换器。但是,这对我不起作用,因为它绕过了我在序列化程序上

Android 库项目 com.android.dex.DexException : Multiple dex files define Lcom/google/gson/JsonSerializer

我正在AndroidStudio中编写一个库项目。我的gradle文件包括gsonvolleyplay-services等...将我的库嵌入项目时,我得到:com.android.dex.DexException:MultipledexfilesdefineLcom/google/gson/JsonSerializer;有人可以解释一下gradle在创建库项目时是如何工作的吗?我应该如何解释集成我的SDK的开发人员,exclude模块如何工作,以及为什么它在包含我的aar的应用程序中不起作用? 最佳答案 有两种情况需要考虑首先,如果

ios - JSONSerialization 和 EXC_BAD_ACCESS

我借助php服务从MYSQL数据库中获取一些信息。最后,我通过echojson_encode($resultArray)将其推送到我的应用程序。现在我遇到了JSONSerialization的问题,这是我的代码。If(urlData!=nil){letres=responseasNSHTTPURLResponse!;NSLog("Responsecode:%ld",res.statusCode);if(res.statusCode>=200&&res.statusCode%@",responseData);varerror:NSError?letjsonData2:NSDictiona

json - Swift3 JSONSerialization with [String :Any] rather than NSDictionary

假设你有一个json字符串someText并且你想将它解析为字典。以前我做过这个......letjsonResult:NSDictionary=tryJSONSerialization.jsonObject(with:someText.data(using:.utf8)!,options:JSONSerialization.ReadingOptions.mutableContainers)as!NSDictionary但这只是一个蹩脚的NSDictionary。看来你确实可以做到这一点......letjsonResult:[String:Any]=tryJSONSerializat

json - 使用 JSONSerialization 序列化货币时指定小数位数

NumberFormatter使得在屏幕上显示值时格式化货币非常容易:letdecimal=Decimal(25.99)letdecimalNumberFormatter=NumberFormatter()decimalNumberFormatter.numberStyle=.currencyAccountingletoutput=decimalNumberFormatter.string(for:decimal)//output="$25.99"以上代码适用于任何Decimal或Double值。小数位数始终与所使用的区域设置相匹配。将浮点货币值序列化为JSON并不是那么简单。具有以下