如何在弹簧控制器中创建jwt图像

时间:2011-03-07 08:28:10

标签: java jsp spring-mvc

嘿      我有一个弹簧控制器,如下图所示,它可以创建一定的图像。

public class ImageMapController extends AbstractController {


protected ModelAndView handleRequestInternal( HttpServletRequest request,
        HttpServletResponse response ) throws Exception
        {
            File file = new File("C:/Users/Rahul/Pictures/EmptyParkingLot.jpg");

            BufferedImage image= javax.imageio.ImageIO.read(file);
            int width = image.getWidth();
            int height = image.getHeight();
            BufferedImage buffer =
                new BufferedImage(width*2,
                                  height,
                                  BufferedImage.TYPE_INT_RGB);
            Graphics g=buffer.getGraphics();
            Graphics2D g2 = (Graphics2D)g;
            g2.setBackground(Color.white);
            g2.setColor(Color.red);
            g2.drawString("Item 1",0,0);

            g2.drawImage(image, 40, 40, null);
            g2.drawString("Item 2",width,0);
            g2.drawImage(image, 40 + width, 40, null);

            ServletOutputStream out1 = response.getOutputStream();
            JPEGImageEncoder encoder= JPEGCodec.createJPEGEncoder(out1);
            encoder.encode(buffer);

            return new ModelAndView("parkingimage");
        }

}

上面的代码工作正常,它在parkingimage.jsp中显示我想要的图像。但是,与将其作为jsp清除相反,我只是想将其用作我的jsp中带有<img>标记的图像或者如何将此jsp包含在另一个jsp中,除了显示图像之外我还有一些文本我想要在同一个jsp中显示我正在显示图像。

感谢任何帮助。提前致谢。 问候, 5-羟色胺大通

1 个答案:

答案 0 :(得分:1)

您需要创建另一个控制器来生成页面,该页面中的<img src = "...">应该指向生成图像的控制器(如果需要,这些URL可以包含参数)。

另一种选择是使用Data URI,但它的大小和浏览器支持有限。