|
|
|
|
|
/**
|
|
|
* 文件名 : BaseController.java
|
|
|
* 版权 : XX科技有限公司。
|
|
|
* 描述 : <描述>
|
|
|
* 修改时间:2016年9月7日
|
|
|
* 修改内容:<修改内容>
|
|
|
*/
|
|
|
package com.base;
|
|
|
|
|
|
import java.util.HashMap;
|
|
|
import java.util.Map;
|
|
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
|
|
|
import org.apache.log4j.Logger;
|
|
|
import org.springframework.web.bind.annotation.ExceptionHandler;
|
|
|
|
|
|
import com.platform.utils.Configs;
|
|
|
|
|
|
/**
|
|
|
* <一句话功能简述>
|
|
|
* <功能详细描述>
|
|
|
* @author chen
|
|
|
* @version [版本号,2016年9月7日]
|
|
|
* @see [相关类/方法]
|
|
|
* @since [产品/模块版本]
|
|
|
*/
|
|
|
public class BaseController {
|
|
|
|
|
|
/** log4j */
|
|
|
public static Logger log = Configs.DAILY_ROLLING_LOGGER;
|
|
|
|
|
|
/**
|
|
|
* <一句话功能简述> 基于@ExceptionHandler异常处理----全局异常处理
|
|
|
* <功能详细描述>
|
|
|
* @param request
|
|
|
* @param ex 异常
|
|
|
* @return
|
|
|
* @see [类、类#方法、类#成员]
|
|
|
*/
|
|
|
@ExceptionHandler
|
|
|
public Object exp(HttpServletRequest request, HttpServletResponse response,Exception ex) {
|
|
|
System.out.println("URI"+request.getRequestURI());
|
|
|
request.setAttribute("ex", ex);
|
|
|
System.err.println("BaseController --exp " + ex);
|
|
|
new CustomException("base_code_", ex);
|
|
|
// 根据不同错误转向不同页面
|
|
|
if(ex instanceof CustomException) {
|
|
|
CustomException cuse = (CustomException) ex;
|
|
|
Map<String, String> errmsg = new HashMap<>();
|
|
|
errmsg.put("code", cuse.getCode());
|
|
|
errmsg.put("msg", cuse.getMsg());
|
|
|
log.error(cuse.getCode());
|
|
|
response.setStatus(500);
|
|
|
return response;
|
|
|
} else {
|
|
|
//其他错误则 调到指定页面
|
|
|
log.error(Configs.GLOBAL_EXP_NOT_CUSTOM, ex);
|
|
|
response.setStatus(500);
|
|
|
return response;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
} |