私は、addressLine1、city などのいくつかのプロパティを持つ Bean AddressBean を持っています。AddressBeanService を使用して DB に永続化する前に、それを事前検証しています。そして、これはすべて AddressBeanHelper クラスからトリガーしています。
class AddressBeanHelper{
AddressBean bean =null;
AddressBeanHelper(AddressBean bean){
this.bean=bean;
}
ValidationService validate=new ValidateAddressService();
function doStuff(){
validate.preValidateAddressBean (bean);
//business logic for AddressBean
validate.preValidateAddressBean (bean);
}
}
class ValidateAddressService implements ValidationService <AddressBean>{
preValidateAddressBean (AddressBean bean){
//here is the issue
}
preValidateAddressBean (AddressBean bean){
//here is the issue
}
}
春には、検証関数で汎用コードを記述し、検証ルールをコード自体の外に外部化するだけのフレームワークまたはトリックが必要です。Bean のすべてのプロパティを自動的に検証できるルール エンジンのように。現在、私のアプリケーション インフラストラクチャはサーバー側では spring/hibernate、クライアント側では jsp/jquery、デプロイ サーバーは heroku です。