代碼:chrome
@CrossOrigin
@RestController
@RequestMapping("api")
public class RestAPI { api
@GetMapping("/exception")
public int exception() throws Exception{
throw new Exception("中文亂碼");
}
}app
現象:ide
解決步驟:工具
1.使用chrome的開發人員工具,發現以下圖中紅框部分縣市,charset設置不當,應爲utf-8繼承
2.建立類繼承HandlerExceptionResolver接口,在接口中進行charset的從新設置,代碼以下接口
@Component
public class AExceptionHandler implements HandlerExceptionResolver {
@Override
public ModelAndView resolveException(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) {
response.setCharacterEncoding("utf-8");
return null;
}
}utf-8
備註:@Component註解時必須的,這樣,才能保證在啓動時,擴展的AExceptionHandler類被成功加載開發
3.解決以後的現象io