我是spring的新手。我目前正在学习异常处理。我的问题是,为什么你对所有的事情都使用一个异常(userNotFoundException,nameNotFoundException,nameAlreadyExistsException)?为什么不对每个HttpCode都做一个例外呢?我真的看不出它的价值。
mepcadol1#
这里userNotFoundException和nameNotFoundException将向最终用户传达几乎相同的消息,通常这种情况属于404(找不到资源)。因此,最终用户要么必须创建资源(注册),要么必须尝试另一个资源。如果找到资源,最终用户将得到200(确定)成功响应。nameAlreadyExistsException出现在最终用户试图创建一个已经存在的资源时。通常它会出现在409(冲突),400(错误请求)或403(禁止-另一个资源已经存在相同的属性)下。如果资源不存在,最终用户将得到201(资源已创建)成功响应。想象一下,一个最终用户在上述所有场景中都得到了400分,但最终用户不知道哪里出了问题。他是试图访问一个不存在的资源,还是试图创建一个现有的资源。
userNotFoundException
nameNotFoundException
nameAlreadyExistsException
1条答案
按热度按时间mepcadol1#
这里
userNotFoundException
和nameNotFoundException
将向最终用户传达几乎相同的消息,通常这种情况属于404(找不到资源)。因此,最终用户要么必须创建资源(注册),要么必须尝试另一个资源。如果找到资源,最终用户将得到200(确定)成功响应。nameAlreadyExistsException
出现在最终用户试图创建一个已经存在的资源时。通常它会出现在409(冲突),400(错误请求)或403(禁止-另一个资源已经存在相同的属性)下。如果资源不存在,最终用户将得到201(资源已创建)成功响应。想象一下,一个最终用户在上述所有场景中都得到了400分,但最终用户不知道哪里出了问题。他是试图访问一个不存在的资源,还是试图创建一个现有的资源。