11

JAXB 简单绑定模式将集合名称修改为它们的复数“版本”,例如“additionalData”变为“additionalDatas”。有没有办法改变这种行为?我需要有一个与 XSD 字段名称相同的 Java 字段名称和方法名称。我的绑定文件:

<?xml version="1.0" encoding="UTF-8"?>
<bindings xmlns="http://java.sun.com/xml/ns/jaxb"
            xmlns:xsi="http://www.w3.org/2000/10/XMLSchema-instance"
            xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
            xsi:schemaLocation="
http://java.sun.com/xml/ns/jaxb http://java.sun.com/xml/ns/jaxb/bindingschema_2_0.xsd"
version="2.1">
  <globalBindings>
    <serializable uid="1" />
    <xjc:simple/>
  </globalBindings>
</bindings>
4

1 回答 1

8

“简单绑定模式”是 JAXB RI(Metro)的扩展特性。将集合属性名称设为复数是其设计的一部分。

来自:http ://weblogs.java.net/blog/kohsuke/archive/2007/01/using_jaxb_ris.html

JAXB RI 中我最喜欢的特性是更简单、更好的绑定模式,它使生成的代码更易于使用,通过...

  1. 尽可能消除 JAXBElement
  2. 总体上为您提供更好、更多类型的绑定
  3. 在适用的情况下使用复数属性名称

您可以使用正常的模式自定义来控制属性名称。请参阅我以前的答案之一(下面的链接):

于 2011-03-01T14:17:38.950 回答