kez vardır. @XmlRootElement
ek açıklaması, bu ilişkilendirmeyi belirtmenin birincil yoludur. öncelikle kök nesnesini belirtmek için kullanılır Kök Nesne
Foo
@XmlRootElement(name="root")
public class Foo {
private String name;
}
Bar
public class Bar {
private String name;
}
XML
<root>
<name>Jane Doe</name>
</root>
Deneme
Foo foo = (Foo) unmarshaller.unmarshal(xml);
Bar bar = unmarshaller.unmarshal(xml, Bar.class).getValue();
ROLÜ # 2 - ikame grupları
@XmlElementRef
açıklama delegeler adı örneği nesne türü/elemanın uri. Bu, kalıtımı temsil eden ikame grupları kavramına eşlemeyi mümkün kılar.
ROLÜ # 3 - Herhangi İçerik
@XmlAnyElement
Eğer XML belgesinin bir vahşi kart bölümü harita sağlar. @XmlAnyElement(lax=true)
belirtirseniz, etki alanı nesneleriyle ilişkilendirilmiş öğeler karşılık gelen etki alanı nesnesine dönüştürülür.
@XmlType
ROLÜ # 1 - Şema Gen adlandırılmış karmaşık tür bilinen her Java sınıfı için oluşturulan Varsayılan olarak
JAXB içeriği. @XmlType
ek açıklamasını kullanarak bu türün adını denetleyebilir veya adı, ""
olarak belirterek anonim karmaşık bir türün oluşturulacağını belirtebilirsiniz.
ROLÜ # 2 - Veraset ve xsi: tip
varsayılan JAXB tarafından miras göstergesi olarak xsi:type
niteliğini yararlanır. Bu öznitelikteki değer, @XmlType
ek açıklamasında belirttiğiniz ad ve ad alanına karşılık gelir veya sınıfa dayanarak varsayılan değerdir.
ROLÜ # 3 - Eğer mülkiyet sırasını belirlemek için @XmlType
kullanabilirsiniz söz gibi al
Prop.
ROLÜ # 4 - Fabrika Yöntemleri
@XmlType
varsayılan yerine alanı nesne örneğini oluşturmak için kullanılabilecek bir fabrika sınıfı ve/veya yöntemi belirlemenizi sağlar yapıcı. http://blog.bdoughan.com/2011/06/jaxb-and-factory-methods.html
Burada ekleriz farklı ancak ilişkili soru
- . @XMLType ek açıklamasının hangi sırayla öğesinin göründüğünü belirtmek için bir propOrder özniteliği vardır - @XMLRootElement için bir eşdeğer var mı?
Hayır, propOrder
boyutu, @XmlType
ek açıklamasına aittir. Bu, karmaşık tiplerin bir (veya eksik) emrin belirlenmesinden sorumlu olmasından dolayı anlamlıdır. Elbette bu ek açıklamaları aynı anda kullanabilirsiniz.
@XmlRootElement
@XmlType(propOrder={"foo", "bar"}
public class Root {
...
}