自定义异常处理是指在应用程序中定义和处理特定于业务逻辑的错误情况。通过自定义异常,可以更好地控制错误信息的输出,提高代码的可读性和可维护性。
// 定义自定义异常类
public class BusinessException extends RuntimeException {
private String errorCode;
private String errorMessage;
public BusinessException(String errorCode, String errorMessage) {
super(errorMessage);
this.errorCode = errorCode;
this.errorMessage = errorMessage;
}
public String getErrorCode() {
return errorCode;
}
public String getErrorMessage() {
return errorMessage;
}
}
// 在业务逻辑中使用自定义异常
public class UserService {
public void registerUser(String username, String password) {
if (username == null || username.isEmpty()) {
throw new BusinessException("USER_NAME_EMPTY", "用户名不能为空");
}
// 其他业务逻辑...
}
}
// 全局异常处理
@ControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(BusinessException.class)
@ResponseBody
public Map<String, String> handleBusinessException(BusinessException ex) {
Map<String, String> result = new HashMap<>();
result.put("errorCode", ex.getErrorCode());
result.put("errorMessage", ex.getErrorMessage());
return result;
}
}
try-catch
块或全局异常处理器。通过以上方法,可以有效地进行自定义异常处理,提高应用程序的健壮性和可维护性。
领取专属 10元无门槛券
手把手带您无忧上云