将原始类对象转换为特定的类对象

时间:2012-01-19 10:33:16

标签: java hibernate

我正在研究Hibernate和Spring 我设计了一个返回类型为List的方法。 当我使用hibernate查询数据库时,它会创建特定类型的对象。 我想迭代原始类型对象的列表并打印对象属性。

这里我附上了我的方法

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();
}

1 个答案:

答案 0 :(得分:1)

您的HQL查询返回List<Object[]>您可以将方法签名更改为

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

在调用此方法的位置迭代列表并打印详细信息

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>
相关问题