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