我有以下表格结构
**BPV table**
id, vid, bid
**vt table**
vid, name, gender
**uv table**
uvid, vid, cast,...
我想在hibernate(mysql)中编写基于vid的BPV和uv之间的左连接
bpv实体有一对一的vt和uv有一对一的vt,但是没有bpv和uv
最佳答案
Hibernate有Criteria API,这是用OO方法执行查询的好方法。如果有持久实体,则可以执行以下操作:
Criteria criteria = session.createCriteria(BPV.class, "bpv");
criteria.createCriteria("bpv.vt", "vt", CriteriaSpecification.LEFT_JOIN);
criteria.createCriteria("vt.uv", "uv", CriteriaSpecification.LEFT_JOIN);
// add restrictions
return criteria.list();