日期:2014-05-17  浏览次数:20836 次

jsp页面怎么显示非工程路径下的图片?
最近在研究jsp图片显示的问题,利用img标签,显示本工程下的相对路径下的图片当然都没有问题,现在考虑到不想把图片只放到本工程下,如果放在硬盘的另一个目录下,用系统绝对路径来找到话,比如<img src="file:///X:\X.jpg">,这样在预览里看的到可是在实际的浏览器中现在几乎都屏蔽了,这样不行。就考虑用一个javabean来读取指定的图片文件,可是不知道怎么把读出来的file类用在src下,知道的帮忙回答一下好吗?或者还有什么好的解决方法,可以把图片放在硬盘的另外地方。如果是另外一台机器上硬盘里的图片呢,可以直接访问吗,还是必须启动一个服务器来提供图片?

------解决方案--------------------
Java code

    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html; charset=GBK");
        response.setContentType("image/jpeg");
        
        FileInputStream fis = new FileInputStream("C:/xxx.jpg");
        OutputStream os = response.getOutputStream();
        
        try {
            int count = 0;
            byte[] buffer = new byte[1024*8];
            while ( (count = fis.read(buffer)) != -1 )
                os.write(buffer, 0, count);
        } finally {
            fis.close();
            os.close();
        }
    }