jaxb - 添加元素到列表(maven-plugin)

jaxb - add elements to list (maven-plugin)

我用 jaxb 生成了 classes,现在我需要填充一些列表。最好的方法是什么?

pom.xml:

         <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>jaxb2-maven-plugin</artifactId>
            <executions>
                <execution>
                    <goals>
                        <goal>xjc</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                <schemaDirectory>${basedir}/src/main/resources/META-INF/xsd</schemaDirectory>
                    <packageName>be.structure</packageName>
                <outputDirectory>${basedir}/target/generated/java</outputDirectory>
            </configuration>
        </plugin>

生成的class列表所在位置:

@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "configuration", propOrder = {
"professions"
})
public class Configuration {

protected List<Profession> professions;

public List<Profession> getProfessions() {
    if (professions == null) {
        professions = new ArrayList<Profession>();
    }
    return this.professions;
    }
}

但如您所见,没有 "addProfession" 或 "setProfessions()" 之类的东西。我知道有一个方法,但我真的记不住了..

如果基础列表是可变的,

getProfessions().add(profession) 应该可以解决问题,但通常您不会更改 JAX 实例的内容,因为 JAXB 会根据 XML 数据为您填充对象它是从 - 如果您更改该列表,它不再代表 XML。