0

从控制器抛出异常是一个好习惯吗?

例如,如果 Request 没有某些属性,我们可能会从某个控制器的方法中抛出IllegalStateException 。

例如,如果请求的参数不是适当的格式/范围,我们可能会从某些控制器的方法中抛出IllegalArgumentException 。

4

2 回答 2

0

我认为向最终用户抛出此类异常不是一个好主意。相反,您可以提醒最终用户一个有意义的错误消息,使用它可以很容易地理解什么是错误的。

于 2013-08-24T12:19:36.090 回答
0

不,我不这么认为。谁来处理?客户端。处理它是什么意思?例外不会告诉他们该做什么。最好更改 UI 以指导他们下一步做什么。您可以在您使用的每一个体面的 Web UI 中看到这一点:文本框被突出显示,并且您被告知正确的范围是什么。看到堆栈跟踪是一种什么样的体验?

因此控制器应该捕获所有异常并相应地更改显示。

于 2013-08-24T12:11:46.373 回答