public class Cluster {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@ManyToMany(cascade = { CascadeType.MERGE, CascadeType.PERSIST }, fetch = FetchType.LAZY)
@JoinTable(name = "cluster_tag", joinColumns = @JoinColumn(name = "cluster_id",
nullable = false,
updatable = false), inverseJoinColumns = @JoinColumn(name = "tag_id", nullable = false, updatable = false))
private Set<Tag> tags = new HashSet<>();
}
例如,如果我必须选择集群中所有以名称“Joh%”开头的记录
- 标签中是否有匹配的记录,所有以“Joh%”开头的集群记录名称
都应该被选中 - 如果他们在标签中有匹配的记录,应该根据某些条件进行过滤,即只有标签的 tag_value 大于 100。
使用 Spring boot Jpa 规范。
