@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参照を検証対象とします