使用JAXB生成List的Setter

时间:2013-08-05 12:45:17

标签: java jaxb

我使用JAXBXML配置映射到Java对象。此配置可以从UI进行编辑,这就是为什么要将其传输到UI,反之亦然。我绝对需要将json解组为Java对象。因此,需要为List设置setter方法。

如何使用JAXB为POJO类生成List属性的setter方法?

2 个答案:

答案 0 :(得分:0)

为此您需要创建List的变量。此List变量的setter getter方法如下所示。

package foo.bar.me.too;

import java.util.List;

import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;

@XmlRootElement(name="VisitorDataList")
public class visitordatalist {


    List<visitordata> vstd;

    @XmlElement(name="VisitorData")
    public List<visitordata> getVstd() {
        return vstd;
    }

    public void setVstd(List<visitordata> vstd) {
        this.vstd = vstd;
    }   

}

答案 1 :(得分:0)

出于安全原因,不会为List对象生成setter。

/**
 * Gets the value of the dateIntervals property.
 * 
 * <p>
 * This accessor method returns a reference to the live list,
 * not a snapshot. Therefore any modification you make to the
 * returned list will be present inside the JAXB object.
 * This is why there is not a <CODE>set</CODE> method for the dateIntervals property.
 * 
 * <p>
 * For example, to add a new item, do as follows:
 * <pre>
 *    getDateIntervals().add(newItem);
 * </pre>
 * 
 * 
 * <p>
 * Objects of the following type(s) are allowed in the list
 * {@link DateInterval }
 * 
 * 
 */