我对Java注释很新。但是,我的理解是他们不能自己运行任何代码。
我正在尝试制作验证包,并希望使用@valid
参数注释来验证对象。
例如:
public Response login(@valid LoginRequest request) {
return ...
}
我希望它以这种方式工作,它与spring验证的方式相同。
所以我的问题是:如何在@valid
注释上执行代码来验证对象?我不介意解决方案是否只适用于spring。
我想制作自己的验证包的原因是因为我希望有一个更像“laravel like”的验证包。
答案 0 :(得分:0)
这很简单。我只需要创建一个拦截器并检查preHandle
是否有一个具有@valid
注释的处理程序参数。
如果@valid
存在,我可以获取对象并验证它,失败时只抛出异常并使用异常处理程序处理异常。
我不知道我可以从拦截器访问控制器参数...