我已经搜索了 3 天,但找不到解决方案。我想解析 XSD 文件以在 java 中创建 mySql 表。顺便说一下,我不想用 xsd 验证 xml 文件。
首先,我使用了 XSOM,但无法修复错误 NoClassDefFoundError。我想我无法设置库。有什么东西不见了。如果你能给我必要的整个图书馆,它也许可以修复。
其次,我尝试使用 org.eclipse.xsd 库,但我无法再次使用它。我不知道如何使用这些类来解析 xsd 并获取其属性、元素等,然后创建 sql 表。
最后,我也无法解决 SAXParser 的问题。
——顺便说一句,打算做的是:
通过使用这个模式,我将创建一个数据库表,
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Table" type="TableType"/>
<xs:complexType name="TableType">
<xs:sequence>
<xs:element name="Rows" type="Rows"/>
</xs:sequence>
<xs:attribute fixed="Students" name="name" type="xs:string"/>
<xs:attribute fixed="id" name="Primarykey" type="xs:string"/>
</xs:complexType>
<xs:complexType name="Rows">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="Row" type="RowType"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="RowType">
<xs:sequence>
<xs:element name="id" type="xs:integer"/>
<xs:element name="name" type="xs:string"/>
<xs:element name="surname" type="xs:string"/>
<xs:element name="department" type="xs:string"/>
<xs:element name="year" type="xs:integer"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
然后,
通过使用这个 xml,我将插入数据库,
<?xml version="1.0" encoding="UTF-8"?>
<Table name="Students" Primarykey= "id">
<Rows>
<Row>
<id>100000</id>
<name>Ali</name>
<surname>Yilmaz</surname>
<department>CENG</department>
<year>1</year>
</Row>
<Row>
<id>100001</id>
<name>Deniz</name>
<surname>Bayraktar</surname>
<department>EE</department>
<year>3</year>
</Row>
</Rows>
</Table>
等待您的帮助。
谢谢。