2012-03-05 9 views
-1

私はこのXMLをJavaオブジェクトに変換し、次にキーと値を更新し、それをXMLに保存しようとしています。単純なXMLを変換できますが、これは2つの属性が同じです。 誰でもJavaクラスでこのxmlをConfiguration.javaとして表すのを助けることができますか?Javaクラスのxml表現ですか?

XML私はお勧め

<?xml version="1.0" encoding="utf-8" ?> 
    <configuration> 
    <appSettings> 
     <add key="mode" value="1"/> 
     <add key="type" value="shs"/> 
    </appSettings> 
</configuration> 

Configuration.java

import javax.xml.bind.annotation.XmlAttribute; 
import javax.xml.bind.annotation.XmlElement; 
import javax.xml.bind.annotation.XmlRootElement; 

@XmlRootElement 
public class Configuration { 
    String appSettings; 
    String add; 
    String key; 
    String value; 

public String getAppSettings() { return appSettings; } 
@XmlElement 
public void setAppSettings(String appSettings) { this.appSettings = appSettings;} 

public String getAdd() { return add; } 
@XmlElement 
public void setAdd(String add) { this.add = add; } 

public String getKey() { return key; } 
@XmlAttribute 
public void setKey(String key) { this.key = key; } 

public String getValue() { return value; } 
@XmlAttribute 
public void setValue(String value) { this.value = value; } 

    } 
+0

http://stackoverflow.com/questions/4995466/how-to-generate-jaxb-classes-from-just-xml –

答えて

1

XMLからPOJOの作成を細かく制御する場合は、JAXBを使用します。しかし、まずXMLの構造をXSDで指定し、JAXBでJavaクラスを生成させる必要があります。

もう1つの方法は、XStreamを使用することです。

XStream xstream = new XStream(); 
Configuration config= (Configuration)xstream.fromXML(xml); 

しかし、あなたはKuldeepジャイナ教は彼の答えに言ったように、追加ノードのリストを使用するようにConfigurationクラスを更新する必要がある場合があります。

編集:また、2分XStreamのチュートリアルを見てみましょう - http://x-stream.github.io/tutorial.html

関連
1

私はあなたがfollwing addノードに対するList持っている必要がありますと思う:あなたが見ているかもしれ :

<add key="mode" value="1"/> 
<add key="type" value="shs"/> 

EDITをJAXB articleにお問い合わせください。

+0

Doeはリストのように意味します addはキーと値で構成されるオブジェクトですか?あなたは一例でそれを明確にすることができますか? – michdraft

関連する問題