@ExceptionHandler
@ExceptionHandler注解是用于处理特定异常并将自定义响应发送到客户端的注解。
您可以使用以下代码创建@ControllerAdvice类以全局处理异常-
定义一个继承RuntimeException类的类。
您可以定义@ExceptionHandler方法来处理异常。此方法应用于编写Controller Advice类文件。
现在,使用下面给出的代码从API引发异常。
下面给出了处理异常的完整代码。在此示例中,我们使用了PUT API来更新产品。在这里,在更新产品时,如果找不到产品,则返回响应错误消息为“Product not found”。请注意,ProductNotFoundException异常类应继承RuntimeException。
下面给出了用于全局处理异常的Controller Advice类。我们可以在此类文件中定义任何异常处理程序方法。
下面提供了产品服务API控制器文件以更新产品。如果未找到产品,则它将引发ProductNotFoundException类。
现在,使用下面给出的代码从API引发异常。
下面给出了主要的Spring Boot应用程序类文件的代码
产品的POJO类的代码如下
Maven构建的代码– pom.xml如下所示-
下面给出了Gradle Build – build.gradle的代码-
RESTFul Web 服务参考上一节
您可以创建一个可执行的JAR文件,并使用Maven或Gradle命令运行Spring Boot应用程序-
对于Maven,您可以使用以下命令-
在“BUILD SUCCESS”之后,您可以在target目录下找到JAR文件。
对于Gradle,您可以使用以下命令-
在“BUILD SUCCESSFUL”之后,您可以在build/libs目录下找到JAR文件。
您可以使用以下命令运行JAR文件-
在Tomcat端口8080上启动应用程序
现在在POSTMAN应用程序中请求URL,您可以看到如下所示的输出-
PUT URL:http://localhost:8080/products/3