2017-02-28 32 views
1

我正在将序列化从蛇转换为上层骆驼案例。Jackson UpperCamelCase - 没有大写单词属性

mapper.setPropertyNamingStrategy(PropertyNamingStrategy.UPPER_CAMEL_CASE); 

在更新我注意到一个词属性不大写测试:

{"priority":3, "CorrelationId":"cce2dfa6-f82a-11e6-bc64-92361f002671"} 

这是一个预期的行为?单字属性的解决方案是什么?

回答

0

实际的问题是,在蛇的情况下JsonProperty注解,给出奇怪的结果:

@JsonProperty("priority"), @JsonProperty("correlation_id") 

它们固定上骆驼的问题走后。

1

PropertyNamingStrategy仅应用于POJO的,根据其javadoc

定义如何JSON特性(“外部名称”)的名称是衍生 从POJO方法和字段(“内部名称”名)

我的猜测是你正在向映射器传递一个集合类型,这不会受到策略的影响。

+0

“优先级”是s字段,我在mapper中有properry getters和setter visiblitiy禁用。 – Cortlendt

+0

@Cortlendt:好的。在这种情况下,我无法复制这个问题。在我的沙盒中,命名策略适用于输出,没有问题。 – Henrik

+0

与其他映射器设置有冲突吗? – Cortlendt

相关问题