gpt4 book ai didi

java - 如何处理多个 Route 的异常

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:40:27 25 4
gpt4 key购买 nike

我正在掌握 Spark Framework我正在尝试了解以统一方式处理多个路由异常的最佳方式。

目前我有许多路由全部处理异常情况:

...
catch (final Exception e) {
...
response.status(418);
return e.getMessage();
}
...

这还有很多不足之处,主要是它们之间的异常逻辑是重复的。我知道它可以通过重构来改进,但我想知道是否有类似于 ExceptionHandler 的东西Spring 中的机制,您可以在抛出特定异常时执行操作,例如:

@ExceptionHandler(Exception.class)
public void handleException(final Exception e, final HttpServletRequest request) {
...executed for the matching exception...
}

那么,有没有类似Spark的异常处理机制呢?我检查了文档并得出了结论。如果没有,我将继续我的重构计划。谢谢。

最佳答案

你可以像这样处理异常:

get("/throwexception", (request, response) -> {
throw new NotFoundException();
});

exception(NotFoundException.class, (e, request, response) -> {
response.status(404);
response.body("Resource not found");
});

示例取自 Spark docs .

关于java - 如何处理多个 Route 的异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13605334/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com