Spring Boot中如何实现静态资源异常处理的trace功能?
- 内容介绍
- 文章标签
- 相关推荐
本文共计562个文字,预计阅读时间需要3分钟。
这篇文章简要介绍了Spring Boot异常处理静态trace的方法。通过示例代码,展示了如何实现非详细的异常处理,对于想要学习或工作的朋友具有一定的参考价值。以下是在Spring Boot 2.2中默认状态下的概述:
在Spring Boot 2.2中,默认情况下,异常处理静态trace可以通过以下步骤实现:
1. 在Spring Boot项目中,添加依赖。
2.创建一个全局异常处理器类。
3.在该类中,使用@ControllerAdvice注解。
4.使用@ExceptionHandler注解定义处理特定异常的方法。
5.在方法中,编写处理逻辑,如记录日志、返回错误信息等。
示例代码如下:
java
@ControllerAdvicepublic class GlobalExceptionHandler {@ExceptionHandler(Exception.class) public ResponseEntity handleException(Exception e) { // 记录日志 logger.error(Exception occurred: , e);
// 返回错误信息 return new ResponseEntity(An error occurred: + e.getMessage(), HttpStatus.INTERNAL_SERVER_ERROR); }}
以上代码展示了如何创建一个全局异常处理器,当发生任何异常时,都会调用handleException方法进行处理。这对于学习和工作具有一定的参考价值,需要的伙伴可以参考学习。
这篇文章主要介绍了Spring Boot异常处理静止trace,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
概述
在spring boot 2.2 中 默认状态为status 999
private void addStatus(Map<String, Object> errorAttributes, RequestAttributes requestAttributes) { Integer status = (Integer)this.getAttribute(requestAttributes, "javax.servlet.error.status_code"); if (status == null) { errorAttributes.put("status", 999); errorAttributes.put("error", "None"); } else { errorAttributes.put("status", status); try { errorAttributes.put("error", HttpStatus.valueOf(status).getReasonPhrase()); } catch (Exception var5) { errorAttributes.put("error", "Http Status " + status); } } }
如果我们自定义异常信息, 默认会打印一串trace信息,但是我们不需要
解决办法:
@Component public class AppErrorAttribute extends DefaultErrorAttributes { @Override public Map<String, Object> getErrorAttributes(WebRequest webRequest, boolean includeStackTrace) { Map<String, Object> map = super.getErrorAttributes(webRequest, includeStackTrace); // 这里参数可以配置为false map.put("url","www.blogdgw.com"); map.put("ext",webRequest.getAttribute("ext",0)); // 禁止trace 覆盖 //map.put("trace",""); return map; } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。
本文共计562个文字,预计阅读时间需要3分钟。
这篇文章简要介绍了Spring Boot异常处理静态trace的方法。通过示例代码,展示了如何实现非详细的异常处理,对于想要学习或工作的朋友具有一定的参考价值。以下是在Spring Boot 2.2中默认状态下的概述:
在Spring Boot 2.2中,默认情况下,异常处理静态trace可以通过以下步骤实现:
1. 在Spring Boot项目中,添加依赖。
2.创建一个全局异常处理器类。
3.在该类中,使用@ControllerAdvice注解。
4.使用@ExceptionHandler注解定义处理特定异常的方法。
5.在方法中,编写处理逻辑,如记录日志、返回错误信息等。
示例代码如下:
java
@ControllerAdvicepublic class GlobalExceptionHandler {@ExceptionHandler(Exception.class) public ResponseEntity handleException(Exception e) { // 记录日志 logger.error(Exception occurred: , e);
// 返回错误信息 return new ResponseEntity(An error occurred: + e.getMessage(), HttpStatus.INTERNAL_SERVER_ERROR); }}
以上代码展示了如何创建一个全局异常处理器,当发生任何异常时,都会调用handleException方法进行处理。这对于学习和工作具有一定的参考价值,需要的伙伴可以参考学习。
这篇文章主要介绍了Spring Boot异常处理静止trace,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
概述
在spring boot 2.2 中 默认状态为status 999
private void addStatus(Map<String, Object> errorAttributes, RequestAttributes requestAttributes) { Integer status = (Integer)this.getAttribute(requestAttributes, "javax.servlet.error.status_code"); if (status == null) { errorAttributes.put("status", 999); errorAttributes.put("error", "None"); } else { errorAttributes.put("status", status); try { errorAttributes.put("error", HttpStatus.valueOf(status).getReasonPhrase()); } catch (Exception var5) { errorAttributes.put("error", "Http Status " + status); } } }
如果我们自定义异常信息, 默认会打印一串trace信息,但是我们不需要
解决办法:
@Component public class AppErrorAttribute extends DefaultErrorAttributes { @Override public Map<String, Object> getErrorAttributes(WebRequest webRequest, boolean includeStackTrace) { Map<String, Object> map = super.getErrorAttributes(webRequest, includeStackTrace); // 这里参数可以配置为false map.put("url","www.blogdgw.com"); map.put("ext",webRequest.getAttribute("ext",0)); // 禁止trace 覆盖 //map.put("trace",""); return map; } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。

