本帖最后由 oZhangSanGong 于 2013-01-31 15:26:09 编辑

解决方案 »

  1.   

    就在sql报错时,捕获异常,自己处理。
    但是我捕获时,没有进catch里来。
      

  2.   

    你首先要确定运行到了你的if里面,只要进了你的if里面,在try里面有异常,肯定会进入catch的。
      

  3.   

    代码有点乱,重新帖.
    public void synRun() throws Exception{
    // ...............
     try{
        sqlBean.execUpdate("sql insert");
     }catch(MySQLIntegrityConstraintViolationException t){
       System.out.println("存在"); 
     //logger.error(t.getMessage());
     }
    }
    sql操作方法:
    public int execUpdate(String sql) {
                 //执行更新或删除
                 int rows = 0;
                  
                 if (conn != null && sql != null){
                         try{
                                 stmt = conn.createStatement();
                                 rows = stmt.executeUpdate(sql);
                         }catch(SQLException ex)        {
                                 ex.printStackTrace();
                         }
                 }
                 return rows;
         }
      

  4.   

    当执行了这步sqlBean.execUpdate("sql insert");
    才会报错的呀。
      

  5.   

    ex.printStackTrace();
    这里再System.out.print("存在") 试试?
      

  6.   

    就是这问题,在execUpdate已经捕获了,没有抛出异常。
    已经结贴了,没办法给分了还是多谢fx_xf的回复。