使用xmlbeans构造符合相应Schema格式的xml文件
2011-10-24 16:27
459 查看
接着上例的 automobile-policy.xsd
确保该schema文件已经使用scomp编译过,并将生成的jar包导入到了工程中,且工程中加入了xmlbeans的jar文件
新建源文件:
这样就按照指定的xsd文件生成了一个out.xml文件其内容如下:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="automobile-policy"> <xs:complexType> <xs:sequence> <xs:element name="insurance-date" type="xs:dateTime" /> <xs:element name="policyholder-information" type="policyholder-information" minOccurs="1" /> <xs:element name="insured-vehicle" type="insured-vehicle" minOccurs="1" /> <xs:element name="liability-coverage" type="liability-coverage" minOccurs="1" /> <xs:element name="third-party-coverage" type="third-party-coverage" /> </xs:sequence> </xs:complexType> </xs:element> <xs:complexType name="policyholder-information"> <xs:sequence> <xs:element name="name" type="xs:string" /> <xs:element name="social-security-number" type="xs:string" /> <xs:element name="address" type="xs:string" /> </xs:sequence> </xs:complexType> <xs:complexType name="insured-vehicle"> <xs:sequence> <xs:element name="year-of-manufacture" type="xs:string" /> <xs:element name="make" type="xs:string" /> <xs:element name="model" type="xs:string" /> <xs:element name="price" type="xs:double" /> </xs:sequence> </xs:complexType> <xs:complexType name="liability-coverage"> <xs:sequence> <xs:element name="coverage-limit" type="xs:double" /> <xs:element name="coverage-premium" type="xs:double" /> </xs:sequence> </xs:complexType> <xs:complexType name="third-party-coverage"> <xs:sequence> <xs:element name="coverage-limit" type="xs:double" /> <xs:element name="coverage-premium" type="xs:double" /> </xs:sequence> </xs:complexType></xs:schema>
确保该schema文件已经使用scomp编译过,并将生成的jar包导入到了工程中,且工程中加入了xmlbeans的jar文件
新建源文件:
import java.io.File; import java.util.Calendar; import java.util.Date; import org.apache.xmlbeans.XmlOptions; import noNamespace.*; public class createXml { public static void main(String args[]){ File out=new File("src/out.xml"); Calendar date=Calendar.getInstance(); date.setTime(new Date()); AutomobilePolicyDocument autoPolicyDoc=AutomobilePolicyDocument.Factory.newInstance(); autoPolicyDoc.addNewAutomobilePolicy(); AutomobilePolicyDocument.AutomobilePolicy autoPolicyElement=autoPolicyDoc.getAutomobilePolicy(); autoPolicyElement.setInsuranceDate(date); autoPolicyElement.addNewInsuredVehicle(); InsuredVehicle insuredVehile=InsuredVehicle.Factory.newInstance(); insuredVehile.setYearOfManufacture("2011"); insuredVehile.setMake("XUPT"); insuredVehile.setModel("Optra"); insuredVehile.setPrice(1234); autoPolicyElement.setInsuredVehicle(insuredVehile); autoPolicyElement.addNewLiabilityCoverage(); LiabilityCoverage liabilityCoverage=LiabilityCoverage.Factory.newInstance(); liabilityCoverage.setCoverageLimit(123456); liabilityCoverage.setCoveragePremium(654321); autoPolicyElement.setLiabilityCoverage(liabilityCoverage); autoPolicyElement.addNewPolicyholderInformation(); PolicyholderInformation policyholderInformation=PolicyholderInformation.Factory.newInstance(); policyholderInformation.setName("Adam"); policyholderInformation.setSocialSecurityNumber("1GBL7D1G3GV100770"); policyholderInformation.setAddress("Bell's Tower"); autoPolicyElement.setPolicyholderInformation(policyholderInformation); autoPolicyElement.addNewThirdPartyCoverage(); ThirdPartyCoverage thirdPartyCoverage=ThirdPartyCoverage.Factory.newInstance(); thirdPartyCoverage.setCoverageLimit(2222); thirdPartyCoverage.setCoveragePremium(3333); autoPolicyElement.setThirdPartyCoverage(thirdPartyCoverage); autoPolicyDoc.documentProperties().setEncoding("UTF-8"); autoPolicyDoc.documentProperties().setVersion("1.0"); System.out.print(autoPolicyDoc.xmlText(new XmlOptions().setSavePrettyPrint())); try{ autoPolicyDoc.save(out, new XmlOptions().setSavePrettyPrint()); }catch(Exception e){ e.printStackTrace(); } } }
这样就按照指定的xsd文件生成了一个out.xml文件其内容如下:
<?xml version="1.0" encoding="UTF-8"?> <automobile-policy> <insurance-date>2011-10-24T16:03:18.546+08:00</insurance-date> <policyholder-information> <name>Adam</name> <social-security-number>1GBL7D1G3GV100770</social-security-number> <address>Bell's Tower</address> </policyholder-information> <insured-vehicle> <year-of-manufacture>2011</year-of-manufacture> <make>XUPT</make> <model>Optra</model> <price>1234.0</price> </insured-vehicle> <liability-coverage> <coverage-limit>123456.0</coverage-limit> <coverage-premium>654321.0</coverage-premium> </liability-coverage> <third-party-coverage> <coverage-limit>2222.0</coverage-limit> <coverage-premium>3333.0</coverage-premium> </third-party-coverage> </automobile-policy>
相关文章推荐
- XSD(XML Schema Definition)用法实例介绍以及C#使用xsd文件验证XML格式
- JAVA使用JAXB框架根据schema.xsd文件验证XML合法性
- C#使用xsd文件验证XML 格式是否正确
- 使用jdk的xjc命令由schema文件生成相应的实体类
- 使用Xml文件格式存储数据
- 使用jdk的xjc命令由schema文件生成相应的实体类
- 使用jdk的xjc命令由schema文件生成相应的实体类
- 使用Java解析xml文件为json格式
- Solr的学习使用之(二)schema.xml等配置文件的解析
- 根据XLS格式转换相应的xml文件
- schema.xml文件里datatype的定义格式
- XML基础知识——使用schema校验XML文件合法性(四)
- 使用Nodejs 实现Excel文件转换为JSON、Xml文件格式
- XSD(XML Schema Definition)用法实例介绍以及C#使用xsd文件验证XML格式
- Biztalk 开发之 使用xml数据项构造输出文件路径
- Biztalk 开发之 使用xml数据项构造输出文件路径【转】
- C# 使用xsd文件验证XML 格式是否正确
- python 使用SAX解析器验证xml文件格式是否完好
- Biztalk 开发之 使用xml数据项构造输出文件路径
- 使用Jaxb中xjc命令由schema文件生成相应的实体类