我在我的项目中使用JPA + hibernate。我必须从已经存在的数据库中检索数据,并且不能对其进行修改。JPA实体复合索引集合
架构就像是有多个组织,每个公司都有很多账单,每个账单都有很多lineitems。 > ORGID(非唯一索引)
lineitem表 - - > ORGID,BILLID
当纸币
organization
{
id;
name;
...
}
bill
{
id;
organization o;
amount;
....
(EAGER, mappedBy=bill)
List<Lineitem> lineitems;
}
lineitem
{
id;
organization o;
(EAGER)
bill b;
itemCode
.....
}
在数据库模式(目前存在的) 票据表 的索引正在请求,它是这样做的第一个
Select *
from bills
where id = ?
这是好的,因为它的主键上提取。现在,它获取的了LineItem
它做
select * from lineitems where billId = ?
有一个在上BILLID数据库级别上没有索引。在orgId,billId上有一个非唯一的组合索引。
什么我必须把这样的话Hibernate使用ORGID与BILLID一起取了LineItem ..作为..
select * from lineitems where billId = ? and orgId = ?
我不知道这将是一个合适的标题。
谢谢。