Полностью согласен с вышесказанным - в любом серьезном производственном приложении база данных должна происходить в Java / JDBC на соответствующем контроллере, а не в представлении (JSP).
Но иногда имеет смысл использовать JSTLВозможности SQL, посмотрите хороший учебник по JSTL здесь: http://www.ibm.com/developerworks/java/library/j-jstl0520/index.html
Некоторые соответствующие коды:
<sql:setDataSource var="dataSrc"
url="jdbc:mysql:///taglib" driver="org.gjt.mm.mysql.Driver"
user="admin" password="secret"/>
<sql:query var="queryResults" dataSource="${dataSrc}">
select * from blog group by created desc limit ?
<sql:param value="${6}"/></sql:query>
<table border="1">
<tr>
<th>ID</th>
<th>Created</th>
<th>Title</th>
<th>Author</th>
</tr>
<c:forEach var="row" items="${queryResults.rows}">
<tr>
<td><c:out value="${row.id}"/></td>
<td><c:out value="${row.created}"/></td>
<td><c:out value="${row.title}"/></td>
<td><c:out value="${row.author}"/></td>
</tr>
</c:forEach>
</table>