对于最新的稳定版本,请使用 Spring Data REST 4.4.0! |
验证
有两种方法可以在 Spring Data REST 中注册实例:通过 bean 名称连接它或手动注册验证器。在大多数情况下,简单的 bean 名称前缀样式就足够了。Validator
为了告诉 Spring Data REST 您希望将特定事件分配给特定事件,请在 bean 名称前加上相关事件。例如,要在将新实例保存到存储库之前验证类的实例,可以在 Bean 名称为 .由于前缀与已知的 Spring Data REST 事件匹配,因此该验证器将连接到正确的事件。Validator
Person
Validator<Person>
ApplicationContext
beforeCreatePersonValidator
beforeCreate
手动分配验证人
如果您不想使用 bean 名称前缀方法,则需要向 bean 注册验证器的实例,该 bean 的工作是在正确的事件之后调用验证器。在实现 的配置中,覆盖方法并调用 ,传递要触发此验证程序的事件和验证程序的实例。以下示例显示了如何执行此操作:RepositoryRestConfigurer
configureValidatingRepositoryEventListener
addValidator
ValidatingRepositoryEventListener
@Override
void configureValidatingRepositoryEventListener(ValidatingRepositoryEventListener v) {
v.addValidator("beforeSave", new BeforeSaveValidator());
}