2011-08-22 3 views
0

쿼리 결과 집합을 2 차원 배열에 넣는 코드가 있습니다. 그러나 배열 결과 집합에서 null이 발생하면 오류가 발생합니다. 이 문제를 어떻게 해결할 수 있습니까?null이 발생하면 Java 결과 집합 오류가 발생합니다.

query = "SELECT * FROM E_CMS WHERE BOXADDR_AREA IS NULL ORDER BY CBOXID ASC "; 
    rs = stmt.executeQuery(query); 

    //insert the table into the 2 dimensional array 
    while (rs.next()) { 
    e_cms_Array[count][0] = rs.getString("CBOXID"); 
    e_cms_Array[count][1] = rs.getString("CBOXADD").replace("'",""); 
    e_cms_Array[count][2] = rs.getString("MFLPU"); 
    e_cms_Array[count][3] = rs.getString("SATLPU"); 
    e_cms_Array[count][4] = rs.getString("BOXTYPE"); 
    e_cms_Array[count][5] = rs.getString("SVCCLASS"); 
    e_cms_Array[count][6] = rs.getString("LOCATION_TYPE").replace("'",""); 
    e_cms_Array[count][7] = rs.getString("CHANGE_DATE"); 
    e_cms_Array[count][8] = rs.getString("DEL_FLAG"); 
    e_cms_Array[count][9] = rs.getString("DECAL_PRINT_DT"); 
    e_cms_Array[count][10] = rs.getString("BOXADDR_AREA").replace("'",""); 
    e_cms_Array[count][11] = rs.getString("LASTMF_AREA_O"); 
    e_cms_Array[count][12] = rs.getString("LASTSAT_AREA_O"); 

    System.out.println(count + " :: " + 
     e_cms_Array[count][0]+"|"+ 
     e_cms_Array[count][1]+"|"+ 
     e_cms_Array[count][2]+"|"+ 
     e_cms_Array[count][3]+"|"+ 
     e_cms_Array[count][4]+"|"+ 
     e_cms_Array[count][5]+"|"+ 
     e_cms_Array[count][6]+"|"+ 
     e_cms_Array[count][7]+"|"+ 
     e_cms_Array[count][8]+"|"+ 
     e_cms_Array[count][9]+"|"+ 
     e_cms_Array[count][10]+"|"+ 
     e_cms_Array[count][11]+"|"+ 
     e_cms_Array[count][12]); 

    count++; 
    } 
+0

오류 메시지 및 스택 추적은 무엇입니까? –

+0

@JB Nizet'forecast_transmission.get_e_cms (forecast_transmission.java:106)에서 java.lang.NullPointerException이 \t는 forecast_transmission.main (forecast_transmission.java:44)에서 \t' – Mike

+0

는 전체 코드 또는 SSCCE을 제공하십시오. 배열에 null 값을 추가하면 오류가 발생합니다. – Heisenbug

답변

4

는 그냥

String s = rs.getString("CBOXADD"); 
    e_cms_Array[count][1] = s==null ? s : s.replace("'",""); 

에 의해 대체 이상이 교체 널 허용 방법을 쓰기

e_cms_Array[count][1] = rs.getString("CBOXADD").replace("'",""); 

같은 일을 제외하고, 오류에 대한 이유가 없다.

+0

아, 물론 때로는 얼굴 앞에서 뭔가를 알아 차리는 데 또 다른 눈이 필요합니다. – Mike

+0

문제가 해결되면 확인하고 투표해야합니다. – tylerthemiler

+1

가장 쉽게 얻은 평판입니다. :) – maaartinus