只要有介面,就會有參數的校正,目前開源的校正架構已經非常多了,不過不得不提一下Oval。
OVal 是一個可擴充的Java對象資料驗證架構,驗證的規則可以通過設定檔、Annotation、POJOs 進行設定。可以使用純 Java 語言、JavaScript 、Groovy 、BeanShell 等進行規則的編寫。
使用起來也非常簡單
public class OvalTest { @Min(20) private int age; @Length(min = 6, max = 10) private String name; public static void main(String[] args) { OvalTest ovalTest = new OvalTest(); ovalTest.age = 10; ovalTest.name = "kolor"; Validator validator = new Validator(); List<ConstraintViolation> ret = validator.validate(ovalTest); System.out.println(ret); }}
校正自然是不過的了,輸出如下:
[net.sf.oval.ConstraintViolation: OvalTest.age cannot be smaller than 20.0, net.sf.oval.ConstraintViolation: OvalTest.name is not between 6 and 10 characters long]
maven依賴:
<dependency> <groupId>net.sf.oval</groupId> <artifactId>oval</artifactId> <version>1.81</version></dependency>
Oval官方地址: http://oval.sourceforge.net/