重庆网站推广公司哪家好,网站动图怎么做,个人网站设计模板,快餐小吃加盟方案起因:非法用户可通过特定的输入(如输入内容超长)等操作,使后台逻辑发生错误,从而使后台sql语句暴露至前台,进而为sql攻击提供条件 处理流程:经查找com.mysql.cj.jdbc.exceptions的父类为SQLException,在全局异常处理类中增加如下配置,经测试不起作用
ExceptionHandler(SQLExce…起因:非法用户可通过特定的输入(如输入内容超长)等操作,使后台逻辑发生错误,从而使后台sql语句暴露至前台,进而为sql攻击提供条件 处理流程:经查找com.mysql.cj.jdbc.exceptions的父类为SQLException,在全局异常处理类中增加如下配置,经测试不起作用
ExceptionHandler(SQLException.class)
public AjaxResult handleSQLException(AccessDeniedException e, HttpServletRequest request)
{String requestURI request.getRequestURI();return AjaxResult.error(语句执行异常,请联系管理员);
}
因为ExceptionHandler 只认我们注入的类名称,所以我们的曲线一下,在RuntimeException中进行判断 /*** 拦截未知的运行时异常*/ExceptionHandler(RuntimeException.class)public AjaxResult handleRuntimeException(RuntimeException e, HttpServletRequest request){if(e.getCause().toString().startsWith(com.mysql.cj.jdbc.exceptions)){return AjaxResult.error(HttpStatus.ERROR, 操作失败请联系管理员);}else{return AjaxResult.error(e.getMessage());}}
结果: