java - 在java中创建Xml fastxml

标签 java xml jackson fasterxml

我正在使用 fastxml.jackson 使用 POJO 创建 xml。

我期望输出如下:

<Customer xmlns="">
    <firstname>FirstNameA</firstname>
    <middlename>LastNameA</middlename>
</Customer>

But getting output as:
<Customer xmlns="">
    <item>
        <firstname>FirstNameA</firstname>
        <middlename>LastNameA</middlename>
    </item>
</Customer>

为什么要附加<item>标签。我没有附加<item>标记任何地方,但输出显示 <item>标签。我的代码有什么问题吗?

这是POJO

    @JacksonXmlRootElement(localName = "Customer")
    public class Customer {  
        @JacksonXmlProperty(localName="firstname")
        private String firstname;

        @JacksonXmlProperty(localName="middlename")
        private String middlename;


        public Customer(String firstname, String middlename) {
            this.firstname = firstname;
            this.middlename = middlename;
        }
}

// code to create xml
    ObjectMapper xmlMapper = new XmlMapper();
            JacksonXmlModule module = new JacksonXmlModule();
            module.setDefaultUseWrapper(false);
            Customer[] cust = new Customer[]{new Customer("FirstNameA", "LastNameA")};
            try {
                String xml = xmlMapper.writeValueAsString(cust);
                return xml;
            } catch (JsonProcessingException e) {
                e.printStackTrace();
            }

最佳答案

代码中的customer是一个数组,并且您不能在发布的xml样式中添加多个项目:

<Customer xmlns="">
    <firstname>FirstNameA</firstname>
    <middlename>LastNameA</middlename>
</Customer>

只需替换您的代码:

Customer cust = new Customer("FirstNameA", "LastNameA");

关于java - 在java中创建Xml fastxml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46710169/

相关文章:

java - 如何向 Android 导航添加自定义按钮和文本? (以 X 身份登录)

java - 如何将 Jackson 的 TypeReference 与泛型一起使用?

java - 使用 Jackson 的 PropertyFilter 动态阻止某些字段被序列化

java - 阻止 Hibernate 在关联集合中保留更改

java - IntelliJ 使用错误的 JDK 版本从 POM 导入项目

java - Spring Boot JAR 应用程序未从资源文件夹中读取 chromedriver.exe

javascript - 使用 Javascript 写入一个非唯一的 div

具有属性的Python xmltodict强制数组

java - Jackson ObjectMapper 大写/小写问题

java - JLabel.setIcon() 无法按预期工作