【问题标题】:display image from file system in jsp using spring boot使用spring boot在jsp中显示来自文件系统的图像
【发布时间】:2017-07-27 04:41:26
【问题描述】:

我有使用 Spring Boot 的 Java Web 应用程序,我想在 JSP 页面中显示图像,这些图像位于文件系统的外部文件夹 (E:/images) 中。 我在 google 中查看了太多页面,我在 stackoverflow 上发现了一篇文章说我应该编写一个 servlet 来获取图像:我是遗漏了什么还是应该用其他方式来做,请给我更多详细信息,我有点新到春天。感谢您的帮助。

在我的控制器中:

@RequestMapping(value="/images",method = RequestMethod.GET)
    public @ResponseBody void affichimage(@RequestParam("id") Integer Iddd,HttpServletResponse response,HttpServletRequest request) throws IOException
    {
        Annonce annonce=new Annonce();
        annonce=annoncedao.findOne(Iddd);  // get the right annonce from 
         //database
         File imageFile = new File(annonce.getimage()); // in image I have 
            //the  link to images  ex : E:/images/image1.jpeg
        response.setContentType("image/jpeg");

        BufferedImage image = ImageIO.read(imageFile);
        ImageIO.write(image, "image/jpeg", response.getOutputStream());
    }

在 JSP 中:

<  img class="imagesaffichage" src="/images?id=${annonce.id}" alt="No  image"/>

我也将此添加到我的应用程序中:

public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/resources/**")
                .addResourceLocations("file:///E:/images/");
    }

【问题讨论】:

    标签: spring jsp spring-boot


    【解决方案1】:

    我找到了解决方案,我不得不改变上面的方法:

    @RequestMapping(value="/images",method = RequestMethod.GET)
       public @ResponseBody void affichimage(@RequestParam("id") Integer 
          Iddd,HttpServletResponse response,HttpServletRequest request) throws 
          IOException,NullPointerException
           {
            Annonce annonce=new Annonce();
            annonce=annoncedao.findOne(Iddd);  // get the right annonce from 
             //database          
            File imageFile = new File(img);
            response.setContentType("image/jpeg");
            InputStream in=new FileInputStream(imageFile);
            IOUtils.copy(in, response.getOutputStream());
           }
    

    【讨论】:

    • 非常感谢。它解决了我的问题并节省了我很多时间。
    猜你喜欢
    • 2011-05-18
    • 2012-12-02
    • 1970-01-01
    • 2011-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-14
    • 2012-04-21
    相关资源
    最近更新 更多