嗨,我需要使用Jackson-dataformat XMLMapper从JAVA创建XML.XML应该是这样的
<Customer>
<id>1</id>
<name>Mighty Pulpo</name>
<addresses>
<city>austin</city>
<state>TX</state>
</addresses>
<addresses>
<city>Hong Kong</city>
<state>Hong Kong</state>
</addresses>
</Customer>
Run Code Online (Sandbox Code Playgroud)
但我总是喜欢额外的"<addresses> </ addresses>"标签.
<Customer>
<id>1</id>
<name>Mighty Pulpo</name>
<addresses>
<addresses>
<city>austin</city>
<state>TX</state>
</addresses>
<addresses>
<city>Hong Kong</city>
<state>Hong Kong</state>
</addresses>
<addresses>
</Customer>
Run Code Online (Sandbox Code Playgroud)
我使用下面的代码来创建XML
JaxbAnnotationModule jaxbAnnotationModule = new JaxbAnnotationModule();
XmlMapper mapper = new XmlMapper();
mapper.enable(SerializationFeature.INDENT_OUTPUT);
mapper.registerModule(jaxbAnnotationModule);
mapper.registerModule(new GuavaModule());
String xml = mapper.writeValueAsString(customer);
System.out.println(xml);
Run Code Online (Sandbox Code Playgroud)
有人可以帮帮我吗?如何删除额外的标签呢.我试过使用@XmlElement,但它没有帮助.TIA!
我用它构建项目时偶尔会收到此错误
>mvn --version
Apache Maven 3.0.5 (r01de14724cdef164cd33c7c8c2fe155faf9602da; 2013-02-19 15:51:28+0200)
Maven home: ...\apache-maven-3.0.5
Java version: 1.6.0_45, vendor: Sun Microsystems Inc.
Java home: ...
Default locale: en_US, platform encoding: Cp1252
OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"
Run Code Online (Sandbox Code Playgroud)
和错误:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:2.5:resources
(default-resources) on project project-name: Cannot create resource output directory:
path\to\project\code\project-name\target\classes -> [Help 1]
Run Code Online (Sandbox Code Playgroud)
注意:有时会发生这种情况,并且与代码无关.它可能发生在两个连续构建中的一个 - 一个接一个,完全相同的源代码.
有没有人知道如何完全避免它?它往往会打断相当耗时的构建: - /
以下测试正确使用Java 8.
Comparator<String> stringComparator = Collator.getInstance(new Locale("sv", "SE"));
Assert.assertTrue(stringComparator.compare("aaaa", "bbbb") < 0);
Assert.assertTrue(stringComparator.compare("waaa", "vbbb") < 0);
Assert.assertTrue(stringComparator.compare("vaaa", "wbbb") < 0);
Run Code Online (Sandbox Code Playgroud)
这个订单waaa之前vbbb和vaaa之前wbbb.显然它对待v和w作为同一封信.
事实上,根据维基百科,用瑞典语:
到2006年,'W'因使用新的借词而在使用方面有所增长,因此'W'正式成为一封信,并且'V'='W'排序规则已被弃用.2006年以前的书籍和软件通常使用该规则.该规则被弃用后,一些书籍和软件继续应用它.
有没有人有这个一般的解决办法,使v和w被视为瑞典区域内独立的信吗?