问题标签 [jackson2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
json - 为 JSON 提供程序正确匹配 JAX-RS 媒体类型
官方 JSON 媒体类型是application/json
. Jackson 的 RESTEasy 提供程序ResteasyJackson2Provider
指定媒体类型,如下所示:
我不明白。我知道这"application/*+json"
将匹配例如application/foo+json
。但如果application/json
没有加+
号,它会匹配吗?这在 JAX-RS 规范中吗?它与我期望通配符的工作方式不一致,除非 JAX-RS 媒体类型模式匹配对媒体类型子组件语义有一些了解。
spring - @JsonIgnoreProperties(ignoreUnknown=false) 在 Spring 4.2.0 及更高版本中不起作用
@JsonIgnoreProperties(ignoreUnknown=false) 不适用于 spring 4.2.0 和更高版本的 spring。但它适用于 4.0.4 和 4.0.1 。我正在使用 spring 4.2.8 并且使用了 Jackson 依赖项
如果我发送带有无效字段的 json 请求,那么它将作为有效请求接受。但它应该给出错误的请求作为响应。例如:如果我有课
如果发送有效的相应 json 请求应该是这样的
但即使我发送带有无效字段的 json 请求,如下所示,它仍然可以接受。
但它应该给出错误的请求作为响应
java - Java 使用给定的起始对象开始读取 Json
让我们考虑以下对象:
我有以下字符串
当我使用 Jackson 2 创建一个新对象时a = 4
(b = 1
我假设它是使用空构造函数创建的对象,其中 setter 用于修改 Jackson 2 在字符串中读取的字段)。
现在,我有一个带有a = 1
and的 myObject 实例b = 2
(与我可以使用空构造函数的实例不同)。如何使用 String 将对象“完成”到a = 4
and b = 2
?换句话说:如何使用不完整的 json 字符串替换现有对象中的字段值,该对象不同于使用空构造函数创建的对象?
编辑:答案的可能解决方案。
json - 使用 @JsonFormat 时的错误时间(+1 小时)
我有一个包含以下属性的类:
现在我对我的休息服务进行 POST:
最后,“开始”变量具有值:Sun Dec 04 11:20:00 CET 2016
所以不知何故,JSON 到对象的映射增加了一小时。
一种解决方案是使用:
但是在夏天我们有 CEST,所以我不能硬编码时区。
有什么解决办法吗?谢谢!
顺便说一句:最初日期来自 jquery datetimepicker。
jackson - 只用杰克逊解开一些属性
假设我有这个对象:
这通常会被序列化如下
有没有办法用注释/混合配置杰克逊来获得这个(即不使用 DTO)?
java - Jackson2 objectmapper 没有将请求映射到对象
调度程序-servlet.xml
我在 AnnotationMethodHandlerAdapter 中使用了 MappingJackson2HttpMessageConverter。
pom.xml :刚刚添加了 com.fasterxml.jackson.core “databind” 和 “core” 引用
现在,当使用 json 发送请求时,不会调用控制器方法。如果我删除方法参数“@RequestBody DateRequest systemDate”,该方法将被调用,控制台显示语句。
使用的控制器是@RestController
DateRequest 是一个简单的 DTO 对象
JSON 请求
{SystemDate:“12/23/2016”,dest:“retrieveStartandEndDates”}
不知道我在这里错过了什么。任何建议/帮助表示赞赏。
json - 去掉 POJO 中 getter 的自动显示
下面我给出了我的 POJO 结构以及当前输出和预期输出。我的要求是,当我打印 JSON 格式时,名为“applicationUsage”的变量会自动包含在我的输出 JSON 中作为键,但我不想在我的 json 格式中添加“applicationUsage”键,只想显示存储在此中的值场地。谁能帮我写代码。
输出:
通缉:
java - Jackson - Map 的序列化执行
我有以下课程:
问题是我无法在杰克逊中正确反序列化它。如果我在没有默认类型的情况下进行序列化,那没关系,因为它被序列化为 {"one":"two"} 并正确反序列化(我必须使用
当我使用打开的默认类型时,这被序列化为
但是反序列化正在抛出
有什么想法吗?
json - json4s org.json4s.package$MappingException: 不知道如何将 JString 转换为 double
我正在尝试一个非常简单的示例,但无法使其工作;下面是我的 JSON 格式,我使用 Scala json4s 解析器来解析 JSON;如果任何 JSON 字段不是字符串,则 json4s 无法解析 JSON 字符串。例如 json4s 无法将 field_3 解析为 double 并将 field_4 解析为 int。
java - Jackson:基于实现接口的对象标识序列化/反序列化
每当Foo
在序列化中引用任何类型的对象时,它的值都应该是object.key()
. 对于反序列化,应该使用 to 的值来查找实际对象(Bar
,Bar2
等)
杰克逊怎么能做到这一点?