• 循环中出现异常时记录异常并继续执行循环


     for(AdminDataContent adminDataContent:adminDataContentList){
                     try {
                         String tableName=adminDataContent.getTableName();
                         String sql = "describe " +tableName ;  
                         PreparedStatement ps = conn.prepareStatement(sql);  
                         ResultSet resultset = ps.executeQuery();  
                         while(resultset.next()){
                                 AdminDataContentDetail contentDetail=new AdminDataContentDetail();
                                 contentDetail.setId(new UUIDUtils().getUUID());
                                 contentDetail.setContentId(adminDataContent.getId());
                                 contentDetail.setDatasourceId(adminDataContent.getDataSourceId());
                                 contentDetail.setColumnName(resultset.getString(1));
                                 contentDetail.setColumnType(resultset.getString(2));
                                 contentDetail.setCreateBy(adminDataContent.getCreateBy());
                                 contentDetail.setCreateDate(new Date());
                                 contentDetail.setUpdateBy(adminDataContent.getUpdateBy());
                                 contentDetail.setUpdateDate(new Date());
                                 contentDetail.setDelFlag("0");
                                 contentDetailsList.add(contentDetail);
                                   
                             }
                    } catch (Exception e) {
                        e.printStackTrace();
                         TableScanError error=new TableScanError();
                        error.setId(new UUIDUtils().getUUID());
                        error.setDataSourceId(adminDataContent.getDataSourceId());
                        error.setErrorTableName(adminDataContent.getTableName());
                        error.setErrorDatabase(StringUtils.substringBefore(adminDataContent.getTableName(), "."));
                        //error.setCreateBy(adminDataContent.getCreateBy());
                        error.setCreateDate(new Date());
                        //error.setUpdateBy(adminDataContent.getUpdateBy());
                        error.setUpdateDate(new Date());
                        error.setRemarks(e.toString());
                        errors.add(error);
                        continue;
                        
                    }       
                 }

    实例如上,在循环中使用try catch,catch中进行异常处理并使用continue进入下一次循环

  • 相关阅读:
    网页居中的问题
    棋盘覆盖
    可变宽度的圆角框
    多线程编辑问题
    实验五 Web项目开发
    实验三 一个标准的Windows应用程序
    【语言处理与Python】1.2将文本当作词链表
    【语言处理与Python】1.5自动理解自然语言
    【语言处理与Python】1.1文本和单词
    【语言处理与Python】1.3计算语言:简单的统计
  • 原文地址:https://www.cnblogs.com/dsh2018/p/9396919.html
Copyright © 2020-2023  润新知