JAXB让Java与XML之间繁琐的机械编码成为过去,现在可以简单的通过XSD文件生成对应的Java文件,我一般使用maven-jaxb2-plugin来实现xsd到java文件的生成。 POM配置 指定xsd文件路径,制定binding文件路径,指定生成java文件路径
>maven-jaxb2-plugin>>>>1.xsd>true>${project.build.directory}/generated-sources/xjc1/META-INF/1.episode>>>
binding.xjb配置 实现类型匹配,包匹配,如果类型匹配复杂,可能需要实现自己的转换类
==”2.0″ schemaLocation=”book.xsd”><jaxb:globalBindingsfixedAttributeAsConstantProperty=”true”typesafeEnumBase=”xs:string”typesafeEnumMemberName=”generateName”generateIsSetMethod=”true”><!– <xjc:noValidator /><xjc:noValidatingUnmarshaller />–>==>==>
Note1: 新版本的plugin不止可以生成java class,还可以帮忙生成object的最重要的几个方法:toString, equals, hashCode, clone,只要在configuration里配置对于的plugin就可以了
>>-XhashCode>>org.jvnet.jaxb2_commons>></plugins></configuration>
Note2: 我遇到过同一个项目中2个xsd文件有同样的node type,不同的内容,虽然指定了不同包来generate source还是报错,,最后的解决方案是用2个execution分别解析不同的xsd文件,不过我使用cxf插件就没有遇到这个问题,可以在一个execution里面生成想要的所有Java class。
最有效的资本是我们的信誉,它24小时不停为我们工作。