2013-03-12 158 views
2

我使用橢圓形做驗證,所以我們的代碼看起來像這樣:用反射覆蓋註釋?

@NotNull(errorCode = "NumberInvalid") 
    @NotNegative(errorCode = "NumberInvalid") 
    @Range(errorCode = "NumberInvalid", min=1, max=10) 
    protected Integer dollarAmount; 

我想,如果需要可以動態更新的範圍內,說,如果我們有一個變化,每一個配置文件一個月左右,我希望能夠在驗證中反映這些變化。

有沒有一種方法可以用反射來做到這一點,這樣我就不必在橢圓形中對每個註解進行子類化了?

回答

0

據我所知這是不可能的。假設你的註解保留被設置爲RUNTIME(它必須用於驗證的工作),那麼你將實際擁有的是一個實現註釋接口的代理類,你將不能通過反射來修改這些值。

0

雖然註釋看起來更乾淨,但靜態代碼:)但有一種方法..你有沒有嘗試過使用反射?你可以發佈該方法嗎?你可以看看this