如何在控制台

时间:2017-05-15 12:51:01

标签: java spring

我实现了自己的自定义异常。我不希望它在框架控制台上打印异常。可能吗?

  

2017年5月15日下午2:47:24 org.apache.catalina.core.StandardWrapperValve调用   严重:Servlet [service - services]的Servlet.service()与path [/ project-services]在上下文中引发异常[请求处理失败;嵌套异常是ba.project.exception.TAException:所选日期之间没有任何游览活动。]有根本原因       ba.project.exception.TAException:所选日期之间没有任何游览活动.at ba.project.service.TAServices.findByTourTypeWithDates(TAServices.java:94)

自定义例外:

 public class TAException extends RuntimeException {

  private static final long serialVersionUID = 1 L;

  public TAException(String msg) {
    super(msg);
  }

  public TAException(String msg, Throwable e) {
    super(msg, e);
  }
}

以下是我抛出异常的方法:

public List < Object > findByTourTypeWithDates(String tourType, Date checkin, Date checkout)
throws ParseException, TAException {
  SimpleDateFormat dateFormatter = new SimpleDateFormat("yyyy-MM-dd");

  Date todayDate = dateFormatter.parse(dateFormatter.format(new Date()));
  if (checkin.after(todayDate)) {
    return taDAO.findByTourTypeWithDates(tourType, checkin, checkout);
  }
  throw new TAException("There is no any tour activity between selected dates.");
}

1 个答案:

答案 0 :(得分:4)

查看Java异常的规范

https://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html

我认为您要搜索的是writableStackTrace,如果需要,可以将其设置为false。或者您可以覆盖getMessage以使用您正在使用的包或类似的方式签入。这取决于您的确切需求。