实际项目中,业务逻辑层 服务层 只管抛出异常,而不处理异常。在表现层中在捕获异常并处理(日志记录什么的)?
像前后端分离的话这样好像就不适用了,异常捕获则需要在调用服务或者逻辑的地方捕获、?是这样的吗、
大家实际项目中异常处理 是怎么样的呢?还请大家指点指点!!!!!
欢迎选择我的课程,让我们一起见证您的进步~~
服务层会做日志记录,一般来说异常抛出由表现层捕获,但也会在服务层先捕获做日志再抛出
首先需要明确一个理念:异常是抛给程序员的,而不是抛给用户的。
明确了这个理念之后就好理解了,为什么需要在表现层处理异常——因为表现层是程序员和用户之间的最后一道屏障,必须把异常包装得漂漂亮亮的丢给客户,也就是所谓的用户体验。
然而,表现层绝对不是唯一要处理异常的地方,你所说的那些地方,包括底层、服务器……都需要适当的处理异常。
比如说,服务端提供的接口,一般要考虑调用者的体验,所以不会直接抛异常出来,而是需要进行一定的封装,同时在服务端记录异常信息以便查错。
当然为了简化和统一处理过程,通常会集中在某些层次,包括表现层对异常进行处理。
服务层会做日志记录,一般来说异常抛出由表现层捕获,但也会在服务层先捕获做日志再抛出
首先需要明确一个理念:异常是抛给程序员的,而不是抛给用户的。
明确了这个理念之后就好理解了,为什么需要在表现层处理异常——因为表现层是程序员和用户之间的最后一道屏障,必须把异常包装得漂漂亮亮的丢给客户,也就是所谓的用户体验。
然而,表现层绝对不是唯一要处理异常的地方,你所说的那些地方,包括底层、服务器……都需要适当的处理异常。
比如说,服务端提供的接口,一般要考虑调用者的体验,所以不会直接抛异常出来,而是需要进行一定的封装,同时在服务端记录异常信息以便查错。
当然为了简化和统一处理过程,通常会集中在某些层次,包括表现层对异常进行处理。