【问题标题】:Export specific fields on XML extraction in Java在 Java 中导出 XML 提取的特定字段
【发布时间】:2015-08-04 17:50:25
【问题描述】:

我正在使用@XmlRootElement注解从数据库中获取XML数据。

现在,如果我将 @XmlTransient 放入 getter,这些字段将被忽略。

例如:

public class Student {
    private Integer studentId;
    private String studentName;

    @XmlTransient // Do not get student id
    public Integer getStudentId() {
        return this.studentId;
    }

    public String getStudentName() {
        return this.studentName;
    }

    ...// Setter goes here

那么,student ids 不会出现在 XML 文件中。

但是,我可以以相反的方式执行此操作吗?我想在 XML 文件中指定我想要的字段 - Student 类中的字段太多。

我的服务器(Spring Framework 3.2.3)也使用Jackson 库,所以我想如果可能的话我可以使用它。

【问题讨论】:

    标签: java xml spring jackson


    【解决方案1】:

    您可以使用以下方式注释您的课程:

    @XmlAccessorType(XmlAccessType.NONE)
    

    现在您必须显式映射属性才能进行序列化。请参阅 Javadoc:http://docs.oracle.com/javaee/7/api/javax/xml/bind/annotation/XmlAccessType.html

    【讨论】:

    • 感谢您的帮助!但是当我将 '@XmlAccessorType(XmlAccessType.NONE)' 放入 Student 类时,它不会加载任何内容。如何指定字段?
    • 想通了:将@XmlAttribute 放入getter 似乎可行。
    猜你喜欢
    • 2014-10-06
    • 2014-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-19
    • 2021-11-09
    • 2017-01-06
    • 1970-01-01
    相关资源
    最近更新 更多