将xml转换为javabean

将xml转换为javabean,java,xml,javabeans,xmlbeans,Java,Xml,Javabeans,Xmlbeans,如何将xml文件转换为简单的JavaBean? 这是一个没有任何xsd的简单xml文件,它是从java bean生成的,我没有访问权 我尝试使用xmlbeans首先从xml生成xmd,然后从xsd生成类。我上了很多课。我正在寻找一个java bean类。试试。您可以使用Castor或JAXB之类的工具将XML映射到java类。它相当容易使用 JAXB JAXB()提供了一种将对象转换为XML的简单方法。本标准有许多开源实现,包括: (JavaSE6中包含的参考实现) ,我是技术负责人 JA

如何将xml文件转换为简单的JavaBean? 这是一个没有任何xsd的简单xml文件,它是从java bean生成的,我没有访问权


我尝试使用xmlbeans首先从xml生成xmd,然后从xsd生成类。我上了很多课。我正在寻找一个java bean类。

试试。

您可以使用Castor或JAXB之类的工具将XML映射到java类。它相当容易使用

JAXB

JAXB()提供了一种将对象转换为XML的简单方法。本标准有许多开源实现,包括:

  • (JavaSE6中包含的参考实现)
  • ,我是技术负责人
JAXB具有Java对象到XML的默认映射。这种映射可以通过应用注释进行定制

import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.Element;

@XmlRootElement
public class Address {

    private String street;

    private String city;

    private String state;

    private String country;

    @XmlElement(name="postal-code")
    private String postalCode;

}
将对应于以下XML:

<address>
    <street>123 A Street</street>
    <city>Any Town</city>
    <state>A State</state>
    <postal-code>12345</postal-code>
</address>
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://earth.google.com/kml/2.0" xmlns:ns="urn:oasis:names:tc:ciq:xsdschema:xAL:2.0">
    <Response>
        <Placemark>
            <ns:AddressDetails>
                <ns:Country>
                    <ns:CountryNameCode>US</ns:CountryNameCode>
                    <ns:AdministrativeArea>
                        <ns:AdministrativeAreaName>CA</ns:AdministrativeAreaName>
                        <ns:SubAdministrativeArea>
                            <ns:Locality>
                                <ns:LocalityName>Mountain View</ns:LocalityName>
                                <ns:Thoroughfare>
                                    <ns:ThoroughfareName>1600 Amphitheatre Pkwy</ns:ThoroughfareName>
                                </ns:Thoroughfare>
                                <ns:PostalCode>
                                    <ns:PostalCodeNumber>94043</ns:PostalCodeNumber>
                                </ns:PostalCode>
                            </ns:Locality>
                        </ns:SubAdministrativeArea>
                    </ns:AdministrativeArea>
                </ns:Country>
            </ns:AddressDetails>
        </Placemark>
    </Response>
</kml> 
上述类对应于以下XML:

<address>
    <street>123 A Street</street>
    <city>Any Town</city>
    <state>A State</state>
    <postal-code>12345</postal-code>
</address>
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://earth.google.com/kml/2.0" xmlns:ns="urn:oasis:names:tc:ciq:xsdschema:xAL:2.0">
    <Response>
        <Placemark>
            <ns:AddressDetails>
                <ns:Country>
                    <ns:CountryNameCode>US</ns:CountryNameCode>
                    <ns:AdministrativeArea>
                        <ns:AdministrativeAreaName>CA</ns:AdministrativeAreaName>
                        <ns:SubAdministrativeArea>
                            <ns:Locality>
                                <ns:LocalityName>Mountain View</ns:LocalityName>
                                <ns:Thoroughfare>
                                    <ns:ThoroughfareName>1600 Amphitheatre Pkwy</ns:ThoroughfareName>
                                </ns:Thoroughfare>
                                <ns:PostalCode>
                                    <ns:PostalCodeNumber>94043</ns:PostalCodeNumber>
                                </ns:PostalCode>
                            </ns:Locality>
                        </ns:SubAdministrativeArea>
                    </ns:AdministrativeArea>
                </ns:Country>
            </ns:AddressDetails>
        </Placemark>
    </Response>
</kml> 

美国
加利福尼亚州
山景
1600圆形剧场Pkwy
94043
更多信息