sta*_*low 9 hibernate hibernate-mapping
是否有我缺少的注释或者这是对hibernate检索的限制?
实体:
class A {
Long id;
Set<B> b;
@ManyToMany(fetch = FetchType.EAGER)
@JoinTable(name = "A_B", joinColumns = @JoinColumn(name = "A_ID"), inverseJoinColumns = @JoinColumn(name = "B_ID")
public Set<B> getBs() {
return b;
}
}
class B {
Long id;
Set<C> c;
@ManyToMany(fetch = FetchType.EAGER)
@JoinTable(name = "B_C", joinColumns = @JoinColumn(name = "B_ID"), inverseJoinColumns = @JoinColumn(name = "C_ID")
public Set<C> getCs() {
return C;
}
}
Run Code Online (Sandbox Code Playgroud)
的DAO:
class ADaoImpl {
public A load(Long id) {
return new A((A) session.load(A.class, id);
}
}
Run Code Online (Sandbox Code Playgroud)
当我尝试加载A时,我得到了一个
Caused by: java.lang.NullPointerException
at org.hibernate.engine.internal.StatefulPersistenceContext.getLoadedCollectionOwnerOrNull(StatefulPersistenceContext.java:853)
Run Code Online (Sandbox Code Playgroud)
小智 7
我有一个与此非常类似的问题是我有嵌套集,并且每个的hashCode方法都出现在堆栈跟踪中.在hashCode方法中,它们互相引用,所以我删除了hashcode方法中每个对象的引用,我不再有这个例外
我认为这并不是完全的例外,对吗?
A班的二传手在哪里?A 类中的 b 集合是友好范围的,那么 hibernate 将无法写入/注入它的值。B 类中的 C 集合也是如此。
请在此处复制您的 hibernate.xml 和任何其他配置类。hibernate/java 版本也很重要。
| 归档时间: |
|
| 查看次数: |
2226 次 |
| 最近记录: |