Mybatis更新blob字段报错

img

img

img


我想做一个头像上传的功能,并更新数据库类型为blob的字段headimg,但是控制台报错说没有序列化,这个multipartfile应该怎么处理才能正确更新。

不推荐把文件存在数据库中,实在想存,可先转成base64

通常情况下数据库不应该存二进制文件,而是存文件的路径,根据路径查找文件。因此具有两种解决方案:

  1. 把 student 表 headimg 字段类型改成 varchar,然后存你写到磁盘上的路径。
  2. 如果一定在数据库存二进制文件,可以把 StudentMapper#updateHeadImg 方法中的 MultipartFile 类型改成 byte[] 或 Inputstream,然后将调用 MultipartFile#getBytesMultipartFile#getInputStream 的返回值传到这个参数。