我正在尝试在 Spring MVC 应用程序中编写自定义验证器。我想知道是否有办法将@Model 对象传递给自定义弹簧验证器?
说,我有一个 Person 对象和 Account 对象。我必须编写一个自定义验证器来验证 Person,但验证取决于 Account 对象和会话中的其他对象。
例如,Person 不能拥有超过 3 个帐户,帐户类型必须是特定类别且不超过 3 年(此值,即年数是动态的,基于登录的配置文件并处于会话状态)。
如何将两个对象,尤其是 @Model 传递给验证器。
public class ServiceValidator implements Validator {
@Autowired
private ServiceDAO servicesDao;
@Override
public boolean supports(Class<?> clasz) {
return clasz.isAssignableFrom(Person.class);
}
@Override
public void validate(Object obj, Errors errors) {
Person subscriber = (Person) obj;
// How can I access @Model object here ???
}