现在的位置: 首页 > 综合 > 正文

对xsd文件的操作 生成java实体并解析生成的xml

2013年12月04日 ⁄ 综合 ⁄ 共 930字 ⁄ 字号 评论关闭
步骤如下:
1. 根据xsd生成相应的java类:
执行如下命令即可生成java类,xjc –d  java类的存放路径 –p 类的包名  xsd文件名

例如:D:\java\jdk1.6.0_31\bin>xjc -d e:\ -p org.nssd e:\journal.xsd

2. 根据xsd可以生成测试xml数据,用eclipse等工具可以生成测试数据,右键xsd文件Generate→xml files

3. 解析xml文件,代码如下:
import java.io.File;
import javax.xml.XMLConstants;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBElement;
import javax.xml.bind.Unmarshaller;
import javax.xml.transform.stream.StreamSource;
import javax.xml.validation.SchemaFactory;
import org.nssd.JElem;

public class Test {
	public static void main(String[] args) {
		JAXBContext context;
		try {
			context = JAXBContext.newInstance(JElem.class);

			Unmarshaller shaller = context.createUnmarshaller();

			shaller.setSchema(SchemaFactory.newInstance(  
			        XMLConstants.W3C_XML_SCHEMA_NS_URI).newSchema(  
			        new File("src/myxsd.xsd")));
			
			JAXBElement<JElem> root = shaller.unmarshal(new StreamSource(new File("src/data.xml")),JElem.class);
			JElem jElem = root.getValue();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}

JElem是xml文件的根节点

抱歉!评论已关闭.