我正在使用 liferay 并希望将图像存储在我的 MySQL 数据库中。 我的 service.xml 是这样的:
<entity name="DLApp" local-service="true" remote-service="true">
<column name="blobId" type="long" primary="true" />
<column name="desc" type="String" />
<column name="image" type="Blob" />
</entity>
当我构建服务时,我收到 BUILD SUCCESSFUL 消息,但 blobuploadModelImpl 类中的包 com.test.blob.upload 出现错误。
我应该如何编写将图像存储到数据库中并检索它的函数?
最佳答案
我对 Blob 有同样的问题,所以我将它更改为字符串类型,它足以将最多 10 MB 的图像存储为字符串,我使用 MySql 作为数据库并且这些列被映射为 LONGTEXT。 此外,字段应在模型提示中“提示”为 CLOB,请参见下面的示例。
<entity name="UserExt" local-service="true" remote-service="true">
<column name="photo" type="String" />
</entity>
<model-hints>
<model name="com.project.model.UserExt">
<field name="photo" type="String">
<hint-collection name="CLOB" />
</field>
</model>
</model-hints>
或者,您可以将图像存储到 Liferay 的图片库。
关于java - liferay 的 service.xml 中的 Blob 数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15517141/