我不做耶拿,但基本上你想遍历com.hp.hpl.jena.query.ResultSet
和地图信息为List<RowObject>
,其中RowObject
是代表一个单列你想在一个HTML表格来显示自己的模型类。映射后,将List<RowObject>
置于请求范围内,并将请求转发给JSP。
List<RowObject> results = getItSomeHow();
request.setAttribute("results", results); // Will be available as ${results} in JSP
request.getRequestDispatcher("page.jsp").forward(request, response);
然后在JSP中,使用JSTLc:forEach
遍历List<RowObject>
,打印HTML表格。
<table>
<c:forEach items="${results}" var="rowObject">
<tr>
<td>${rowObject.someProperty}</td>
<td>${rowObject.anotherProperty}</td>
...
</tr>
</c:forEach>
</table>
更新根据您的其他答案,这里是你如何能基础上,耶拿的ResultSet
创建List<RowObject>
:
List<RowObject> results = new ArrayList<RowObject>();
while (rs.hasNext()) {
RowObject result = new RowObject();
QuerySolution binding = result.nextSolution();
result.setInd(binding.get("ind"));
result.setSomethingElse(binding.get("something_else"));
// ...
results.add(result);
}
,并按如下显示它:
...
<td>${rowObject.ind}</td>
<td>${rowObject.somethingElse}</td>
...
这和我的答案基本相同,只是你在错误的地方打印。通常的做法是将结果显示在JSP文件(视图)中,而不是在servlet(Controller)中显示。您需要创建一个模型并将其传递给视图,如我的答案中所述。 – BalusC 2010-06-07 17:36:24