我有一个通过JPA获取数据的问题,
假设我有一个实体,并且该实体与其他相关实体具有OnetoOne关系以及OneToMany。
Hibernate或JPA中是否有任何API,如果我为Entity类和相关实体类设置了少量值,我会得到一个与这些值匹配的Entity类列表。
例如:
Entity e = new Entity();
e.setVar1("Test1");
e.setVar2("Test2");
SiblingEntity se = new SiblingEntity(); // OnetoOne with Entity class
se.setVar1("Var1");
e.setSiblingEntity(se);
ChildEntity ce = new ChildEntity(); // OnetoMany with Entity class
ce.setVar1("value1");
e.getChildEntities().add(ce);
现在我们有一个带有兄弟实体和子实体的根实体e。
是否有任何API会给我以下结果?像下面提到的那样:
列表elist = entityDAO.getEntityList(e);
elist必须包含满足上述条件的Entity类列表。
由于
答案 0 :(得分:0)
您希望通过示例进行一种查询,我不知道能够使用JPA执行此操作的框架,但是当您执行任务时,JQL可以非常简单地表达:
entityManager.createQuery(
"select e from Entity e where e.var1 = 'Test1'
and e.var2 = 'Test2' and e.siblingEntity.var1 = 'Var1'
and e.childEntity.var1 = 'value1'").getResultList();
如果正确定义了实体关系,应该提供您想要的东西。
搜索QBE和JPA我找到以下链接:
也许这是根据你的意图。