【发布时间】:2021-01-13 23:46:34
【问题描述】:
我有一个 JSON:
{
"stringField" : 1234,
"booleanField": true,
"numberField": 1200.00
}
我使用对象映射器将 json 反序列化为:-
@Data
class SomeClass {
String stringField;
boolean booleanField;
float numberField;
}
我希望 objectMapper 抛出错误,因为根据 json 规范,String 字段的值必须用双引号引起来。如何让 objectMapper 抛出错误?
【问题讨论】:
-
这不是已经引发了一些错误,因为这只是无效的 JSON(基于缺少的引号)
-
这不是一个无效的 json 对吧?例如,布尔值应该不带引号,数字应该不带引号..
-
布尔值和数字(和空值)正是允许不带引号的两件事,“asdadasd”不是真、假、空或数字 -> 无效。检查jsonlint.com
-
好吧,对不起我的错。我已经编辑了我的问题。 String 字段现在是 1234。这必须用双引号引起来,因为 POJO 的字段是 String 类型。我希望 objectMapper 会抛出一个错误。我可以强制执行吗?
-
我认为这个feature 将作为 Jackson 2.12.x 的一部分发布。在它发布之前,这个问题的答案应该足够了。
标签: java jackson objectmapper