结论:
当在Liferay中用管理员登录,导航到控制面板->Documents and Media ,在指定文件夹下添加BasicDocument时,服务器做了如下的事情:
(1) 在DLFILEENTRY表中添加一条记录代表被添加的文档。
(2) 在DLFILEENTRYVERSION表中添加一条记录,通过fileEntryId外键关联到DLFILEENTRY表,用来记录刚被添加文档的版本信息。
(3) 在DLFOLDER表中更新最新post提交的时间戳。
(4) 根据服务器对于com.liferay.portlet.documentlibrary.store的具体实现的不同,先对文件进行病毒扫描(在portal.properties 中有开关),然后把上传的资源文件存入到Store的某个具体位置。
Store有5种实现,我至少可以保证,如果用的是FileSystemStore,那么这个资源文件被放入$liferay_home/data/document_library目录,并且最终文件名不再是上传的文件名,而是<version_number>.如果使用的是DBStore,那么这个资源文件最终会被放在数据库中DLCONTENT表中,并且资源文件(比如图片)以BLOB的形式存储。
(5)在ASSETENTRY表中添加一条记录,它通过classpk外键关联到DLFILEENTRY,因为File也是一种资产,所以必须在这张表中也留下记录。
具体分析:
Liferay控制面板中,当创建了文件夹,然后要在其中添加某个Basic Document:
查看浏览器debug信息:
时间: 2024-08-03 23:57:08