3

我想用带下划线的名称序列化我的字段。例如:userName-> user_name

我知道可以通过@XmlElement(name = "user_name")注释来完成,但对我的情况来说不是很方便。

有没有办法为 JAXB 设置默认命名策略?

4

1 回答 1

3

注意:我是 EclipseLink JAXB (MOXy) 负责人,也是 JAXB (JSR-222) 专家组的成员。

MOXy 有一个XMLNameTransformer扩展,使您能够覆盖元素、属性和类型的默认命名策略。

如果您从 XML 模式生成模型,则可以使用外部绑定文件来保留下划线。

<?xml version="1.0" encoding="UTF-8"?>
<jxb:bindings 
  xmlns:xs="http://www.w3.org/2001/XMLSchema"
  xmlns:jxb="http://java.sun.com/xml/ns/jaxb"
  version="2.1">
  <jxb:globalBindings underscoreBinding="asCharInWord"/>
</jxb:bindings>
于 2013-07-11T10:00:33.560 回答