java - 在 Heroku(或类似的云服务)中存储 Blob

标签 java heroku playframework blob

我想在 Heroku 中部署一个应用程序尝试他们的新游戏!框架支持。对于我在网站上读到的内容(我得承认我还没有尝试过)他们不提供任何文件系统。这意味着(可能)Play 中用于存储文件的 Blob 字段将无法正常工作。

有人可以:

  • 确认您是否可以在 Heroku 中使用 Play Blob?
  • 提供在 Heroku 中存储文件的“最佳”替代方案?将它们存储在数据库中(他们使用 PostgreSQL)还是其他地方更好?

最佳答案

我在 github 上放了一个如何使用 Amazon S3 执行此操作的示例:
https://github.com/jamesward/plays3upload

基本上您只需要将文件发送到 S3 并将 key 保存在实体中:

AWSCredentials awsCredentials = new BasicAWSCredentials(System.getenv("AWS_ACCESS_KEY"), System.getenv("AWS_SECRET_KEY"));
AmazonS3 s3Client = new AmazonS3Client(awsCredentials);
s3Client.createBucket(BUCKET_NAME);
String s3Key = UUID.randomUUID().toString();
s3Client.putObject(BUCKET_NAME, s3Key, attachment);
Document doc = new Document(comment, s3Key, attachment.getName());
doc.save();
listUploads();

关于java - 在 Heroku(或类似的云服务)中存储 Blob,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7258965/

相关文章:

Java DecimalFormat.format 不格式化数字?

java - android非对称加密代码错误

java - guice bean 初始化中的长时间操作

ruby-on-rails - ActionView::Template::Error(缺少必需的 :bucket 选项)

Facebook,登录重新加载循环

playframework - routesImport 在 playframework 中不起作用

java - 加入 JPQL、CreateQuery

java - 图像过度缩放

python - manage.py 有效,但工头开始出错

java - 在 Java Play Framework 中(重新)生成 Eclipse 项目文件的合理工作流程是什么?