나는 예나하지 않지만, RowObject
당신은 HTML 테이블에 표시 할 단일 행을 나타냅니다 자신의 모델 클래스이다 기본적으로 당신이 List<RowObject>
에 정보를 com.hp.hpl.jena.query.ResultSet
반복 및지도 싶습니다 . 매핑 후에 요청 범위에 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에서,
JSTL
c:forEach
는 HTML 테이블을 인쇄 할 때
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);
}
그리고 다음과 같이 표시 :
<table>
<c:forEach items="${results}" var="rowObject">
<tr>
<td>${rowObject.someProperty}</td>
<td>${rowObject.anotherProperty}</td>
...
</tr>
</c:forEach>
</table>
다른 답변에 따라
업데이트, 여기 당신이 예나의 ResultSet
에 따라 List<RowObject>
를 만들 수있는 방법
...
<td>${rowObject.ind}</td>
<td>${rowObject.somethingElse}</td>
...
이것은 내 대답과 근본적으로 동일하며 잘못된 위치에서만 인쇄합니다. 정상적인 방법은 서블릿 (컨트롤러)이 아닌 JSP 파일 (보기)에 결과를 표시하는 것입니다. 내 대답에 설명 된대로 모델을 만들어보기에 전달해야합니다. – BalusC