jpa:从另一个对象访问一个对象返回null

b0zn9rqh  于 2021-07-08  发布在  Java
关注(0)|答案(0)|浏览(256)

我想,从一个键,访问上面的实体键
这种关系是:
规则包含术语规则。每个termrule包含一个规则和一个变量配置。
只有variableconfiguration包含变量。
我想,从termrule,捕获变量。
我试着这样: termRule.getVariableConfiguration().getVariable() 接收空。
有可能得到一个项的变量吗?

  1. public class Rule extends PersistentObject {
  2. private static final long serialVersionUID = 7852189080136935020L;
  3. @Column (name ="NAME", nullable = false)
  4. private String namerule;
  5. @OneToMany(mappedBy = "rule", fetch = FetchType.LAZY)
  6. private List<TermRule> termRule;
  7. }
  8. //getters and setters
  1. public class TermRule extends PersistentObject implements Comparable<TermRule> {
  2. private static final long serialVersionUID = 336244667983772321L;
  3. @ManyToOne
  4. @JoinColumn(name = "ID_RULE", referencedColumnName = "ID", nullable = false)
  5. private Rule rule;
  6. @OneToOne
  7. @JoinColumn (name ="ID_VAR_CONF", referencedColumnName = "ID", nullable = true)
  8. private VariableConfiguration variableConfiguration;
  9. }
  1. public abstract class VariableConfiguration extends PersistentObject {
  2. private static final long serialVersionUID = -4967631633375881594L;
  3. @ManyToOne
  4. @JoinColumn(name = "ID_VARIAVEL", referencedColumnName = "ID", nullable = false)
  5. private Variable variable;
  6. @OneToOne (mappedBy= "variableConfiguration", cascade = CascadeType.REMOVE, fetch = FetchType.LAZY)
  7. private TermRule termRule;
  8. }
  9. @DiscriminatorValue("Triangle")
  10. public class Triangle extends VariableConfiguration {
  11. }
  1. public class Variable extends PersistentObject {
  2. private static final long serialVersionUID = -1172539974105845401L;
  3. @Column (name = "NOME", nullable = false)
  4. private String name;
  5. @OneToMany (mappedBy= "variable", cascade = CascadeType.REMOVE, fetch = FetchType.LAZY)
  6. private List<VariableConfiguration> variableConfiguration;
  7. }

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题