Playframework Base64编码可以';不能插入mongodb

Playframework Base64编码可以';不能插入mongodb,playframework,morphia,Playframework,Morphia,通知中的文本字段存储base64编码的图像数据。但是,当图像较小(例如30k)时,它会工作。但是如果图像像150k一样大,通知类将被插入到mongodb中,而不包含文本字段 @Entity(value = "notification", noClassnameStored = true) public class Notification { @Id public ObjectId id = new ObjectId(); public ObjectId uid = ne

通知中的文本字段存储base64编码的图像数据。但是,当图像较小(例如30k)时,它会工作。但是如果图像像150k一样大,通知类将被插入到mongodb中,而不包含文本字段

@Entity(value = "notification", noClassnameStored = true)
public class Notification {
    @Id
    public ObjectId id = new ObjectId();
    public ObjectId uid = new ObjectId();
    public String name;
    public String text;
}
  • 您不需要初始化
    id
    ,这将由数据库自动完成。我不确定您为什么要添加第二个
    ObjectId
  • 您确定base64编码工作正常吗?我曾在MongoDB中试用过多兆字节的字符串,从未遇到过任何问题。
    也许你可以展示一下你正在用base64编码二进制的部分
  • 您确定这是存储二进制数据的最佳方法吗?我认为GridFS或类似的技术会更有效

  • [1] 。如果我想关联两个文档,例如学生和课程(学生学习多个课程),每个文档都有一个Id。最好的方法是什么?如果我使用reference,例如reference,它会在每次我加载学生时加载课程。或者在Morphia中有类似于延迟加载的东西吗?[2] .我使用base64图像编码插件进行CKEDITOR。我没有编码图像的代码,但当我打印出来时,它看起来是正确的。它适用于小尺寸的图像。[3] 。原因是我想将图像嵌入HTML模板,使它们位于同一位置。您可以将参数lazy添加到引用中。如果你要交给morphia,你能调试吗?正如我所说,很长的弦对我们来说很好。。。