- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个实体类 X,它包含 Y 实体的集合。
X
@ManyToMany
private List<Y> items = new ArrayList<>();
我正在尝试制定 JPA 标准查询限制来测试集合中是否存在 Y 的实例。
X entity = ...; // Some instance
Predicate p = criteriaBuilder.isMember(entity, subRoot.get(X_.items))
给我一个错误: (argument mismatch; ListAttribute<X,Y> cannot be converted to PluralAttribute<X,C,E>))
当我查看元模型时,List 属性如下所示:
public static volatile ListAttribute<X, Y> items;
转到ListAttribute定义:
public interface ListAttribute<X extends Object, E extends Object>
extends PluralAttribute<X, List<E>, E> {
我尝试过转换 criteriaBuilder.isMember(entity, (PluralAttribute)subRoot.get(X_.items))
并从集合更改为列表。
这是否可行,或者是否有其他方法来检查对象是否出现在 JPA Criteria 查询的集合中?
最佳答案
我们通过连接让它工作。
Join join = root.join(root.get(X_.items);
query.where(criteriaBuilder.equal(root.get(X_.items), entity))
输出是这样的:
从 X x 中选择 x_.*在 x_.id=item_.X_id 上内部联接 X_Item item_,其中 x_.item_id=?
关于java - JPA 标准集/列表不能用作 PluralAttribute 来创建谓词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26908769/
我正在开发一个将通过 J1939 与车辆通信的应用程序。我的计划是购买一个 J1939 堆栈,所以我可以肯定我不需要获得物理层或数据链路层的标准,但我想知道我有多少不同的应用层应该从 SAE 订购?
我有一组 boost::shared_ptr,我希望它不是通过共享指针而是通过字符串来排序和唯一化的。我是否必须提供一个新的比较函数来获取共享指针并比较内容,或者已经存在我可以使用的比较器? 最佳答案
我有一个实体类 X,它包含 Y 实体的集合。 X @ManyToMany private List items = new ArrayList<>(); 我正在尝试制定 JPA 标准查询限制来测试集合
我是一名优秀的程序员,十分优秀!