是否依赖于流量控制的自定义异常类型被认为是良好的做法?

时间:2013-09-02 07:31:53

标签: java spring exception spring-mvc exception-handling

我想知道依赖于流量控制的自定义异常类型是否被视为良好做法。

我们举一个例子:

public void activateEmail(String token) {
    Member member = memberRepository.findByToken(token);
    if (member == null) {
        throw new InvalidTokenException("Member not found");
    }
    ...

此处,InvalidTokenException是在数据库中找不到实体时引发的自定义RuntimeException

我使用Spring MVC异常处理程序,以便处理我的自定义异常:

@ExceptionHandler(InvalidTokenException.class)
public String invalidTokenException(InvalidTokenException e, HttpServletRequest request, HttpSession session, Locale locale) {
    FlashMap outputFlashMap = RequestContextUtils.getOutputFlashMap(request);
    if (outputFlashMap != null) {
      outputFlashMap.put("message", messageSource.getMessage("controller.preference.invalid_token_member_not_found", null, locale));
    }
     return "redirect:/signin";
    }

使用我的自定义例外有哪些优缺点?

0 个答案:

没有答案