@Target(value={METHOD,FIELD,ANNOTATION_TYPE,CONSTRUCTOR,PARAMETER})
@Retention(value=RUNTIME)
@Documented
public @interface ValidEntity
Entityに定義されるvalidation定義に従った検証を行います。
propertiesを指定することにより、検証対象プロパティを指定可能です。 properties未指定の場合は、ネストされたEntity含め、すべてのプロパティの検証を行います。
例:
public class SampleBean {
private User user;
@ValidEntity(properties={"accountId", "rank.*", "groups.**"})
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
:
:
}
| 修飾子とタイプ | 任意要素と説明 |
|---|---|
java.lang.Class<?>[] |
groups |
java.lang.String |
message |
java.lang.Class<? extends Payload>[] |
payload |
java.lang.String[] |
properties
検証対象のプロパティを指定します。
|
public abstract java.lang.String[] properties
検証対象のプロパティを指定します。
*指定は、当該のEntityのプロパティすべてをあらわします。
**指定は、当該のEntity以下、ネストされたEntityのプロパティも含むぷべてのプロパティをあらわします。
name -> nameを検証対象とします* -> Userエンティティのすべてのプロパティを検証対象としますrank.* -> Userエンティティのrankで指し示されるRankエンティティのすべてのプロパティを検証対象としますgroups.** -> Userエンティティのgroupsで指し示されるGroupエンティティのすべてのプロパティおよびネストされたEntity参照を検証対象とします