diff --git a/jeecg-boot-base-core/src/main/java/org/jeecg/common/exception/JeecgBootExceptionHandler.java b/jeecg-boot-base-core/src/main/java/org/jeecg/common/exception/JeecgBootExceptionHandler.java index 6d5d8ef7..8dfc6831 100644 --- a/jeecg-boot-base-core/src/main/java/org/jeecg/common/exception/JeecgBootExceptionHandler.java +++ b/jeecg-boot-base-core/src/main/java/org/jeecg/common/exception/JeecgBootExceptionHandler.java @@ -5,10 +5,11 @@ import org.apache.shiro.authz.AuthorizationException; import org.apache.shiro.authz.UnauthorizedException; import org.jeecg.common.api.vo.Result; import org.jeecg.common.enums.SentinelErrorInfoEnum; -import org.springframework.dao.DataIntegrityViolationException; -import org.springframework.dao.DuplicateKeyException; +import org.springframework.core.NestedRuntimeException; +import org.springframework.dao.*; import org.springframework.data.redis.connection.PoolException; import org.springframework.http.HttpStatus; +import org.springframework.jdbc.BadSqlGrammarException; import org.springframework.web.HttpRequestMethodNotSupportedException; import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.ResponseStatus; @@ -18,6 +19,10 @@ import org.springframework.web.servlet.NoHandlerFoundException; import lombok.extern.slf4j.Slf4j; +import java.sql.SQLException; +import java.sql.SQLNonTransientException; +import java.sql.SQLSyntaxErrorException; + /** * 异常处理器 * @@ -133,4 +138,17 @@ public class JeecgBootExceptionHandler { return Result.error("Redis 连接异常!"); } + @ExceptionHandler({ SQLSyntaxErrorException.class, SQLNonTransientException.class, SQLException.class }) + public Result handleSQLSyntaxErrorException(SQLException e) { + log.error(e.getMessage(), e); + return Result.error("SQL语法错误!"); + } + + @ExceptionHandler({ BadSqlGrammarException.class, InvalidDataAccessResourceUsageException.class, NonTransientDataAccessException.class, DataAccessException.class }) + public Result handleBadSqlGrammarException(DataAccessException e) { + log.error(e.getMessage(), e); + return Result.error("SQL语法错误!"); + } + + } diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java index 6e51e463..924a0b1c 100644 --- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java +++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java @@ -528,7 +528,8 @@ public class SysUserServiceImpl extends ServiceImpl impl Result result = new Result(); //情况1:根据用户信息查询,该用户不存在 if (sysUser == null) { - result.error500("该用户不存在,请注册"); + //result.error500("该用户不存在,请注册");//不允许明确的提示 + result.error500("用户名或密码错误"); baseCommonService.addLog("用户登录失败,用户不存在!", CommonConstant.LOG_TYPE_1, null); return result; }