2

クラスBookを定義していて、StringオブジェクトのXMLに対応する情報を含むJAXBElementオブジェクトを作成したいと思います。

たとえば、私は次のようなものを持つことができます:

String code = "<book><title>Harry Potter</title></book>";

次に、その文字列から始めてJAXBElementを作成します。JAXBElementでは実行できない検証を実行するために文字列が必要です。

だから、私は私がやりたいことをすることができますか?はいの場合、どのように?

ありがとう!

ソリン

4

1 に答える 1

5

パラメータをunmarshal取るメソッドの 1 つを使用すると、 のインスタンスを受け取ります。ClassJAXBElement

デモ

package forum13709611;

import java.io.StringReader;
import javax.xml.bind.*;
import javax.xml.transform.stream.StreamSource;

public class Demo {

    public static void main(String[] args) throws Exception {
        JAXBContext jc = JAXBContext.newInstance(Book.class);

        Unmarshaller unmarshaller = jc.createUnmarshaller();
        String code = "<book><title>Harry Potter</title></book>";
        StreamSource source = new StreamSource(new StringReader(code));
        JAXBElement<Book> jaxbElement = unmarshaller.unmarshal(source, Book.class);
    }

}

package forum13709611;

public class Book {

    private String title;

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

}
于 2012-12-04T20:48:39.837 に答える