使用 MultipartFile 接收文件参数时报了HV000030: No validator could be found for constraint ‘javax.validation.con

        我用一个实体来接收用户传来的参数,其中接收文件参数的属性我是这样定义的:

@ApiModelProperty(value="商品图片",dataType = "MultipartFile",required = true)
@NotEmpty(message = "商品图片不能为空")
private MultipartFile pic;

        然后就报了错,在网上查阅资料后发现:

        解决这个问题的方法如下:
        更改验证注解: NotEmpty 注解并不适用于 MultipartFile 类型,因为 MultipartFile 是一个复杂的对象,它不仅包含文件数据,还包含了文件元数据。你可以考虑使用 @NotNull 或者自定义注解来检查文件是否为空

        以下是一个简单的示例,展示了如何使用 @NotNull 来确保 MultipartFile 不为空:

import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;

import javax.validation.constraints.NotNull;

@RestController
public class FileController {

    @PostMapping("/upload")
    public String handleFileUpload(@RequestParam("pic") @NotNull MultipartFile file) {
        if (file.isEmpty()) {
            return "上传的文件为空";
        }
        // 处理文件上传逻辑
        return "文件上传成功";
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小林想被监督学习

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值