使用 Jackson 将 XML 反序列化为对象 Y/N 到 true/false 布尔值
Deserializing XML to Object using Jackson mapping Y/N to true/false boolean
我需要将 xml 中列为 Y/N 的元素映射到布尔值 (true/false)。
xml 中的一个元素是:
<parent_node>
<due_override_flag>N</due_override_flag>
...more elements
</parent_node>
我需要将 'N'/'Y' 映射到布尔值 false/true
这是我要映射到的 class 元素:
@JsonRootName("trailer_standard_loads")
@JsonIgnoreProperties(ignoreUnknown=true)
public class StandardLoad {
@JsonProperty("trailer_load_seq")
private Integer trailerLoadSeq;
private String createdBy;
private ZonedDateTime createdDt;
private String updatedBy;
private ZonedDateTime updatedDt;
@JsonProperty("due_override_flag")
private Boolean dueOverrideFlag;
}
我有标准 getter 和二传手。
我从文档中不明白如何映射 Y = true; N = 假;
在 setter 方法中添加该逻辑
@JsonRootName("trailer_standard_loads")
@JsonIgnoreProperties(ignoreUnknown=true)
public class StandardLoad {
@JsonProperty("trailer_load_seq")
private Integer trailerLoadSeq;
private String createdBy;
private ZonedDateTime createdDt;
private String updatedBy;
private ZonedDateTime updatedDt;
private Boolean dueOverrideFlag;
@JsonProperty("due_override_flag")
public void setDueOverrideFlag(String value) {
this.dueOverrideFlag = value.equalsIgnoreCase("Y) ? true : false;
}
public Boolean getDueOverrideFlag() {
return this.dueOverrideFlag;
}
}
我需要将 xml 中列为 Y/N 的元素映射到布尔值 (true/false)。
xml 中的一个元素是:
<parent_node> <due_override_flag>N</due_override_flag> ...more elements </parent_node>
我需要将 'N'/'Y' 映射到布尔值 false/true 这是我要映射到的 class 元素:
@JsonRootName("trailer_standard_loads")
@JsonIgnoreProperties(ignoreUnknown=true)
public class StandardLoad {
@JsonProperty("trailer_load_seq")
private Integer trailerLoadSeq;
private String createdBy;
private ZonedDateTime createdDt;
private String updatedBy;
private ZonedDateTime updatedDt;
@JsonProperty("due_override_flag")
private Boolean dueOverrideFlag;
}
我有标准 getter 和二传手。 我从文档中不明白如何映射 Y = true; N = 假;
在 setter 方法中添加该逻辑
@JsonRootName("trailer_standard_loads")
@JsonIgnoreProperties(ignoreUnknown=true)
public class StandardLoad {
@JsonProperty("trailer_load_seq")
private Integer trailerLoadSeq;
private String createdBy;
private ZonedDateTime createdDt;
private String updatedBy;
private ZonedDateTime updatedDt;
private Boolean dueOverrideFlag;
@JsonProperty("due_override_flag")
public void setDueOverrideFlag(String value) {
this.dueOverrideFlag = value.equalsIgnoreCase("Y) ? true : false;
}
public Boolean getDueOverrideFlag() {
return this.dueOverrideFlag;
}
}