Отображение изображения блоба на странице jsp с помощью Spring MVC 3 - PullRequest
0 голосов
/ 07 августа 2011

У меня есть класс с (среди прочего) полевым изображением, полученным из базы данных:

public class Person {
  String name;
  Blob picture;
}

Итак, у меня есть контроллер, в который я добавляю объект person в модель

@RequestMapping(value = "/online", method = RequestMethod.GET)
public String getCurrentUser(Model model) {
  Person person = getMyPerson()
  model.addAttribute("person", person);
  return "online";
}

И, наконец, у меня есть страница .jsp для отображения пользователя:

<html>
  <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
   ..some tags

   Persons name: ${person.name}
   Persons picture: ?your_answer_here? 
</html>

Итак, вопрос (очевидно) заключается в том, как отобразить поле BLOB-объектов в виде изображения? Я пытался и потерпел неудачу с. Я действительно не хочу выполнять новый запрос к базе данных, я просто хочу отобразить изображение, которое у меня уже есть ...

1 Ответ

2 голосов
/ 07 августа 2011

HTTP не позволяет это напрямую. Каждое изображение должно быть отдельным запросом к отдельному URL. Таким образом, вам понадобится контроллер / сервлет, который принимает идентификатор пользователя в качестве параметра и записывает большой двоичный объект в поток ответов (и соответственно устанавливает заголовок Content-Type - image / jpeg, image / png и т. Д.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...