org.hibernate.QueryException:非法尝试取消引用集合-子查询错误
我尝试过类似的问题,但没有成功。拜托,有人能帮我解决这个问题吗。我有以下POJO:org.hibernate.QueryException:非法尝试取消引用集合-子查询错误,hibernate,jpa,Hibernate,Jpa,我尝试过类似的问题,但没有成功。拜托,有人能帮我解决这个问题吗。我有以下POJO: @Entity public class EntityA implements Serializable { private static final long serialVersionUID = 1L; @Id @GeneratedValue(strategy = GenerationType.AUTO) private int id; @Column(length=9) private Stri
@Entity
public class EntityA implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private int id;
@Column(length=9)
private String someField;
@Column(length=50)
private String anotherField;
Getters and Setters ......
@Entity
public class EntityB {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private int id;
@OneToMany(cascade={CascadeType.ALL} )
private List<EntityA> listOfEntityA;
Getters and Setters ......
在没有子查询的情况下也尝试过,将entityB字段中包含的对象EntityA列表作为参数传递,但同样没有成功
谁能告诉我哪里错了
提前感谢尝试以下查询:
String query =
"SELECT entityA " +
"FROM EntityA entityA " +
"WHERE entityA.id NOT IN (" +
" SELECT entityAOfB.id " +
" FROM EntityB entityB " +
" JOIN entityB.listOfEntityA entityAOfB " +
" WHERE entityB.id = ?1";
")";
请尝试以下查询:
String query =
"SELECT entityA " +
"FROM EntityA entityA " +
"WHERE entityA.id NOT IN (" +
" SELECT entityAOfB.id " +
" FROM EntityB entityB " +
" JOIN entityB.listOfEntityA entityAOfB " +
" WHERE entityB.id = ?1";
")";
谢谢尼古拉·阿尔布。它工作得恰到好处。我对这个连接子句不太了解。我会寻找更多的信息。再次,非常感谢,谢谢尼古拉·阿尔布。它工作得恰到好处。我对这个连接子句不太了解。我会寻找更多的信息。再次感谢大家。
String query =
"SELECT entityA " +
"FROM EntityA entityA " +
"WHERE entityA.id NOT IN (" +
" SELECT entityAOfB.id " +
" FROM EntityB entityB " +
" JOIN entityB.listOfEntityA entityAOfB " +
" WHERE entityB.id = ?1";
")";