Java 需要向JAXB类添加一个方法。怎么用?还是我应该?

Java 需要向JAXB类添加一个方法。怎么用?还是我应该?,java,java-8,jaxb,wadl,Java,Java 8,Jaxb,Wadl,我使用JAXB从WADL xsd生成POJO。我直接从W3C下载了xsd。但是,我希望我的一个POJO有一个帮助器方法,允许我通过它递归,如下所示: public Stream<WadlResource> flattenPath() { return Stream.concat( Stream.of(this), this.methodOrResource.stream() .filter(WadlResour

我使用JAXB从WADL xsd生成POJO。我直接从W3C下载了xsd。但是,我希望我的一个POJO有一个帮助器方法,允许我通过它递归,如下所示:

public Stream<WadlResource> flattenPath() {
    return Stream.concat(
        Stream.of(this), 
        this.methodOrResource.stream()
                .filter(WadlResource.class::isInstance)
                .map(WadlResource.class::cast)
                .flatMap(WadlResource::flattenPath) // recursion here
            );
}
公共流路径(){
返回流.concat(
(这个)流,
this.methodOrResource.stream()
.filter(WadlResource.class::isInstance)
.map(WadlResource.class::cast)
.flatMap(WadlResource::flattpath)//此处递归
);
}
注意
这个
的用法。这个方法是我见过的使用流进行递归的唯一方法

所以我的问题是:如何添加此方法,以便它与xsd一起生成?这是好的做法吗?或者我应该只生成一次代码,添加方法,并将其检查到我的repo中(这似乎不是一个好的实践)。蒂亚

这是好的做法吗

这是主观的。我通常不会这样做。我更喜欢将模式派生类作为简单的DTO,而不使用任何业务逻辑

如何添加此方法,使其与xsd一起生成

您可以使用代码注入器插件注入代码。请看以下问题:


谢谢,但你知道我将如何在实用程序类中重写递归方法吗?@user1660256你递归调用实用程序类的方法。这是另一个问题,请分开问。