使用@Lob注释在S3中存储数据时出现问题

时间:2011-02-28 10:50:30

标签: amazon-s3 blob amazon-simpledb lob

对于我的应用程序,我将数据存储在simpleDB中,但由于SimpleDB每个属性的最大值为1024个字符,因此应在S3中存储较大的值。

我正在做这样的事情::

@Basic(取= FetchType.LAZY)
@Lob
private byte [] multimedia; //存储在s3中

和@Lob在它的getter和setter上 JPA查询没有错误....但是在s3或simpleDB中没有创建多媒体字段。请指导在哪里寻找这个问题的解决方案

还建议如何使simpledb的行引用s3中的相同多媒体对象(以减少数据冗余),就像我通过手动创建lobkey并尝试在另一个对象中使用该值一样...它创建了一个新的使用新密钥在s3中复制。

由于

1 个答案:

答案 0 :(得分:1)

您可以将多媒体文件存储在Amazon s3上,并将该多媒体文件的公共URL存储在Amazon SimpleDB上。

假设你有形象说.. my_image.png 。将该图像上传到您想要的存储桶中的亚马逊s3 ..说 my_bucket 。生成上传的s3对象的公共URL。这将是。的 http://my_bucket.s3.amazonaws.com/my_image.png 即可。将该公共URL上传到Amazon SimpleDB。

您可以轻松完成任务,并可以通过Amazon Simple-db和Amazon s3同步上传的数据。