1
我正在用Hibernate中的多個連接編寫查詢。 現在我需要查詢所有使用某個項目的模型和相關產品。在休眠中將多個結果合併在一起
我創建的HQL查詢,它看起來像:
"FROM Model m inner join fetch m.products p inner join p.itemsInProducts iip inner join iip.item i where i.number = '" + itemID + "' and m.active = '1' and p.active = '1' and iip.active = '1'"
它給了我一些結果返回。但是我有多個Model對象,但是使用了不同的產品。有什麼方法可以將所有模型對象合併到同一個模型中?
我在Model類變量的樣子:
public class Model implements java.io.Serializable {
private long id;
private ItemClass itemClass;
private OrderProcessorCode orderProcessorCode;
private String name;
private boolean active;
private long companyId;
@JsonManagedReference
private Set products = new HashSet(0);
private Set itemsConsumedPerModels = new HashSet(0);
private Set itemsInModels = new HashSet(0);
而且產品:
public class Product implements java.io.Serializable {
private long id;
private ItemClass itemClass;
private ItemType itemType;
private OrderProcessorCode orderProcessorCode;
private String number;
private String description;
private boolean baseProduct;
private boolean otmProduct;
private boolean active;
private long companyId;
private Set itemsInProducts = new HashSet(0);
@JsonBackReference(value = "product-models")
private Set models = new HashSet(0);
private Set optionsPerProductsForProductId = new HashSet(0);
private Set optionsPerProductsForOptionId = new HashSet(0);
private Set productionOrders = new HashSet(0);
如何刪除「WHERE」子句? – Antoniossss
Where子句是正確的。我改變了我的代碼以手動合併模型對象到幾個for循環中。但我不認爲這是最好的溶劑。 – JimmyD