我正在研究 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();
}
最佳答案
您的 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>
关于java - 将原始类对象转换为特定类对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8924549/