我有两个实体
@Entity
@Table(name = SIGNAL")
public class TradingSignal {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "ID", nullable = false, unique = true)
private int id;
@Column(name = "SIGNAL_ID")
private int signalId;
@Column(name = "TICKER", length = 6)
private String ticker;
@OneToMany(cascade = CascadeType.ALL)
private Set<TsUsed> tsUsedSet;
}
和
@Entity
@Table(name = "TS_USED")
public class TsUsed {
@Id
@Column(name = "FILTER_ID", nullable = false)
@GeneratedValue(strategy = GenerationType.AUTO)
private int filterId;
@Column(name = "USER_ID_LSB")
private long userIdLsb;
@Column(name = "USER_ID_MSB")
private long userIdMsb;
@Column(name = "VISIBLE")
private boolean visible;
@ManyToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "ID", nullable = false)
private TradingSignal tradingSignal;
}
我怎样才能找到全部 TradingSignal
在哪里 TsUsed
. userIdLsb
以及 TsUsed
. userIdMsb
中不存在 tsUsedSet
?
无法创建有效 predicate 。
这个代码不适合我
Join<TradingSignal, TsUsed> tsUsed = getTsUsedJoin(root);
Predicate predicateUserIdLsb = builder.equal(tsUsed.get("userIdLsb"), userId.getLeastSignificantBits());
Predicate predicateUserIdMsb = builder.equal(tsUsed.get("userIdMsb"), userId.getMostSignificantBits());
Predicate predicateInvisible = builder.isFalse(tsUsed.get("visible"));
Predicate notInvisibleForUser = builder.and(predicateUserIdLsb, predicateUserIdMsb, predicateInvisible).not();
暂无答案!
目前还没有任何答案,快来回答吧!