0
我正在嘗試爲以下模型編寫hql。許多到多個顯式關係的HQL查詢
Product.java
@Entity public class Product implements Serializable {
private static final long serialVersionUID = -3532377236419382983L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private int productId;
@NotEmpty(message = "The product name must not be empty")
private String productName;
private String productCategory;
private String productDescription;
@ManyToMany
@JsonIgnore @JoinTable(name="PRODUCT_SUBCATEGORY",
joinColumns={@JoinColumn(name="productId")},
inverseJoinColumns={@JoinColumn(name="subCategoryId")})
private Set<SubCategory> subCategory = new HashSet<SubCategory>(); //getter setter
SubCategory.java
@Entity
public class SubCategory implements Serializable {
private static final long serialVersionUID = 7750738516036520962L;
@Expose(serialize = true, deserialize = true)
@Id
@GeneratedValue
private Integer subCategoryId;
@Expose(serialize = true, deserialize = true)
@NotEmpty(message = "The subcategory name must not be empty")
@Size(min = 3, max = 20, message = "Minimum 3 to 20 characters allowed")
private String subCategoryName;
@Expose(serialize = false, deserialize = false)
@ManyToOne
@JoinColumn(name="categoryId")
private Category category;
//getter setter
我想查詢的子類別表的subcategoryname基地通過PRODUCT_SUBCATEGORY表來獲取產品數據。示例查詢如下所示。
select * from product where productid in(
select psc.productid from
subcategory sc
inner join product_subcategory psc
on sc.subcategoryid=psc.subcategoryid
where sc.subcategoryname like 'men ware%');
如何在hql中實現上述sql。
謝謝。
謝謝@JBNIZET,這對我很有用。 – soewin