急求!!!!请问@Validated如何在非controller方法中使用?各位有什么建议?

求助大神。最近需要做参数校验。根据网上的例子,都是在controller中直接对请求的参数进行校验。但是我目前的需求有点不一样:我希望先判断该请求参数中某一个字段的类型再进行参数校验。假如该请求是A类型任务,那我只校验abc字段,假如是B类型任务,那我只校验def字段这样。
所以我希望能在普通方法中进行校验,但实际结果却没有生效:
publicclassTaskValidator{
privatestaticfinalLoggerlogger=LogManager.getLogger("TaskValidatorLogger");
publicvoidvalidateTest(@ValidatedTesttest){
logger.info("Validate:{}",test.getName());
}
publicstaticvoidmain(String[]args){
newTaskValidator().validateTest(newTest());
}
}
@Data
publicclassTest{
@NotNull(message="namecannotbenull")
privateStringname;
}
请问该如何解决呢
SMILET
浏览 1554回答 2
2回答

一只甜甜圈

@Validated加到类(或者方法?)上@Valid加到参数上需要自己处理抛出的ConstraintViolationException
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript