OVal 是一個通用的驗證框架,它通過 AOP 支持簡單的 DBC 結構并明確地允許:
- 為類字段和方法返回值指定約束條件
- 為結構參數指定約束條件
- 為方法參數指定約束條件
此外,OVal 還帶來大量預定義的約束條件,這讓創建新條件變得相當容易。
由于 OVal 使用 AspectJ 的 AOP 實現來為 DBC 概念定義建議,所以必須將 AspectJ 并入一個使用 OVal 的項目中。對于不熟悉 AOP 和 AspectJ 的人們來說,好消息是這不難實現,且使用 OVal (甚至是創建新的約束條件)并不需要真正對方面進行編碼,只需編寫一個簡單的自引導程序即可,該程序會使 OVal 所附帶的默認方面植入您的代碼中。
aspectjtools
和 aspectjrt
JAR 文件并入您的構建中來編譯所需的自引導程序方面并將其編入您的代碼中。