繁体   English   中英

自定义序列化和反序列化以创建JSON

[英]Custom serialize and deserialize to create JSON

我有一个带有2个值的类:val1和val2。 我正在发送val1来注册(创建)API,并且val2由API本身自动填充。 我不想在调用create API时发送val2,并且该API并非旨在处理不需要的值。

简而言之,我想在调用create API时忽略val2,但在调用get API时希望它。

我现在拥有的代码将创建JSON,其中包括将val2分配为null的两个值。 这将导致该API引发异常。

有没有简单的方法可以做到这一点(java / groovy)?

有没有简单的方法可以做到这一点(java / groovy)?

并非100%肯定我了解您的需求。 我相信这取决于您使用的是json de / serializer。 例如,使用杰克逊,我们可以:

@JsonIgnoreProperties(ignoreUnknown = true)
@JsonTypeName("account")
public class Account {

我相信这可以让我们将具有大量额外json字段的对象加载到没有相应Java字段的对象中。 引用javadocs

定义可以在反序列化期间忽略任何无法识别的属性的属性。 如果为true,则所有无法识别的属性(即没有设置器或创建者接受它们)都将在没有警告的情况下被忽略(尽管仍会调用未知属性的处理程序)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM