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) {