3

有人可以解释这有什么问题吗?有解决方法吗?

private static final String parentField = AbstractType_.parent.getName();
@OneToMany(fetch = FetchType.EAGER, orphanRemoval = true, mappedBy = parentField)
private List<AbstractType> children = new ArrayList<AbstractType>();

在 Eclipse 中,这在 @OneToMany 行上显示和错误:

虽然这很好:注释属性 OneToMany.mappedBy 的值必须是常量表达式。

Maven 构建也因此失败。
然后,这将正常工作。

private static final String test = "";
@OneToMany(fetch = FetchType.EAGER, orphanRemoval = true, mappedBy = test)
private List<AbstractType> children = new ArrayList<AbstractType>();


更新:这里发生了什么,我希望通过元模型获取字段名称,但不能在“mappedBy”属性中引用它。

4

0 回答 0