工作中对异常的处理

一. 不要让异常扩散出去,在你负责的那层就要捕获和处理掉。

try {
   Map<String, Object> params = new HashMap<String, Object>();
   params.put( "accountid", userId);
   UcResult eprList = this.ucService .queryEnterpriseByAccountId(params);
   if(eprList != null  && !"".equals(eprList)){
       JSONObject jobject = JSONObject.fromObject(eprList.getData());
       if (!jobject.getString("authBriefInfoVoList" ).equals("" ) &&           jobject.getString("authBriefInfoVoList" ) != null) {
            String qiyePassList = jobject.getString("authBriefInfoVoList" );
            if (qiyePassList != null &&!"".equals(qiyePassList.toString())) {
                 JSONArray passList = JSONArray.fromObject(qiyePassList);
                 if(passList.size() > 0) {
                       authFlg = "2";//有认证企业并无默认企业
                 }
                 for ( int i=0; i<passList.size(); i++){
                     JSONObject obj = JSONObject.fromObject(passList.getString(i));
                     EqwEprInfo attach = new EqwEprInfo();
                     attach.setEprId(obj.containsKey( "enterpriseid") ? obj.getString("enterpriseid" ) : "" );
                     attach.setCorporation(obj.containsKey( "enterprisename") ? obj.getString("enterprisename" ) : "" );
                     reslist.add(attach);
                  }
                  model.addAttribute( "eprList", reslist);
                  }
              }
         }
   } catch (Exception e) {
     model.addAttribute( "eprList", reslist);
   }

二、不要捕获 Java 类库中定义的继承自 RuntimeException 的运行时异常类,如:

IndexOutOfBoundsException / NullPointerException,这类异常由程序员预检查来规避,保

证程序健壮性。

三、异常不要用来做流程控制,条件控制,因为异常的处理效率比条件分支低。

四、不要对大段代码进行try-catch。你try-catch的是不稳定代码的那部分,稳定可预知结果的代码不要放进try-catch中,这是不负责任的行为。

五、 finally 块必须对资源对象、流对象进行关闭,有异常也要做 try-catch。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值