首页 > 解决方案 > 如何在 Liferay 6.2 中下载所有文件夹内容

问题描述

有没有办法下载文件夹:Liferay 6.2 中文件夹和子文件夹中的所有文件,而不使用文件夹中存在的所有文件的循环?

我需要以编程方式进行。

Example : 
Folder to download "XFolder"

XFolder
 - SubFolder1
   - File11
   - File12
 - SubFolder2
   - File21
   - File22
 - File1
 - File2

选择下载 XFolder 时,系统会搜索文档和媒体中的文件夹,并将所有文件夹内容保存在磁盘中的 .zip 文件中。
内容应具有与上述相同的结构。

谢谢您的帮助。

标签: javaliferayliferay-6

解决方案


您可以尝试使用文件夹和条目的“treePath”值来找出文件,但您仍然需要一些循环。

您可能需要为此进行动态查询。

算法应该是这样的。

  1. 找出您的文件夹的 ID
  2. 查看 Folder 表的 treePath 属性,并获取您感兴趣的所有路径的列表。
  3. 获取所有文件夹 ID
  4. 循环浏览您感兴趣的所有文件夹并加载它们各自的文件。(也许你也可以做一个一次性收集所有的查询)

推荐阅读