@ElementCollection 的 jpa criteriabuilder
这个简单的 jpl 的等效 CriteriaBuilder 是什么?
TypedQuery<Sample> query = em.createQuery("from Sample s, In(s.friends) f where f = :friend", Sample.class).setParameter("friend", friend);
// query yields: select sample0_.id as id39_ from Sample sample0_ inner join Sample_friends friends1_ on sample0_.id=friends1_.Sample_id where friends1_.friends=?
return query.getResultList();
我已经使用 .in() .join()
和 .member()
尝试了数十种公式,但均无济于事。 .in
仅用作 where 子句,而不是 from 的一部分。 .join
似乎需要在 where 中使用时取消对属性的引用。和 .member
仅适用于非元素类型(完整实体作为包含的引用)。 [我可以发布我徒劳的尝试。我已将 join()
机制用于其他集合,其中连接的对象是一个实体,但我不知道如何使用元素。]
What's the equivalent CriteriaBuilder for this simple jpl?
TypedQuery<Sample> query = em.createQuery("from Sample s, In(s.friends) f where f = :friend", Sample.class).setParameter("friend", friend);
// query yields: select sample0_.id as id39_ from Sample sample0_ inner join Sample_friends friends1_ on sample0_.id=friends1_.Sample_id where friends1_.friends=?
return query.getResultList();
I've tried dozens of formulations using .in() .join()
and .member()
to no avail. .in
only works as a where clause not as part of the from. .join
seems to require a dereference to an attribute when using in the where. and .member
only works on non-elemental types (full entities as the contained reference). [I can post my vain attempts. I've used the join()
mechanism for other collections where the joined object is an entity, but I can't figure out how to use for an element.]
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论