java - 使用绑定(bind)将所有类型转换为 jaxb 中的字符串

标签 java xml jaxb xsd xjc

我正在使用 xjc(jaxb) 从 xml 模式 (xsd) 生成 java 代码。我正在使用绑定(bind)添加自定义。我想生成java代码,其中所有变量都是字符串类型,无论它们在xsd中的类型如何,例如xs:decimal,xs:date ..etc
我尝试使用 <xjc:javaType>在编写绑定(bind)时,但我需要提供一个适配器来实现这一点。我不想提供任何适配器,因为生成的包不会有任何其他 java 代码。这就是我想做的事情

<xjc:javaType name="java.lang.String" xmlType="xs:decimal"/>

请注意,我无法更改架构。

最佳答案

您可以指定如下所示的绑定(bind)文件,XJC 工具将自动生成必要的适配器。

<jxb:bindings 
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns:jxb="http://java.sun.com/xml/ns/jaxb"
    version="2.1">

   <jxb:bindings>
       <jxb:globalBindings>
           <jxb:javaType name="java.lang.String" xmlType="xs:int"/>
           <jxb:javaType name="java.lang.String" xmlType="xs:decimal"/>
       </jxb:globalBindings>
   </jxb:bindings>

</jxb:bindings>

关于java - 使用绑定(bind)将所有类型转换为 jaxb 中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17183299/

相关文章:

java - 使用 Java 的 Scanner 类确定文件结尾

iphone - XML特殊字符解析

Android float 操作按钮半透明背景色

java - Jaxb:通过 xmlns 属性而不是元素前缀进行本地命名空间?

java - 当我尝试通过 gradle 进行 jaxb 绑定(bind)时,为什么无法解析 XSD 模式

java - Jersey REST 服务 - Tomcat 中的 404 响应

java - 如何以编程方式使背光输入按钮变暗?

java - JOptionPane.showInputDialog 的用户输入验证

Java:解析带有嵌套节点的 XML 时遇到问题

java - 这是 Java SynchronizedCollection 类中的错误吗?