Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Jackson:用大写字母封送到JSON_Java_Json_Jackson_Apache Camel - Fatal编程技术网

Java Jackson:用大写字母封送到JSON

Java Jackson:用大写字母封送到JSON,java,json,jackson,apache-camel,Java,Json,Jackson,Apache Camel,我有一个具有大写命名的POJO对象。当我调用Jackson的ObjectMapper将其序列化/封送为JSON时,结果是字段名的小写 现在,这个调用非常简单: 标题 如何让ObjectMapper使用大写字母?还是某种一成不变的JSON标准 我在Apache Camel中使用jackson。编辑了原始答案 杰克逊似乎默认使用camelCasing。他们已经实施了一项战略。试试这个: ObjectMapper mapper = new ObjectMapper(); mapper.setPrope

我有一个具有大写命名的POJO对象。当我调用Jackson的ObjectMapper将其序列化/封送为JSON时,结果是字段名的小写

现在,这个调用非常简单:

标题 如何让ObjectMapper使用大写字母?还是某种一成不变的JSON标准


我在Apache Camel中使用jackson。

编辑了原始答案

杰克逊似乎默认使用camelCasing。他们已经实施了一项战略。试试这个:

ObjectMapper mapper = new ObjectMapper();
mapper.setPropertyNamingStrategy(PropertyNamingStrategy.PASCAL_CASE_TO_CAMEL_CASE);

或者用
@JsonProperty(“UpperCaseProperty”)
编辑的原始答案注释字段

杰克逊似乎默认使用camelCasing。他们已经实施了一项战略。试试这个:

ObjectMapper mapper = new ObjectMapper();
mapper.setPropertyNamingStrategy(PropertyNamingStrategy.PASCAL_CASE_TO_CAMEL_CASE);

或者用
@JsonProperty(“UpperCaseProperty”)

UPD注释您的字段:通过将字段公开并将@JsonIgnore添加到getter来解决这个问题。事实证明,getter被序列化为lowercamelcase,但字段被逐字序列化。UPD:通过将字段公开并向getter添加@JsonIgnore来解决这个问题。事实证明,getter被序列化为lowercamelcase,但字段被逐字序列化。