簡體   English   中英

Hibernate:從多個表中獲取多個表列

[英]Hibernate : getting multiple table columns results from multiple tables

我正在使用休眠4和春季3。

我有5個表,每個表都映射有1個實體類。現在,如果我必須從1個表中選擇列,我將在下面進行操作:

String hql = "from Employee E";
Query query = session.createQuery(hql);
List results = query.list();

此結果中的該值將為EmployeeEntity類型。

或者,我也可以使用條件。

現在我的要求是我必須從所有5個表中獲取結果。每個表的1-2列。

以前是1個表,所以我得到一個實體,現在我從5個表中得到結果,因此如何在實體中映射它。

列出結果1 = query.list(); //考慮選擇並獲得不同表的結果中的6列。

現在如何迭代此結果1。

希望你能回答我的問題。

您可以使用Query Result Set Transformer

假設您有來自不同表的4列,例如tab1coltab2coltab3coltab4col

如下創建一個“ POJO”

class MyClass
{
 private Integer tablcol;
 private Integer tab2col;
 private Integer tab3col;
 private Integer tab4col;
  //  getter and setters
}

您可以按照以下方式轉換結果集:

List<MyClass> myClassList=query.setResultTransformer(Transformers.aliasToBean(MyClass.class)).list();

Note :查詢應包含一個結果集(類似於oracle中的游標)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM