社区
Java SE
帖子详情
java 异常处理问题。谢谢大家了
baofengyingyinaaa
2010-04-12 09:15:13
大家一般怎么处理项目中的异常
(代码上的异常处理)
我是这样的,
向上抛,让上一层解决。
写日志,记录。跳转到错误页。
或者在该类解决。
希望大家给我点意见。
...全文
222
18
打赏
收藏
java 异常处理问题。谢谢大家了
大家一般怎么处理项目中的异常 (代码上的异常处理) 我是这样的, 向上抛,让上一层解决。 写日志,记录。跳转到错误页。 或者在该类解决。 希望大家给我点意见。
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
18 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
baofengyingyinaaa
2010-04-14
打赏
举报
回复
public class ProductException extends Exception {
/**
* @param: 异常信息
* @Description: 构造方法
* ${tags}
*/
public ProductException(String msg) {
super(msg);
}
}
这样写可以吗?没有几年经验,真搞不定。
luozhangwen
2010-04-12
打赏
举报
回复
日志在最底层打,然后往上面抛, 一直抛到Action在try catch 获取异常code
to_heaven
2010-04-12
打赏
举报
回复
尽量不要 往上一层抛,那样的上一层又往上上一层抛?
这点是不同意的。
首先要规划下项目中要处理的异常有哪些,业务的异常应该是要在程序中处理,并转化为文字显示给用户查看的。 非业务的异常看是否影响程序执行结果,如是直接返回异常消息,并中止此次操作,否现Log下就可以了。
可以用ExceptionManager将Exception转换为Error, 这样就不用在所有方法中都写throw Exception了。
hardycheng
2010-04-12
打赏
举报
回复
还是在出问题的地方处理
尽量不要 往上一层抛,那样的上一层又往上上一层抛,
到后来你只能知道出异常了,但是具体那一块出的问题查不出来了。
Dan1980
2010-04-12
打赏
举报
回复
具体问题具体分析。
不过,一个基本的原则是,“如果你没有100%的把握能妥当地处理异常,最好是把它抛出去,交给上级处理”。因为越是上层的代码,越是统筹全局的,统筹全局的更清楚应该怎么处理全局性的异常。
2楼说生活中的例子,其实应该这么说,自己搞得定的事情自己搞定,自己搞不定还一定要去搞定,那叫逞能,最后连累的不仅仅是自己。
比如,系统有一个统一的错误信息提示处理机制,它负责捕获所有最终的异常并决定如何(或是否)显示给用户。你在编写一个读文件的方法时,把IO异常非常简单地处理掉了(很多人通常是catch后面跟一对花括弧就完事),结果文件没有读出来,而错误信息也没有正确地传达给最终用户。
所以,6楼说的恰恰反掉了,随随便便就把异常处理掉,而不抛出的话,那才是真正导致“具体那一块出的问题查不出来了”的原因。
在大的工程里,一个public类的public方法该不该声明抛出异常,是应该在早期就设计好了的,不会留到编码阶段由程序员来决定。如果你负责编写的某个方法设计为抛出某种类型的异常,那么你遇到异常时一定要抛出,而不要自己处理。
java_zhengjd
2010-04-12
打赏
举报
回复
一般不要向上抛,一个工程项目中异常的解决很重要,要考虑周到,尽量扑获处理。
yueguangkai001
2010-04-12
打赏
举报
回复
我看到有的是在异常处理中做事,如果出现异常,程序又改怎么去进行,抛出去作用也不大,也影响程序的运行
还有就是抛出错误,就是跟LZ的差不多的想法,
to_heaven
2010-04-12
打赏
举报
回复
建议使用ExceptionManager统一处理。 ExceptionManager.handle(Exception ex)。
keeya0416
2010-04-12
打赏
举报
回复
最好是那出就那解决
别把自己的事交给别人去做
生活中也是一样的道理
marf_cn
2010-04-12
打赏
举报
回复
一般都是在本类中解决,方便错误定位。
mf0606
2010-04-12
打赏
举报
回复
抛出异常最简单,嘿嘿!
chan10
2010-04-12
打赏
举报
回复
往上抛,留给具体程序,来定义错误信息。
libo_java
2010-04-12
打赏
举报
回复
如果是大型项目 我建议楼主进行自定义异常,当出现异常的时候抛出自定义的异常号,以此类推,最终在基类中对所有自定义异常进行捕获,根据传过来的异常编号做相应的异常处理,这种做法比较通用。
yymn_love
2010-04-12
打赏
举报
回复
今天刚学的异常。老师给我们介绍的是先throws ,因为当时可能不知道处理异常后给出什么提示信息。到一个不会再被调用的并且引发了那个异常的方法里面去做处理
longlikema
2010-04-12
打赏
举报
回复
[Quote=引用 11 楼 reanfan 的回复:]
1.底层将强制异常转化为非强制异常
2.定制的非强制异常类有能接受 thrown的构造器,并且有明前的分类作用
3.上层中根据这些分类 采用不同的异常处理机制
[/Quote]
没错,我们就是这样做的
reanfan
2010-04-12
打赏
举报
回复
1.底层将强制异常转化为非强制异常
2.定制的非强制异常类有能接受 thrown的构造器,并且有明前的分类作用
3.上层中根据这些分类 采用不同的异常处理机制
gaokangstudy
2010-04-12
打赏
举报
回复
学习了
hhcwd
2010-04-12
打赏
举报
回复
学习了
Java
异常处理
详细讲解及常见面试
问题
异常(Exception):程序运行中出现的不期而至的各种状况,如文件找不到、网络连接失败、非法参数等。
Java
将异常当作对象来处理,并定义一个基类作为所有异常的超类。异常的分类检查性异常(Checked Exception):用户错误或
问题
引起的异常,是程序员可以预见的,如打开一个不存在的文件。这类异常在编译时必须显式处理(使用try-catch捕获或使用throws声明抛出),否则编译不通过。运行时异常(Unchecked Exception)
JAVA
中
异常处理
问题
六种
异常处理
的陋习 你觉得自己是一个
Java
专家吗?是否肯定自己已经全面掌握了
Java
的
异常处理
机制?在下面这段代码中,你能够迅速找出
异常处理
的六个
问题
吗? 1 OutputStreamWriter out = ... 2
java
.sql.Connection conn = ... 3 try { // ⑸ 4 Statement stat = conn.create
java
异常处理
的一些
问题
“程序中凡是可能出现异常的地方必须进行捕获或者抛出”的对错: 一个规模比较大型的
java
程序中,他所存在异常不仅仅包括一些比较常见的异常,你所用的编辑器,可能会去提醒你处理这些异常但是还有一些不常见的异常,你可能等运行时会出现,或者在一些比较特别的情况下会出现这些异常,你并不能把所有异常发生的情况给找出来,你所能做到的仅仅是尽力的提高代码的健壮性,减少异常的发生,把一些你所能发现的异常解决,在调...
Java
异常处理
中一些隐蔽
问题
的分析总结
背景: 不论是在近期的程序开发工作中,还是在过往的开发经历中,
java
异常处理
的代码总是能经常遇到,有些
异常处理
的不太合适,会引起业务上不好的体验、bug,下面将总结几个
问题
场景以及对应解决思路。 内容: 1.当捕获到一个异常时,要不要吃掉、吞掉异常? 所谓吞掉异常,是指处理后不再将异常上抛,比如捕获异常后打印日志、发通知后不再上抛;捕获异常后返回null值给上层等。 要不要吞掉异常?这需要看异常的类型、是否涉及事务、当前具体的需求场景等情况。 1.1我们查看spring事务部分的源码: 可以看到,如果设
Java
异常处理
中的
问题
2019独角兽企业重金招聘Python工程师标准>>> ...
Java SE
62,620
社区成员
307,251
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章