2012-07-12 62 views
0

我已經成功地使用JAXB解組某個xml文件,但是我有另一個更復雜的案例。基本上我的XML文件看起來像這樣:JAXB使用包含另一個映射的對象解組映射

<BCLCurrenciesInflation> 
<currenciesInflation> 
    <currency> 
     <curencyName>Yen</curencyName> 
     <countryName>Japan</countryName> 
     <issuingDate>1900-01-01</issuingDate> 
     <expirationDate></expirationDate> 
     <inflation> 
      <year>1900</year> 
      <percentage>16</percentage> 
     </inflation> 
     <inflation> 
      <year>1901</year> 
      <percentage>17</percentage> 
     </inflation> 
    </currency> 
    <currency> 
     <curencyName>Dolar</curencyName> 
     <countryName>USA</countryName> 
     <issuingDate>1900-01-01</issuingDate> 
     <expirationDate></expirationDate> 
     <inflation> 
      <year>1902</year> 
      <percentage>18</percentage> 
     </inflation> 
     <inflation> 
      <year>1903</year> 
      <percentage>19</percentage> 
     </inflation> 
    </currency> 
</currenciesInflation> 

所以基本上是一個HashMap<String,BCLCurrency>和BCLCurrency看起來是這樣的:

public class BCLCurrency 
{ 
@XmlElement(name = "currencyName") 
public String name; 

@XmlElement(name = "countryName") 
public String country; 

@XmlElement(name = "issuingDate") 
public String issuingDate; 

@XmlElement(name = "expirationDate") 
public String expirationDate; 

@XmlElement(name = "inflation") 
public Map<String,float> inflationMap; 
} 

我在想有兩個適配器,第二個將被稱爲從第一個適配器,但我不覺得舒適的解決方案。

任何想法如何將其取消?

PD:有趣的故事我不能在帖子開頭打招呼,系統不斷壓制它!

+0

好的。我想我做到了。我會盡快回復。 – Jigzat 2012-07-25 03:55:57

回答

0

您可以爲地圖< K,V>創建/使用通用適配器,而不是創建兩個適配器。