BLOB (binary large object)----二进制大对象,是一个可以存储二进制文件的容器。
在计算机中,BLOB常常是数据库中用来存储二进制文件的字段类型。
BLOB是一个大文件,典型的BLOB是一张图片或一个声音文件,由于它们的尺寸,必须使用特殊的方式来处理(例如:上传、下载或者存放到一个数据库)。
根据Eric Raymond的说法,处理BLOB的主要思想就是让文件处理器(如数据库管理器)不去理会文件是什么,而是关心如何去处理它。
但也有专家强调,这种处理大数据对象的方法是把双刃剑,它有可能引发一些问题,如存储的二进制文件过大,会使数据库的性能下降。在数据库中存放体积较大的多媒体对象就是应用程序处理BLOB的典型例子。
DAO层
void addAttachment(@Param(“attachmentInfo”) AttachmentInfo attachmentInfo, @Param(“file”) byte[] file);
mapper文件中
insert into sys_attachment_info (attachment_id, attachment_name, attachment_type, attachment_size, attachment)
values (#{attachmentInfo.attachmentId},
#{attachmentInfo.attachmentName},
#{attachmentInfo.attachmentType},
#{attachmentInfo.attachmentSize},
#{file, javaType=byte[], jdbcType=BLOB, typeHandler=org.apache.ibatis.type.BlobTypeHandler})
</insert>
控制层:
1.接收文件file
2.存储Byte[]
public AttachmentInfo uploadAttachment(MultipartFile file) {