用于从java类生成xsd的实用程序
我想为以下类生成xsd
public class Node{ private String value; private List childrens; }
为此类代码生成xsd架构的最佳实用程序是什么
一般来说,我想实现简单的树。 我已经在使用jaxb从schema中生成类。
如果您已经在使用JAXB,则可以使用schemagen
工具创建XSD:
- http://docs.oracle.com/javase/6/docs/technotes/tools/share/schemagen.html
- http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/index.jsp?topic=%2Fcom.ibm.websphere.express.doc%2Finfo%2Fexp%2Fae%2Ftwbs_jaxbjava2schema.html
还有Ant任务和Maven插件,用于以自动方式执行相同操作。
您可以使用JAXBContext
上的generateSchema
API生成XML架构:
import java.io.IOException; import javax.xml.bind.*; import javax.xml.transform.Result; import javax.xml.transform.stream.StreamResult; public class Demo { public static void main(String[] args) throws Exception { JAXBContext jc = JAXBContext.newInstance(Node.class); jc.generateSchema(new SchemaOutputResolver() { @Override public Result createOutput(String namespaceURI, String suggestedFileName) throws IOException { return new StreamResult(suggestedFileName); } }); } }
还有Ant任务和Maven插件,用于以自动方式执行相同操作。
是的确有。 在你必须自己解决之前,这是maven版本:
org.codehaus.mojo jaxb2-maven-plugin 2.4 schemagen schemagen http://www.your.url/namespace/foo your-schema-name.xsd ...
另请注意,您在包中添加了package-info.java
。 该文件包含包名:
@javax.xml.bind.annotation.XmlSchema(namespace = "http://www.your.url/namespace/foo", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) package url.your.namespace.foo;
- 使用XSLFO显示SVG
- Java:如何将java.util.logging的语言更改为英语?
- 确定PDF页面是包含文本还是纯图片
- 当光标指向特定行时,如何获取JTable中的行和列?
- IllegalArgumentException:颜色参数超出预期范围:红绿蓝
- java.lang.UnsupportedClassVersionError:org / openqa / gr id / selenium / GridLauncher(不支持的major.minor版本50.0)
- 如何在java中使用JRSwapFileVirtualizer进行jasper报告
- 如何将Hibernate 5安装到Apache Karaf v4中
- MongoDB,Java:以UTC格式检索日期属性