Ida*_*dan 6 java hibernate jpa
我有两个没有建模关系的表:
表comm的列:
name
date
code
Run Code Online (Sandbox Code Playgroud)
表persondesc的列:
code
description
Run Code Online (Sandbox Code Playgroud)
这两个表之间的关系是多对一(许多通讯一个persondesc):
com.code = persondesc.code
这两个表使用注释进行映射,但我没有声明关系.
我想要的是选择comm排序的表persondesc.description.
我该怎么做JPA和Hibernate?
Nei*_*ton 16
因此,如果您的类没有"关系",那么您可以执行类似的查询
SELECT a FROM A a, B b WHERE a.someField = b.otherField ORDER BY b.anotherField
Run Code Online (Sandbox Code Playgroud)
可使用JPA标准,可以实现类似
CriteriaBuilder cb = emf.getCriteriaBuilder();
CriteriaQuery<A> crit = cb.createQuery(A.class);
Root<A> aRoot = crit.from(A.class);
Root<B> bRoot = crit.from(B.class);
aRoot.alias("a");
bRoot.alias("b");
crit.select(aRoot);
Predicate fieldEquals = cb.equal(aRoot.get(A_.someField), bRoot.get(B_.otherField);
crit.where(fieldEquals);
crit.orderBy(cb.asc(bRoot.get(B_.anotherField)));
Run Code Online (Sandbox Code Playgroud)
...或者只是重新设计你的课程并帮助你的开发人员.
| 归档时间: |
|
| 查看次数: |
10904 次 |
| 最近记录: |