处理思路:

创建全局异常处理器
public class GlobalExceptionResolver implements HandlerExceptionResolver {
private static final Logger logger = LoggerFactory.getLogger(GlobalExceptionResolver.class);
@Override
public ModelAndView resolveException(HttpServletRequest request, HttpServletResponse response, Object handler,
Exception ex) {
//打印控制台
ex.printStackTrace();
//写日志
logger.debug("测试输出日志。。。。");
logger.error("系统发生异常。。。。",ex);
//发邮件,发短信
//(JMail,购买短信,使用第三方接口)
//显示错误页面
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("error/exception");
return modelAndView;
}
}
配置文件springmvc.xml
<!-- 配置全局异常处理器 -->
<bean class="lx.test.search.exception.GlobalExceptionResolver"></bean>
log4j.properties
log4j.rootLogger=DEBUG,A3,STDOUT
log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender
log4j.appender.STDOUT.layout=org.apache.log4j.PatternLayout
log4j.appender.STDOUT.layout.ConversionPattern=[%p] [%l] %10.10c - %m%n
log4j.appender.A3=org.apache.log4j.RollingFileAppender
log4j.appender.A3.file=logs/server.log
log4j.appender.A3.MaxFileSize=1024KB
log4j.appender.A3.MaxBackupIndex=10
log4j.appender.A3.layout=org.apache.log4j.PatternLayout
log4j.appender.A3.layout.ConversionPattern=\n\n[%-5p] %d{yyyy-MM-dd HH\:mm\:ss,SSS} method\:%l%n%m%n