国产gaysexchina男同gay,japanrcep老熟妇乱子伦视频,吃奶呻吟打开双腿做受动态图,成人色网站,国产av一区二区三区最新精品

Hasor 場景化驗(yàn)證

2018-10-09 11:43 更新

場景化表單驗(yàn)證,是指在執(zhí)行表單驗(yàn)證時。開發(fā)者可以通過傳給表單驗(yàn)證器的場景名稱,進(jìn)行必要的邏輯判斷。我們以用戶帳號信息驗(yàn)證為例,下面表單驗(yàn)證器中定義了兩個場景的驗(yàn)證方法:

  1. doValidLogin、負(fù)責(zé)處理登錄
  2. doValidSignUp、負(fù)責(zé)處理注冊


public class LoginFormValidation4Scene implements Validation<LoginForm4Scene> {
    //
    // - 登錄驗(yàn)證
    private void doValidLogin(LoginForm4Scene dataForm, ValidInvoker errors) {
        ...
    }
    // - 注冊登錄
    private void doValidSignUp(LoginForm4Scene dataForm, ValidInvoker errors) {
        ...
    }
    //
    public void doValidation(String validType, LoginForm4Scene dataForm, ValidInvoker errors) {
        // -通用驗(yàn)證邏輯
        if (StringUtils.isBlank(dataForm.getAccount())) {
            errors.addError("account", "帳號為空。");
        }
        if (StringUtils.isBlank(dataForm.getPassword())) {
            errors.addError("password", "密碼為空。");
        }
        if (!errors.isValid()) {
            return;
        }
        // -場景化差異
        if (StringUtils.equalsIgnoreCase("signup", validType)) {
            this.doValidSignUp(dataForm, errors);   // 注冊
            return;
        }
        if (StringUtils.equalsIgnoreCase("login", validType)) {
            this.doValidLogin(dataForm, errors);    // 登錄
            return;
        }
    }
}


最后,在使用表單驗(yàn)證時,我們在 @Valid 注解上設(shè)定好要使用的場景名稱,就可以了。

@MappingTo("/scene/login.do")
public class Login4Scene {
    public void execute(@Valid("login") @Params LoginForm4Scene loginForm,
                        RenderInvoker invoker,
                        ValidInvoker valid) {
        ...
    }
}


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號