通过wicket下载zip文件

Nou*_*aki 4 wicket

我正在使用wicket框架,我已经通过Java代码制作了一个zip文件,我希望有一个链接来下载它,我不知道是否可能或者我应该通过wicket制作zip文件(但不是Java)然后有一个下载链接.

Xav*_*ica 7

看看ZipResourceStream.使用此类,您可以动态生成目录的zip内容,并使用org.apache.wicket.markup.html.link.ResourceLinkwith ResourceStreamResource链接到它.

File file = new File(path);
IResourceStream resStream = new ZipResourceStream(file);
ResourceStreamResource resource = new ResourceStreamResource(resStream);
ResourceLink link = new ResourceLink("link", resource);
add(link);
Run Code Online (Sandbox Code Playgroud)

或者,如果您希望使用其他工具压缩文件,则可以使用DownloadLink:

File zipFile = generateZipFile();
IModel fileModel = new Model(zipFile);
add(new DownloadLink("dllink", fileModel);
Run Code Online (Sandbox Code Playgroud)

如果您希望在Link的onClick中动态生成文件,请查看以下问题:如何使用Wicket的DownloadLink和动态生成的文件?