任何人都可以提出一個很好的驗證框架,我們可以在Java應用程序中使用? 有我們的申請表格,但我們傳球檢索和發送數據到多個系統。 一旦我們得到這個數據,我們希望把它改造成一個POJO,並執行對POJO一些驗證。 一個驗證框架,它允許你把你的驗證規則到一個XML或平面文件將是理想的爪哇 - 驗證框架
任何幫助是極大的讚賞
感謝 達明
任何人都可以提出一個很好的驗證框架,我們可以在Java應用程序中使用? 有我們的申請表格,但我們傳球檢索和發送數據到多個系統。 一旦我們得到這個數據,我們希望把它改造成一個POJO,並執行對POJO一些驗證。 一個驗證框架,它允許你把你的驗證規則到一個XML或平面文件將是理想的爪哇 - 驗證框架
任何幫助是極大的讚賞
感謝 達明
默認的元數據源是註釋,可以通過使用XML驗證描述符來覆蓋和擴展元數據。
Java EE 6通過註釋(例如@NotNull,@Size等)具有非常強大的驗證機制。看看Java Bean Validation。最好的部分是,你可以定義自己的這種註釋這將做任何可能需要的自定義驗證。
的Ujorm framework基於鍵值的域對象提供特殊的驗證那裏的主要特點是:
樣品:
import static org.ujorm.Validator.Build.*;
public class ValidBo extends AbstractUjo implements Serializable {
/** Factory */
private static final KeyFactory<ValidBo> f = newFactory(ValidBo.class);
/** Keys: */
public static final Key<ValidBo, Long> PID = f.newKey(notNull());
public static final Key<ValidBo, Integer> CODE = f.newKey(between(0, 10));
public static final Key<ValidBo, String> NAME = f.newKey(regexp("T.*T"));
public static final Key<ValidBo, Double> CASH = f.newKey(min(0.0).and(notNull()));
static {
f.lock();
}
// Setters:
public void setPid(Long pid) {
PID.setValue(this, pid);
}
public void setCode(Integer code) {
CODE.setValue(this, code);
}
public void setName(String name) {
NAME.setValue(this, name);
}
public void setCash(Double cash) {
CASH.setValue(this, cash);
}
// Getters ...
}
查看documentation瞭解更多信息。
還有Oval,其中約束可以用註解(@NotNull,@MaxLength)的POJO或XML聲明。您也可以創建自己的自定義約束。
http://stackoverflow.com/questions/397852/java-validation-frameworks – oluies 2011-02-01 20:35:16