[英]Java spring annotation attribute
我有一個post方法接收一個對象作為參數,在這個對象中我有一個帶注釋@ValidDate和@NotEmpty的屬性。
在另一種方法中,我想使用相同的對象,但我只想在屬性上注釋@ValidDate。 這是可能的 ?
屬性:
@NotEmpty
@ValidDate
private String installDate;
功能 :
public String findLinksByCriteria(@Valid @ModelAttribute LinkForm link, BindingResult bindingResult, Model uiModel) {
if (bindingResult.hasErrors()) {
return ViewConstants.LINK_SEARCH_VIEW;
}
可能是多種解決方案中的一種。 您可以刪除可選約束並手動執行,但是如果要將其嚴格保留在Bean Validation API的上下文中,則可以使用驗證組執行此操作。
https://docs.oracle.com/cd/E19798-01/821-1841/gkahp/index.html
可以將約束添加到一個或多個組。 約束組用於創建約束的子集,因此僅針對特定對象驗證某些約束。 默認情況下,所有約束都包含在“默認”約束組中。
通過使用Spring的@Validated
注釋而不是@Valid
您可以指定要應用於任何給定案例的一組或多組約束。
這里有一個詳細的例子:
http://blog.codeleak.pl/2014/08/validation-groups-in-spring-mvc.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.