Spring boot - 如何在 rest 应用程序中验证 Multipartfile

Posted

技术标签:

【中文标题】Spring boot - 如何在 rest 应用程序中验证 Multipartfile【英文标题】:Spring boot - How to validate Multipartfile in rest application 【发布时间】:2022-01-10 12:15:01 【问题描述】:

我想验证 Multipartfile 对象的扩展名。我在参数@ImageFileValid 中添加了@Valid 和我的自定义注释,但它不起作用。

@PutMapping("/id")
ProductDto updateProduct(@RequestPart @Valid ProductDto product, @PathVariable Long id,@RequestPart @Valid @ImageFileValid MultipartFile image) 
    return productMapper.productToProductDto(productService.update(productMapper.productDtoToProduct(product),id));

【问题讨论】:

baeldung.com/spring-valid-vs-validated !? @xerx593 这不是关于valid和validation区别的问题 问题不是......但也许是答案!? ;) ***.com/a/57696133/592355 【参考方案1】:

来自Spring-Boot, Validation的非常简短但清晰的参考:

只要类路径上有 JSR-303 实现(例如 Hibernate 验证器),Bean Validation 1.1 支持的方法验证功能就会自动启用。这允许 bean 方法在其参数和/或返回值上使用 javax.validation 约束进行注释。 目标类带有此类注释的方法需要类型级别使用@Validated注释进行注释要搜索内联约束注释的方法。

因此,请使用 @Validated 注释(包含)controller 类并报告任何问题。


sample repo at github。

【讨论】:

以上是关于Spring boot - 如何在 rest 应用程序中验证 Multipartfile的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Spring Boot REST 应用程序中重用类?

如何将 Firebase 与 Spring Boot REST 应用程序一起使用?

如何在 Spring(Boot)中装饰 REST 响应?

如何在 Spring Boot 服务应用程序中的 REST 服务调用之间按原样传递请求参数?

如何使用Spring Boot/Spring Cloud 实现微服务应用

如何使用 Spring Boot 应用程序从 Rest API 返回 html