2016-07-12 10 views
0

をさんは、私は春のバッチを使用してMySQLデータベースに、このXMLの属性のほとんどを書きたいはXMLで複数の@XmlRootElementにアクセスする必要がある - 春のバッチ

<?xml version="1.0" encoding="UTF-8"?> 
<results application="web" hostname="WIN"> 
    <test-node> 
     <element>1</element> 
    </test-node> 
    <node1 browser="chrome"> 
     <element2>2</element2> 
    </node1> 
</results> 

以下のXMLがあるとしましょう。だから私は、質問私もnode1に属性browserにアクセスしたいされ

@XmlRootElement(name = "results") 
public class LowLevelSuiteFields { 

private String application; 
private String hostName; 

@XmlAttribute(name = "application") 
public String getApplication() { 
    return application; 
} 

public void setApplication(String application) { 
    this.application = application; 
} 

@XmlAttribute(name = "hostname") 
public String getHostName() { 
    return hostName; 
} 

public void setHostName(String hostName) { 
    this.hostName = hostName; 
} 

} 

以下のように見えるクラスを作成しました。私は別の @XmlRootElement(name = "node1")を持つことはできませんし、その後 @XmlAttribute(name = "browser")

理由は、私が唯一ItemPreparedStatementSetter<LowLevelSuiteFields>を実装して1 PreparedStatementSetterを作成していているん...だから、私はちょうど別のXmlRootElement

Plsのヘルプのために別のクラスを作成することはできません。 。

答えて

0

実際には、node1@XmlElementアノテーションを使用する必要があります。

この例を見てくださいJAXB tutorial from Vogella

関連する問題