Spring MVC Image Contrôleur d'affichage de l'Image en Octets en JSP

J'ai un Spring MVC de l'application, et l'une des pages Jsp doivent afficher les images provenant d'une base de données.

Les images sont stockées dans la base de données comme des Gouttes.

Quelle est la meilleure façon de les afficher? Quel genre de servlet/contrôleur dois-je montrer sur la JSP de l'image en octets? Devrait être une question facile, mais je n'ai pas été en mesure de trouver une solution complète de n'importe où.

Ma compréhension est que j'ai besoin d'un contrôleur séparé, dire ImgController/id=, ce qui permet d'afficher l'image en octets basé sur un paramètre de la requête, et puis, dans ma JSP je peux img src="ImgController/id...". Mais comment puis-je mettre en œuvre et de fil de ce contrôleur?

De l'aide ou des exemple serait vraiment apprécié. Merci beaucoup.

  • Une solution simple que j'ai trouvé est d'avoir une simple Servlet (pas un Contrôleur MVC, mais juste un HttpServlet) pour servir de l'image, en fonction de la demande param (ID). Toutefois, dans ce cas, nous allons à l'extérieur du Conteneur spring mvc, et automatique DB accès est hors de portée. Donc je l'ai mis dans la Session, un HashMap (ID->Blob) qui est définie à partir de quelques Contrôleur spring mvc qui ont accès à la DB. Avec cet attribut de session publiquement disponibles, la ImgServlet pouvez obtenir les octets sans passer par la DB. Elle fonctionne. Mais une bonne spring mvc solution serait sympa.
  • Vous prévoyez sur l'utilisation de Spring MVC annotations ou de prolonger l'un des obsolète classes dans org.springframework.web.servlet.mvc comme AbstractController?
InformationsquelleAutor user783312 | 2011-07-07