如何在 Spring 中从 xml 转换为 json 时更改内容?
How to change content while converting from xml to json in Spring?
我将对象读取为 xml 并在 spring 中生成 json 一切都很好。但是我想更改其中一个变量。假设我读了 Object Person
@XmlRootElement (name="Person")
@XmlAccessorType(XmlAccessType.FIELD)
public class Person{
//a lot variable same when reading and response
private String nameSurname;
在上面的示例中,我阅读了 xml <nameSurname>JohnNash<nameSurname>
,但我想 return {"name":"John","surname":Nash}
那么最好的方法是什么?
我应该使用 2 个不同的对象并编写一个映射器函数吗? (xml人,json人)
我是否应该只更改 getter 函数来更改内容,以便它按我的意愿生成 json?
我应该只使用 1 个对象并编写自定义 json 转换器函数吗?
理想情况下,XML 和 JSON 应该是相似的,因为一般的想法是使用 RESTful 服务围绕这样一个概念,即无论您是 XML 还是 JSON 格式,它将以相同的方式处理它——因此需要 Gson、Jackson 等转换器
但是,由于某些特定原因,如果您想将一个 XML 元素映射到两个 JSON 属性,最好的处理方法是使用单个对象和为它写一个 json 转换器。这使您可以灵活地将映射代码放在一个地方,如果需要,可以在以后轻松更改。
我将对象读取为 xml 并在 spring 中生成 json 一切都很好。但是我想更改其中一个变量。假设我读了 Object Person
@XmlRootElement (name="Person")
@XmlAccessorType(XmlAccessType.FIELD)
public class Person{
//a lot variable same when reading and response
private String nameSurname;
在上面的示例中,我阅读了 xml <nameSurname>JohnNash<nameSurname>
,但我想 return {"name":"John","surname":Nash}
那么最好的方法是什么?
我应该使用 2 个不同的对象并编写一个映射器函数吗? (xml人,json人)
我是否应该只更改 getter 函数来更改内容,以便它按我的意愿生成 json?
我应该只使用 1 个对象并编写自定义 json 转换器函数吗?
理想情况下,XML 和 JSON 应该是相似的,因为一般的想法是使用 RESTful 服务围绕这样一个概念,即无论您是 XML 还是 JSON 格式,它将以相同的方式处理它——因此需要 Gson、Jackson 等转换器
但是,由于某些特定原因,如果您想将一个 XML 元素映射到两个 JSON 属性,最好的处理方法是使用单个对象和为它写一个 json 转换器。这使您可以灵活地将映射代码放在一个地方,如果需要,可以在以后轻松更改。