rest - spring boot 中 Rest 资源的 NotImplementedException

标签 rest spring-boot exception-handling

我正在开发一个 Rest Spring 启动应用程序,我的代码如下:

  1. @SpringBootApplication 公共(public)类 Initializer 扩展了 SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(Initializer.class);
    }
    

  2. 具有CRUD方法的接口(interface)

  3. 许多实现接口(interface)的类
  4. Controller 类
  5. 一个带有@ControllerAdvice的异常处理类,其中一个方法带有@ExceptionHandler(NotImplementedException.class){//message }

我有一些资源,比如 abcd。 到目前为止,我只实现了 ab,因此如果客户端尝试访问 ,我想抛出一个自定义的 NotImplementedException cd

我想知道我应该在哪里抛出这个异常,我是否必须使用像ResourceHandlers这样的东西,如果是,如何使用它以及需要什么配置?

最佳答案

1 - Controller 建议类必须 extends ResponseEntityExceptionHandler

2 - 覆盖处理异常的原始方法。在你的情况下:

public ResponseEntity<Object> handleHttpRequestMethodNotSupported (HttpRequestMethodNotSupportedException ex, HttpHeaders headers, HttpStatus status, WebRequest request)

3 - 在覆盖处理程序的方法中执行您想执行的操作。

就这些。

关于rest - spring boot 中 Rest 资源的 NotImplementedException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49773551/

相关文章:

java - 如何使用 JAX - RS 在 Java 中使用 Web 服务从数据库插入数据

php - 在 php 异常中使用附加数据

c# - 无法将类型为 'System.Linq.Expressions.UnaryExpression' 的对象转换为类型 'System.Linq.Expressions.MemberExpression'

javascript - 在 nodejs + express 中验证 URL 以处理错误的请求错误

java - 将 map 作为请求参数发送到 Spring Boot 应用程序中的 GET 请求

java - 在 Linux 系统上安装 Spring Boot 应用程序

amazon-web-services - Spring Cloud AWS。 SQS。如何配置 FIFO 队列

java - 无法从异步方法获取应用程序属性

c# - .NET 4.0 - AccessViolationException 和 WndProc

c# - 从 Unity 项目进行 REST 调用