2012-01-19 8 views
4

私はHibernateとSpringで作業中です 戻り値の型がListであるメソッドを設計しました。 hibernateを使用してデータベースにクエリを実行するときに、特定のタイプのオブジェクトが作成されます。 生の型オブジェクトのリストを反復して、オブジェクトプロパティを出力したいと思います。生のクラスオブジェクトを特定のクラスオブジェクトに変換する

ここで私はあなたのHQLクエリはあなたが

public List<Object[]> getAnalyticsbyid(String userId) 

そして、この方法は、リストや印刷を反復処理と呼ばれる場所でのメソッドのシグネチャを変更することができますList<Object[]>を返し

public List getAnalyticsbyid(String userId) 
{ 
    Session session=sessionFactory.openSession(); 
    String querystring="SELECT DISTINCT bounces ,visits, landingPagePath FROM AnalyticsDataFeedBean where userId='"+userId+"' ORDER BY bounces DESC"; 
    Query query=session.createQuery(querystring).addEntity(AnalyticsDataFeedBean.class); 
    query.setMaxResults(10); 
    return query.list(); 
} 
+0

正確に何をしますか?リストではなくを返しますか?または、リスト内の各Object []をクラスのインスタンスに変換しますか?あなたはどんな困難を持っていますか? –

答えて

1

私の方法を添付詳細

List<Object[]> list = getAnalyticsbyid("user"); 
for (Object[] objects : list) { 
    for (Object object : objects) { 
     System.out.print(object); 
     System.out.print("\t"); 
    } 
    System.out.println(); 
} 

あなたはそれを表示したい場合はjspファイル内の表として始まる

<table> 
     <tr> 
      <th>bounces</th> 
      <th>visits</th> 
      <th>landingPagePath</th> 
     </tr> 

    <c:forEach items="${analytics}" var="objects"> 
     <tr> 
      <c:forEach items="${objects}" var="object"> 
       <td><c:out value="${object}"/></td> 
      </c:forEach> 
     </tr> 
    </c:forEach> 
</table> 
+0

その戻りリストとオブジェクトクラスには、クエリに基づいた3つのフィールドが含まれています。クエリに基づいて、そのフィールドのフィールドはクエリ内の選択フィールドです。 – dharmendra

+0

このメソッドはcontrolledと呼ばれ、 jspタグを使用してjsp – dharmendra

+0

可能であれば、すでに持っているjspコードを追加してください。 –

関連する問題