如何在Java中获取appengine实体大小
是否可以获取实体的大小?看起来这应该是一件简单的事情,但我不知道怎么做 我看到了如何在Java中获取appengine实体大小,java,google-app-engine,Java,Google App Engine,是否可以获取实体的大小?看起来这应该是一件简单的事情,但我不知道怎么做 我看到了 com.google.apphosting.api.ApiProxy$RequestTooLargeException: The request to API call datastore_v3.Put() was too large. 但我不确定整体是否超过1mb。但愿我能察觉到,如果是这样的话,并采取一些措施。在catch子句中处理这种情况是否是最佳做法。如果需要估计大小,可以获取在调用时将此实体转换为的pr
com.google.apphosting.api.ApiProxy$RequestTooLargeException: The request to API call datastore_v3.Put() was too large.
但我不确定整体是否超过1mb。但愿我能察觉到,如果是这样的话,并采取一些措施。在catch子句中处理这种情况是否是最佳做法。如果需要估计大小,可以获取在调用时将此实体转换为的protoBuffer的大小:
EntityProto ep=EntityTranslator.convertToPb(entity);
int size=ep.propertySize();
如果您想要估算大小,您可以在
put()
call:
EntityProto ep=EntityTranslator.convertToPb(entity);
int size=ep.propertySize();
我得到的估计是:
EntityTranslator.convertToPb(entity).maxEncodingSize();
我得到的估计是:
EntityTranslator.convertToPb(entity).maxEncodingSize();
您给put()的类看起来如何?里面有字节[]或图像吗?请发布一些代码。你给put()的类看起来怎么样?里面有字节[]或图像吗?请发一些代码。