Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Java中获取appengine实体大小_Java_Google App Engine - Fatal编程技术网

如何在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()的类看起来怎么样?里面有字节[]或图像吗?请发一些代码。