我使用JSON从服务器请求许多图像显示在
中<g:Image />
在GWT客户端。
我现在正在做的是发送一个GET请求,该请求返回指向我服务器上的图像的图像URL的JSON列表。
当我将这些网址附加到我的gwt图片时,我想它会在不同的请求中加载每个图像。
有没有办法结合图片网址中图片的请求来减少请求?
我的方法是否可行?
编辑:
我知道对于静态图像我使用ClientBundle。但假设您的应用可以创建图像并将其存储在服务器文件系统中。然后,当您从应用程序请求这些图像时,您需要另一种方法。你有什么建议?
答案 0 :(得分:0)
在GWT中处理图像的最佳方法是使用ImageResources。
您必须创建一个ImageResource:
public interface ImageResources extends ClientBundle {
ImageResources IMAGE_RESOURCES = (ImageResources) GWT.create(ImageResources.class);
@Source("Gwt-logo.png")
ImageResource gwtLogo();
}
并将您的图片放在同一个客户端 - pacakge。
在您的ui.xml中,您可以像这样引用图像资源:
<ui:with field="imageResources" type="com.path.client.resources.ImageResources" />
并使用像这样的图像资源:
<g:Image resource="{imageResources.gwtLogo}"/>
GWT将为您的所有图像创建一个精灵,并通过一次调用加载此精灵。这非常有效。