Java 字符数据类型从对象到Xml的Jackson序列化

Java 字符数据类型从对象到Xml的Jackson序列化,java,spring,spring-boot,jackson,Java,Spring,Spring Boot,Jackson,我有一个简单的pojo,比如 public class XYZ { private String name; private Character gender; } 我们使用此pojo作为Rest API(Spring Rest Controller)的实体响应,该API生成MediaType.APPLICATION_JSON_值`和MediaType.APPLICATION_XML_值 JSON输出正常,但不需要XML输出。”“性别”字段作为字符类型具有“数值”,如89、90。。

我有一个简单的pojo,比如

public class XYZ {
   private String name;
   private Character gender;
}
我们使用此pojo作为Rest API(Spring Rest Controller)的实体响应,该API生成MediaType.APPLICATION_JSON_值`和MediaType.APPLICATION_XML_值

JSON输出正常,但不需要XML输出。”“性别”字段作为字符类型具有“数值”,如89、90。。。诸如此类,而不是“Y”或“N”(只是一个例子)

如果我们将“Accept”头作为application/xml,就会出现这个问题

这种行为是否应该来自Jackson library?我正在使用Spring5.0.x


谢谢添加以下maven依赖项:

<dependency>
    <groupId>com.fasterxml.jackson.dataformat</groupId>
    <artifactId>jackson-dataformat-xml</artifactId>
</dependency>

com.fasterxml.jackson.dataformat
jackson数据格式xml

这样,Jackson将知道如何将任何特殊字符转换为相应的XML格式。

Java
char
/
Character
是一种数字类型。JSON没有“字符”,只有“数字”和“字符串”。您的项目中有以下依赖项吗?groupId:“com.fasterxml.jackson.dataformat”和artifactId:“jackson dataformat xml”?我看到jackson dataformat cbory您可能想尝试添加“jackson dataformat xml”,我尝试了,对我来说,新字符('Y')在xml格式中呈现为Y谢谢。让我试试