Spring Boot - 如何在REST应用程序中验证MultipartFile

3

我希望验证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));
}

请将以下有关编程的内容从英语翻译成中文。仅返回翻译后的文本:https://www.baeldung.com/spring-valid-vs-validated ! - xerx593
@xerx593,这不是关于有效和验证之间差异的问题。 - Mateusz Sobczak
问题不确定,但答案呢?! ;) - xerx593
https://dev59.com/l1oV5IYBdhLWcg3wgu5H#57696133 - xerx593
请问您能分享一下ImageFileValid验证的内容吗? - Xaxage
1个回答

3
非常简短但明确的参考文献来自Spring-Boot,Validation
Bean Validation 1.1支持的方法验证功能只要JSR-303实现(如Hibernate validator)在类路径上就会自动启用。这使得bean方法可以在其参数和/或返回值上注释javax.validation约束。带有这种注释的目标类需要在类型级别上使用@Validated注释对其方法进行搜索。
因此,请使用@Validated注释注释(包含的)控制器类,并报告任何问题。
一个GitHub上的示例仓库

嗨 @xerx593,我正在使用Spring Boot 2.7,但无法正常工作。你有什么想法吗?我正在使用混合内容类型发送一个带有JSON的多部分文件。 - Jedupont
在这种情况下更容易的方法是,@Jedupont:我们想要(他想要)验证“内部”的JSON,在我们的新方案中,我们想要验证一个(多个)“部分”的内容类型(/长度/“文件名”…),该部分可以/应该是JSON... - xerx593

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接