私は Jena を行いませんが、基本的には、HTML テーブルに表示する単一の行を表す独自のモデル クラスであるwherecom.hp.hpl.jena.query.ResultSet
に情報を反復処理してマップしたいと考えています。マッピング後、 をリクエスト スコープに入れ、リクエストを JSP に転送します。List<RowObject>
RowObject
List<RowObject>
List<RowObject> results = getItSomeHow();
request.setAttribute("results", results); // Will be available as ${results} in JSP
request.getRequestDispatcher("page.jsp").forward(request, response);
次に、JSP でJSTL c:forEach
を使用して を反復処理しList<RowObject>
、HTML テーブルを出力します。
<table>
<c:forEach items="${results}" var="rowObject">
<tr>
<td>${rowObject.someProperty}</td>
<td>${rowObject.anotherProperty}</td>
...
</tr>
</c:forEach>
</table>
他の回答に基づいて更新List<RowObject>
します。Jena の に基づいて を作成する方法は次のResultSet
とおりです。
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>
...