try{}catch(Exception e){}finally{}怎么用最合适?
- Java code
/** * 查询用户角色表 roleuser * 根据据userNo * 查出对应的部门代码集合 */ public static List getDepCodeList(String userNo){ TSGRoleuserDao roleuserDao= (TSGRoleuserDao)BeanContext.getBean("daoTSGRoleuser"); Map map=new HashMap(); map.put("userNo", userNo); map.put("roleuserStatus",TSGConstants.TSG_enables_undel); List list=roleuserDao.query(map); List depCodelist=new ArrayList(); try { if(list.size()>0&&list!=null){ for (int i = 0; i <list.size(); i++) { list.add(i, ((Map)list.get(i)).get("ROLE_CODE").toString()); } } } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } return depCodelist.size()>0&&depCodelist!=null?depCodelist:null; }try{
}catch(Exception e){
}finally{
}
用有什么好处?不用有什么坏处?到底什么时候用才最合适呢?大家都来吼吼吧!
[解决办法]
try{
}catch(Exception e){
}要怎么用就不用说了嘛,就是捕获异常,处理异常,finally一般在你需要关闭数据库连接,关闭文件连接的时候需要用到,当然其他地方可能用到,我就说了常用的
[解决办法]
用做日志吖,查吖。。。。等等
[解决办法]
try catch 都知道可以捕捉异常的,那么用在action中可以给予友好的错误提示,比如可以捕捉这么一块,那么可以根据不同的 excption 给予不同的解决。也可以做到一些需要很多的代码才能完成的事情,比如说判断,我将一个字母的字符串转化为int那么肯定会报异常,那么在catch中就可以说 这个字符串不是数字,这样子可以检验该字符串是不是数字的,等等一些的应用,那么finaly可以用于释放一些内存。不管有没有异常都会要走的代码,不用分很多情况去写相同的代码,这样子简化了代码,提高了代码质量。
[解决办法]
一句话,根据业务需要使用。。。。
不要滥用也不要不用,
哎~虽然精辟,但跟没说一样。。。
[解决办法]
这个嘛 没深究。一般是在感觉会有异常滴时候用,在catch时 俺一般输出异常。方便查看。
[解决办法]
/**
* 查询用户角色表 roleuser
* 根据据userNo
* 查出对应的部门代码集合
*/
public static List getDepCodeList(String userNo){
List depCodelist=new ArrayList();
String msg=null;
try {
TSGRoleuserDao roleuserDao= (TSGRoleuserDao)BeanContext.getBean("daoTSGRoleuser");
Map map=new HashMap();
map.put("userNo", userNo);
map.put("roleuserStatus",TSGConstants.TSG_enables_undel);
List list=roleuserDao.query(map);
if(list.size()>0&&list!=null){
for (int i = 0; i <list.size(); i++) {
list.add(i, ((Map)list.get(i)).get("ROLE_CODE").toString());
}
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
msg=e.getMessage();
}finally{
if(msg==null){
return depCodelist.size()>0&&depCodelist!=null
}else{
return null;//报错处理
}
}
}
[解决办法]
业务代码都都放在try块里面!。。。。OK!
[解决办法]
try{
//代码编译块,代码出现异常,结束下面的代码编译,执行catch块
}catch(Exception e){
//代码块的异常处理,接受代码编译的异常,没异常不执行
}finally{
//不管有不有异常,都会执行
}
一般catch都定义很多块如
try{
}catch(NullPointException ne){
}catch(ClassNotFoundException cnfe){
}catch(ClassCastException cce){
}finally{
}
等 把每个可能出现的异常监听
finally我一般是用来关闭数据库连接的
[解决办法]
你觉得哪里可能出现问题你就去try 一下。
[解决办法]
一般可能会引起异常的地方使用,比如数据处理,读取文件时等
[解决办法]
[解决办法]
try块用来执行代码产生异常,catch块用来捕获异常,finally不管有无异常都会执行的;
一般try...catch..finally属于一般异常,通常用于易出现错误的如HibernateError,ThrowableException,IOException,SqlException等等;