【发布时间】:2013-04-17 13:37:17
【问题描述】:
我正在编写一个 JSON 接口/库来使用 Bugzilla 的网络服务。
这可能使用注释或其他东西吗?还是我要为每个这样的实例编写一个自定义反序列化器?
我尝试做一些研究,发现了一些关于值实例化器或使用构造函数的信息,但是使用构造函数不是像反 bean 一样吗?我发现新功能的文档很少或难以理解。
例子:
public class Bug{
// Bug info, strings, ints, yadda yadda.
private User creator; // creator of the bug, json is like {"creator":"blahblah@email.com"}
}
public class User{
private String username;
}
//insert setter/getter.
我对 One 字段使用 pojo 的原因是因为这个 User 类被另一个具有更多字段的类扩展。虽然我可以实现一个构造函数来实现这种效果,但这样做意味着我必须为所有其他子类实现相同的构造函数。我觉得有一些类似于 @JsonValue 的东西,但用于设置(我在我的 setter 上尝试了 JsonCreator,但仍然遇到与我在下面遇到的相同的错误)。
“无法从字符串值实例化类型[简单类型,用户类]的值;没有单字符串构造函数/工厂方法”
谢谢。
【问题讨论】:
-
您能发布您的 RESTful 请求的代码吗?
-
误解了你的问题。已经更正了答案并且它有效。