帮助使用Spring创建图像servlet
问题描述:
我创建了一个JSF应用程序,并将一大串图像(头像)存储在我的数据库中作为斑点。我试图创建一个servlet,所以我可以调用一个url,如“/ imageServlet?123,它会调用我的servlet通过123作为id等等,并输出流。我做了一些阅读,看起来像我需要使用MVC,但是我很困惑类和方法声明需要的样子。我是否需要使用@Controller注释?我真的只需要一个体面的例子,所以我可以关注它并知道从哪里把我的代码。帮助使用Spring创建图像servlet
目前我的类声明如下
public class ImageServlet extends HttpServlet {
...
@Override
protected void doGet(HttpServlet request, HttpServletResponse respose) {
...
}
}
我假定这是错误的,但我不能找到一个ny如何在Spring中执行此操作的示例。一点指导将非常感激。谢谢。
答
如果您不需要访问spring上下文,则可以安全地拥有一个类似于您所展示的servlet。你将只需要使用request.getParameter("id")
(与/imageServlet?id=123
类型的网址)。
如果,但是,需要访问的Spring bean,这样就可以得到相应于通过ID的用户,那么你就可以有一个方法,像@Controller
:
@RequestMapping("/image/{id}")
@ResponseBody
public byte[] getImage(@PathVariable int id) {
// load the image into a byte array and return it
}
首先这样一个问题:究竟是什么你需要在servlet中使用Spring吗? – BalusC 2010-11-01 12:14:37
我不知道,我真的不知道做这些事情需要什么,我只是读了一个人在某处使用Spring,我认为我也需要这样做。 – HowToServlet 2010-11-01 12:18:26
Bozho已经覆盖它。尽量不要过度复杂的事情。如果你不需要弹簧托管的豆子,那么就不要试图用困难的方式:) – BalusC 2010-11-01 12:24:16