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

步骤如下:
1. 根据xsd生成相应的java类:
执行如下命令即可生成java类,x jc –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文件,代码如下:
[java]  view plain copy print ?
  1. import java.io.File;  
  2. import javax.xml.XMLConstants;  
  3. import javax.xml.bind.JAXBContext;  
  4. import javax.xml.bind.JAXBElement;  
  5. import javax.xml.bind.Unmarshaller;  
  6. import javax.xml.transform.stream.StreamSource;  
  7. import javax.xml.validation.SchemaFactory;  
  8. import org.nssd.JElem;  
  9.   
  10. public class Test {  
  11.     public static void main(String[] args) {  
  12.         JAXBContext context;  
  13.         try {  
  14.             context = JAXBContext.newInstance(JElem.class);  
  15.   
  16.             Unmarshaller shaller = context.createUnmarshaller();  
  17.   
  18.             shaller.setSchema(SchemaFactory.newInstance(    
  19.                     XMLConstants.W3C_XML_SCHEMA_NS_URI).newSchema(    
  20.                     new File("src/myxsd.xsd")));  
  21.               
  22.             JAXBElement<JElem> root = shaller.unmarshal(new StreamSource(new File("src/data.xml")),JElem.class);  
  23.             JElem jElem = root.getValue();  
  24.         } catch (Exception e) {  
  25.             e.printStackTrace();  
  26.         }  
  27.     }  
  28. }  
JElem是xml文件的根节点

你可能感兴趣的:(对xsd文件的操作 生成java实体并解析生成的xml)