考虑createAlias方法。文档说:associationPath - A dot-seperated property path
。我不明白它是什么?假设有2个表 - Customer (id, name)
和Ortder (id, customer_id)
。假设为Customer
实体创建了Criteria - 应该是什么关联路径?
有人可以为几种情况提供几个例子,例如左连接,内连接,当然还有连接子句吗?
答案 0 :(得分:1)
假设有2个实体(不是表)Customer和Order映射到提到的表。 Class Order有@ManyToOne对Customer的引用。您尝试搜索订单并希望获得名为“Customer1”的客户的所有订单。
Criteria cr=sessioncreateCriteria(Order.class)
.createAlias("customer", "c", JoinType.INNER_JOIN);
因此,您使用Order实体类的“customer”字段名称,并将其命名为“c”。
然后您可以为别名“c”
添加条件cr.add(Restrictions.eq("c.name", customerNameParameter);