Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.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-存储具有固定大小的图像blob_Java_Image_Hibernate_Blob - Fatal编程技术网

JAVA-存储具有固定大小的图像blob

JAVA-存储具有固定大小的图像blob,java,image,hibernate,blob,Java,Image,Hibernate,Blob,我试图保存一个包含Blob字段的实体(hibernate) 这个斑点的大小可能不同 我的目标是以固定的大小(10KB)保存它 我的图像格式是JPEG,我希望保留其原始宽度\高度,而不是缩小它们(压缩而不是重新调整大小) 丢失原始图像质量不是问题 (旁注-blob是从字节数组创建的,可能应该在字节数组而不是blob上执行大小缩减过程?任何一种方法都会有帮助。) 谢谢 这与休眠和持久性无关。在业务逻辑层中,应该先缩小映像。然后,生成的字节数组应存储在持久实体中。查找可以压缩JPEG的图像处理库JB

我试图保存一个包含Blob字段的实体(hibernate)

这个斑点的大小可能不同

我的目标是以固定的大小(10KB)保存它

我的图像格式是JPEG,我希望保留其原始宽度\高度,而不是缩小它们(压缩而不是重新调整大小)

丢失原始图像质量不是问题

(旁注-blob是从字节数组创建的,可能应该在字节数组而不是blob上执行大小缩减过程?任何一种方法都会有帮助。)


谢谢

这与休眠和持久性无关。在业务逻辑层中,应该先缩小映像。然后,生成的字节数组应存储在持久实体中。查找可以压缩JPEG的图像处理库JB Nizet

缩小图像的过程取决于图像的格式,以及您希望如何减小图像的重量:通过压缩或缩小图像的大小。你不能只取一个字节数组或一个blob,然后应用一种神奇的大小缩减方法,不管字节数组代表什么,这种方法都能奏效。正如@JBNizet已经提到的,这应该是你的应用程序逻辑的一部分。仅仅告诉实体将字节数组截断为某个大小根本没有意义(数据丢失)。请检查我的编辑,现在它是否更有意义?是的,但您已经得到了答案。这与hibernate和持久性无关。在业务逻辑层中,应该先缩小映像。然后,生成的字节数组应存储在持久实体中。找到一个可以压缩JPEG的图像处理库。@Urbanleg:你不仅会降低图像质量,根据图像格式,甚至根本无法读取图像!