JAXB安装与编译器使用(转)

JAXB (Java Architecture for XML Binding) 的主要功能是根据DTD或者XML SchemaXML Element转化为Java类。将XML文本流转化为Java Object,把XML Processing转化为对类的一些属性的访问。简单的来说,它可以让你轻松解析和验证XML内容而不用去写那些繁琐的XML解析代码。

 

JAXB 包含两个部分:

1, 第一部分:JAXB包含一个编译器,它读入DTD或者XML Schema,然后生成相等结构的Java Object Model. 这些生成的object model DOMSAX这些generalAPI更有针对性,更好的反映了Schema原本的结构。这样,使对XML内容的操作变得更为简单。

2, 第二部分:是操作JAXB时的API,你通过这个API来和生成的代码交互。这个API隐藏了JAXB内部操作的实现代码并且提供了统一的基本操作(如 marshalling unmarshalling)。
marshalling : 是将一个Java Object转化成XML text的过程。
unmarshalling : 是将XML text转化成相应的Java Object的过程。

 

更多参见:http://www.oracle.com/technetwork/articles/javase/index-140168.html

JAXB安装及使用

首先从sun下载一个jaxb的压缩包,在命令行模式下,将目录转到JAXB2_20110601.jar,用命令java jar JAXB2_20110601.jar 
这样,在该目录下会生成一个文件夹jaxb-ri-20110601,文件夹中有bindocslibsamples在命令行中进入到安装目录的bin文件夹下运行xjc指令,如果不出现xjcis not recogized。。。证明安装成功 

使用xsd文件生成java类的方法 

在命令行中进入文件夹jaxb-ri-20110601目录的bin文件夹 
输入命令 
xjc -d c:\test -p com.primeton.governor.dict.xmlloader c:\test\test.xsd 
生成包放在c:\test

com.primeton.governor.dict.xmlloader生成java类的包路径 
c:\test\test.xsd  xsd文件的路径

 

 

xsd文件是多个时,而且分配在不同的目录下时,使用xjc命令生成bean文件时那个xsd文件路径的参数可以填写文件目录即可自动搜索所有xsd文件。

 

示例xsd文件:

 

Xsd代码    收藏代码
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"   
  3.             elementFormDefault="qualified"   
  4.             targetNamespace="http://www.w3school.com.cn"   
  5.             xmlns:ns1="http://www.w3school.com.cn" >  
  6.   <xs:element name="note">  
  7.     <xs:complexType>  
  8.       <xs:sequence>  
  9.         <xs:element ref="ns1:to"/>  
  10.         <xs:element ref="ns1:from"/>  
  11.         <xs:element ref="ns1:heading"/>  
  12.         <xs:element ref="ns1:body"/>  
  13.       </xs:sequence>  
  14.     </xs:complexType>  
  15.   </xs:element>  
  16.   <xs:element name="to" type="xs:string"/>  
  17.   <xs:element name="from" type="xs:string"/>  
  18.   <xs:element name="heading" type="xs:string"/>  
  19.   <xs:element name="body" type="xs:string"/>  
  20. </xs:schema>  

 

 

xml文件转换为xsd文件 
首先从sun下载一个trang的压缩包,解压缩后会有一个trang.jar的文件 
在命令行中进入trang.jar所在的目录,输入如下命令: 
java -jar trang.jar XXX1.xml XXX2.xsd 
XXX1.xml为当前文件夹目录下的xml文件,也是要转换的xml文件 
XXX2.xsd文件为转换后的xsd文件  

注意:一般情况下,只经过这个步骤转化过来的文件还不能直接使用,需要对其中的数据类型等做调整。

 

示例xml文件:

 

Xml代码    收藏代码
  1. <?xml version="1.0" encoding="UTF-8" standalone="yes"?>  
  2. <note xmlns="http://www.w3school.com.cn">  
  3.     <to>jack1</to>  
  4.     <from>tom</from>  
  5.     <heading>this is heading</heading>  
  6.     <body>this is body</body>  
  7. </note>  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值