<dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> <scope>provided</scope> </dependency>
在demo-base中定義DemoExceptionResolver,實現HandlerExceptionResolver接口便可html
package com.demo.base.Exception; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.servlet.HandlerExceptionResolver; import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.PrintWriter; public class DemoExceptionResolver implements HandlerExceptionResolver { private static final Logger LOG = LoggerFactory.getLogger(DemoExceptionResolver.class); @Override public ModelAndView resolveException(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex){ response.setHeader("Content-type", "text/html;charset=UTF-8"); response.setCharacterEncoding("UTF-8"); PrintWriter pw = null; try { pw = response.getWriter(); } catch (IOException e) { LOG.error(e.getMessage(),e); } if (ex instanceof DemoException) { pw.write(ex.getMessage()); } else { pw.write("系統異常,請聯繫管理員"); } return new ModelAndView(); } }
在demo-web中spring-mvc.xml配置:java
<bean id="demoExceptionResolver" class="com.demo.base.Exception.DemoExceptionResolver"/>
http://www.voidcn.com/blog/eson_15/article/p-6069524.htmlweb