从XML自动生成Java Skeleton类
我有一个xml文件,看起来有点像这样:从XML自动生成Java Skeleton类,java,xml,xsd,xjc,auto-generate,Java,Xml,Xsd,Xjc,Auto Generate,我有一个xml文件,看起来有点像这样: <Model> <Class name=""> <Attribute name="" type =""/> <Attribute\> <Method name="" returnType=""/> </Class> </Model> 我想知道如何从xml生成Java/C++类。我尝试过使用xjc(使用Al
<Model>
<Class name="">
<Attribute name="" type =""/>
<Attribute\>
<Method name="" returnType=""/>
</Class>
</Model>
我想知道如何从xml生成Java/C++类。我尝试过使用xjc(使用AltovaXmlSpy生成模式),但我得到的输出是为每个类、属性和方法创建一个类,而不是将方法和属性放在类中
非常感谢您的帮助。用于在解析XML时构建类,然后将其输出到文件中。保证编译(如果失败,还会出现有意义的错误!)
Maven依赖项:
<dependency>
<groupId>com.sun.codemodel</groupId>
<artifactId>codemodel</artifactId>
<version>2.6</version>
</dependency>
如果从xml生成xsd,则可以使用jaxb或visual studio生成类。这在另一个问题中讨论。请在此处阅读:
NodeList stdCol = doc.getElementsByTagName("Model");
for(int s=0; s<stdCol.getLength() ; s++){
Element el = (Element)stdCol.item(s);
NodeList stdClass = el.getElementsByTagName("Class ");
for(int k=0; k<stdClass .getLength() ; k++){
Element mapEntry = (Element)stdClass .item(k);
NodeList stdAttribute = mapEntry.getElementsByTagName("Attribute ");
NodeList stdCol=doc.getElementsByTagName(“模型”);
对于(int s=0;SY)您可以编写自己的java代码,您可以使用jaxb读取xml文件并执行一些转换代码,以便将xml文件写入java代码,或者制作一些xsd并使用xjc自动生成
NodeList stdCol = doc.getElementsByTagName("Model");
for(int s=0; s<stdCol.getLength() ; s++){
Element el = (Element)stdCol.item(s);
NodeList stdClass = el.getElementsByTagName("Class ");
for(int k=0; k<stdClass .getLength() ; k++){
Element mapEntry = (Element)stdClass .item(k);
NodeList stdAttribute = mapEntry.getElementsByTagName("Attribute ");