Java中 业务层是返回一个约定好错误码还是抛出自定义异常或者一个自定义result?
个人认为不好,因为这样的话你就很难分辨代表“错误”的异常,和你预期出现的“正常”异常。而如果你要判断这个,那就需要同样复杂的逻辑。那就还不如设计正常返回的数据结构。
而且,万一出现了一个你没想到的exception而你却在一个不应该的层级给捕获了的话,等你部署后开始debug的时候就会想死的…………
■网友
【Java中 业务层是返回一个约定好错误码还是抛出自定义异常或者一个自定义result?】 统一的Result数据结构会让前端处理错误更统一!
基于这一点,后端应该捕获异常并返回一个对应的自定义Result错误代码和消息。
■网友
自己能控制的玩意不要抛异常你喜欢是写if(list == null || list.size() \u0026gt; 0){ return list.get(0)}else{ return null}还是喜欢写try{ return list.get(0)}catch(NullPointerException | IndexOutOfBoundsException e){ return null}喜欢第二种你就改变你的喜欢吧
==================================
try会影响性能,所以能不用异常就不要用异常
■网友
用异常可读性更好,我也倾向于这种方式
■网友
这是spring 官方指南,这段是说service 每次都调用用户检查的方法,如果用户不存在,还要操作该数据,会抛出用户不存在异常,鄙人不才,还请指教。
■网友
泻药。
不懂Java,只知道exception是处理异常的,流程控制不应该是选择和循环干的事吗?(半脸懵逼
■网友
就我看到的,基本都是不支持...你说的这个感觉可以用定义一个NullPerson类
■网友
建议业务层使用异常,异常类最好有code和error说明,这样代码写起来爽。
最外层给第三方返回的地方统一catch,将异常类的code和error包装成result展现,也方便记录异常日志。
■网友
使用Exception控制流程,影响程序性能,是码农偷懒的体现
推荐阅读
- #快递# 1-11月江苏快递业务量超上年总量 62.2亿件!同比增长20.9%
- 禄口■南京禄口国际机场要求成都旅客“原路返回”?机场回应
- 江苏■全省信访事项办理群众满意率达95% 江苏基本建立信访业务标准化体系
- 侧重业务逻辑的产品需求规格说明书,需要有哪些要点
- 当下电脑城/电子城/数码城的业务日益萧条,作为普通的创业者该怎样转变思路从而突围
- dart这编程语言现在发展怎么样了,语法与Java,c#很相似,甚至更简洁
- Java工程师和C++工程师在工作上有啥区别哪个更适合自身发展
- 车尚|李东辉升任吉利控股CEO 金融投资或成吉利又一核心业务板块
- 27岁,转行java的血与泪,该何去何从
- 怎样统计工程中未使用的java类
