有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

使用Hibernate标准的java嵌套集合

我有两个表Tab1Tab2

Tab1”到“Tab2”的映射是one-to-many

代码是这样的:

private Collection< Tab2 > obj = new ArrayList< Tab2 >();

@javax.persistence.OneToMany(fetch=javax.persistence.FetchType.LAZY,
                                                     mappedBy = "Tab1")

public Collection< Tab2 > getTab2() 
{ 
  return Tab2;
}

public void setTab2( Collection<Tab2 > val ) 
{ 
 this.Tab2 = val;
}

我想从两个表中提取记录

例如:
Tab1有列:
Stu_Id, Stu_FirstName, Stu_LastName

Tab2有一列:
Stu_Id(foriegn Key),Stu_Subject, Stu_Teacher

现在我想从Tab1Stu_Subject,从Tab2获取Stu_id


共 (1) 个答案

  1. # 1 楼答案

    你有不同的可能性来解决你的问题。要么调用命名查询,要么使用^{}构建类型化查询

    已经有许多其他问题涉及{}与{}或{}的关系。这取决于你喜欢什么。我个人更喜欢CriteriaBuilder,因为您可以使用JPA元模型,并且它提供了重构的便利。(尽管我为CriteriaBuilder编写了自己的包装,以获得更好的SQL-外观和感觉;-))

    例如NamedQueryConstruct JPA query for a OneToMany relation

    例如TypedQueryJPA CriteriaQuery OneToMany