繁体   English   中英

用于在Google App Engine中显示图像的Java代码

[英]Java code to display an Image in Google App Engine

我在GAE的blobstore中有一个图像。 我需要检索它并进行一些转换,最后在我的jsp页面中显示它。

目前我用过,

BlobKey blobKey = new BlobKey(req.getParameter("blob-key"));
blobstoreService.serve(blobKey, res);

这显示了图片,但我想将其检索为“图像”类型,并使用下面的代码调整大小

  ImagesService imagesService = ImagesServiceFactory.getImagesService();
  Image oldImage = ImagesServiceFactory.makeImageFromBlob(blobKey);
  Transform resize = ImagesServiceFactory.makeResize(200, 300);
  Image newImage = imagesService.applyTransform(resize, oldImage);
  byte[] newImageData = newImage.getImageData();

如何在jsp页面中显示我的'newImage'? 如果我能看到一个示例代码,那将非常有用。 我还想知道是否有任何方法可以获得我目前在blobviewer中拥有的图像的blob-key。

您不应该在JSP页面的请求中处理图像。 你必须采取两个步骤:

1.渲染包含图像标记的JSP页面

<img src="mydomain.com/getImage?blob-key=123435"/>

2.将单独的servelt映射到mydomain.com/getImage,输出具有给定id的图像。

因此,您上面提到的所有代码都将放在提供映像的servlet中,而不是JSP交付代码中。 然后可以使用HTTPResponses OutputStream传递图像。 并且不要忘记为响应设置正确的内容类型和长度。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM