2010-12-15 209 views
-2

我需要從數據庫檢索數據,如果沒有在dB中找到數據我需要在java中激發一個彈出窗口。即時通訊給我在這裏寫的代碼來處理,但無法處理它。java異常處理

String SectorCode = employerProfile.getSectorCode().getSectorTypeId(); 
String IndustrialCode = employerProfile.getIndustrialCode().getIndustryTypeId(); 
try{ 
    if(SectorCode==null || IndustrialCode==null){ 
     JOptionPane.showMessageDialog(null, "Record not found"); 
    } 
}catch(Exception ex){ 
    ex.printStackTrace(); 
} 

請給我建議的解決方案... 在此先感謝

+0

那麼,什麼是真正的問題?它拋出異常嗎?沒有看到對話框? – 2010-12-15 06:32:34

+0

是它的拋出異常...但用戶需要彈出窗口,當沒有文件存在dB .. – charan 2010-12-15 06:36:23

+0

@ charan ...當這個調用拋出異常...可能是incase沒有找到記錄.. ?? M我...? – water 2010-12-15 06:38:16

回答

1

一個這樣做的骯髒的方式...(你提到,你得到空指針異常)

String SectorCode = null; 
String IndustrialCode = null; 
try{ 
    SectorCode = employerProfile.getSectorCode().getSectorTypeId(); 
    IndustrialCode = employerProfile.getIndustrialCode().getIndustryTypeId(); 
    ... 
}catch(Exception ex){ 
    if(SectorCode==null || IndustrialCode==null){ 
     JOptionPane.showMessageDialog(null, "Record not found"); 
    } 
} 
0

取決於您使用和/或它是如何設置您可能需要檢查空字符串在數據庫上,太:

if(SectorCode==null || IndustrialCode==null || SectorCode.length() == 0 || IndustrialCode.length() == 0) { 
+0

嗨sjngm ...它不工作。我沒有得到任何彈出... – charan 2010-12-15 06:37:55

1

如果if塊未執行意味着可能在前兩行的方法調用中發生異常。檢查行employerProfile.getSectorCode().getSectorTypeId();employerProfile.getIndustrialCode().getIndustryTypeId();是否正確執行,沒有任何例外。

+0

沒有柴坦尼亞。在第2行,沒有例外。但如果阻止則無法執行。在java控制檯最後顯示空指針異常 – charan 2010-12-15 06:53:49

+0

你是對的。如果塊不會被執行,除非有異常,因爲如果塊在try-catch塊內。 – 2010-12-20 10:38:12