XML生成Java类代码

最近对接第三方公司接口,对方调用我们http接口是在request的body里传的整个的xml字符串,xml的定义是第三方公司定义的。我接到字符串后要对xml内容解析,解析出自己要的业务数据。之前xml和bean之间的转换都是用JAXB,先定义java bean,然后加上xml注解,然后用JAXB把java对象转为xml,或者把xml转为java对象。

现在的问题是没有这个java bean类,需要先定义一个java bean。可是xml内容太多,而且不是一个xml,有很多种,一个一个的敲太费劲了,网上查了一番,解决问题。

 

JAXB根据xml的xsd文件生成java bean的代码

1.下载JAXB包

   jaxb-2_1_9.zip(页面最下方)

 

2.解压命令行下进入bin目录

3.运行:xjc -d %output_path% -p com.xxx.xxx.bean    xxx.xsd

-d:java代码存放路径

-p:bean包结构

 

使用xsd.exe生成xml文件对应的xsd文件

JAXB生成java代码的入参是xsd文件,不是xml文件,所以要先生成xsd文件。

 

xsd.exe是微软.net的一个工具,借来用了,但后续是为我的java服务的吐舌头哈哈。

The XML Schema Definition (Xsd.exe) tool generates XML schema or common language runtime classes from XDR, XML, and XSD files, or from classes in a runtime assembly.

1.下载xsd.exe

(页面最下方)

2.控制台运行如下命令

   xsd xxx.xml [/outputdir:directory]

这样对应的xsd文件就生成了

 

当然以上方法生成的xsd是把xml所有属性都当成string了,所以生成的java bean所有的属性也都是字符串,需要自己适当修改,但总比一个一个敲容易多了,也不容易出错。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值