В моем 1-м сервлете, где я генерирую Список, выглядит следующим образом
List<Image> imageId = imageDAO.listNames(image);
request.setAttribute("imageId", imageId);
//Redirect it to home page
request.getRequestDispatcher("/webplugin/jsp/profile/photos.jsp").forward(request, response);
, который получает список imageId
для отображения в JSP с помощью c:forEach
<c:forEach items="${imageId}" var="image">
<img src="Photos/${image.photoid}">
</c:forEach>
У меня есть класс bean-компонента Image, свойства которого - photoid
во втором сервлете, который отображается на Photos
шаблон URL, который я привожу на каждую фотографию.
Проблема:
- Я получаю одно и то же изображение, повторяющееся не раз, что равно количеству элементов в списке
imageId
. Предположим, у imageId есть пять imageid в своем Списке, тогда одно и то же изображение отображается в моем JSP пять раз. Как получить каждый id
от него?
РЕДАКТИРОВАТЬ: Это мой метод imageDAO.listNames (), чтобы получить photoid есть проблемы при получении изображений и положить его в List<Image>
public List<Image> listNames(Image image) throws IllegalArgumentException, SQLException, ClassNotFoundException {
Connection connection = null;
PreparedStatement preparedStatement = null;
ResultSet resultset = null;
Database database = new Database();
List<Image> list = new ArrayList<Image>();
try {
connection = database.openConnection();
preparedStatement = connection.prepareStatement(SQL_GET_PHOTOID);
preparedStatement.setLong(1, image.getUserid());
resultset = preparedStatement.executeQuery();
while(resultset.next()) {
image.setPhotoid(resultset.getString(1));
list.add(image);
}
} catch (SQLException e) {
throw new SQLException(e);
} finally {
close(connection, preparedStatement, resultset);
}
return list;
}