FasterXML Jackson 実装を使用して、xml-databing パッケージで POJO を XML 出力に変換しています。私はこの出力を達成しようとしています:
<MyRequest>
<MySubRequest>4</MySubRequest>
<MySubRequest>5</MySubRequest>
</MyRequest>
私のクラス:
public class MySubRequest {
@JacksonXmlText
private String id;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public MySubRequest(String id) {
super();
this.id = id;
}
}
と:
@JacksonXmlRootElement
public class MyRequest {
private Collection<MySubRequest> MySubRequest;
public Collection<MySubRequest> getRequests() {
return MySubRequest;
}
public void setRequests(Collection<MySubRequest> requests) {
this.MySubRequest = requests;
}
}
私はそれをテストしています:
ObjectMapper mapper = new XmlMapper();
MyRequest entity = new MyRequest();
Collection<MySubRequest> myIds = new ArrayList<>();
myIds.add(new MySubRequest("12"));
myIds.add(new MySubRequest("34"));
entity.setRequests(myIds);
mapper.writeValue(System.out, entity);
しかし、出力は次のとおりです。
<MyRequest xmlns="">
<requests>
<requests>12</requests>
<requests>34</requests>
</requests>
</MyRequest>
私が知りたいもう 1 つのことは、出力で大文字と小文字を区別する、つまり大文字の変数名にする方法です。