關於hibernate jar包的checkbean的註解拋的異常捕獲來做數據檢查

首先,實體bean屬性上面加上@not null或blank等,    例如@NotBlank(message="id,02-001-000")

然後再service層實現類,注入檢查類,   

 @Autowired
 private ValidateService validateService;

然後如上圖,就可以在保持數據前進行check,然後把所有不符合註解的信息以arr的形式,通過異常跑出來,我們在controller層可以catch到並解析出來,反饋給前臺,進行消息提示,

}catch(com.sgcc.uap.mdd.runtime.exception.ValidateException e){
            JSONArray messageArr = new JSONArray();
            JSONObject iteam = new JSONObject();
            boolean isHaveErr = false;
            String s = e.getMessage();
            JSONArray jar = JSONArray.fromObject(s);
            JSONArray jarr = jar.getJSONArray(0);
            for(Object o : jarr){
                JSONObject jo = JSONObject.fromObject(o);
                String errMessage = "";
                if(jo.getBoolean("error")){
                    isHaveErr = true;
                    errMessage = jo.getString("errorsToDefaulFormatString");
                    iteam.put("message", errMessage);
                    messageArr.add(iteam);
                }
            }
            if(isHaveErr){
                WrappedResult rs = WrappedResult.failedValidateWrappedResult(messageArr.toString());
                return rs;
            }else{
                return WrappedResult.failedWrappedResult("02-001-003");//"校驗異常"
            }
            
        }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章