我实现了自己的自定义异常。我不希望它在框架控制台上打印异常。可能吗?
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.");
}
答案 0 :(得分:4)
查看Java异常的规范
https://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html
我认为您要搜索的是writableStackTrace,如果需要,可以将其设置为false。或者您可以覆盖getMessage以使用您正在使用的包或类似的方式签入。这取决于您的确切需求。