2
假設我有一個簡單的Java類是這樣的:攔截西河在解析XML
public class User {
String firstName;
String lastName;
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
}
現在,假設我要解析以下XML:
<user>
<firstName>Homer</firstName>
<lastName>Simpson</lastName>
</user>
我可以沒有任何問題做到這一點在XStream像這樣:
User homer = (User) xstream.fromXML(xml);
好吧,迄今爲止都很好,但這裏是我的問題。
假設我有以下的,我想解析XML:
<user>
<fullName>Homer Simpson</fullName>
</user>
我如何轉換這個XML到使用的XStream的相同用戶對象?
我想要一種方法來實現某種回調,以便當XStream解析fullName字段時,我可以將字符串拆分爲兩部分,並手動設置用戶對象的名字和姓氏字段。這可能嗎?
請注意,我不問如何將字符串拆分爲兩部分(這很容易),我想知道如何截取XML解析,因此XStream不會嘗試在用戶上反射設置fullName字段對象(顯然不存在)。
我看着XStream提供的轉換器,但無法弄清楚如何使用它。
任何幫助,將不勝感激。
謝謝,我結束了使用自定義轉換器實現類似的解決方案,以你的。 – 2011-02-04 10:59:27