Search code examples
javaeclipseresultset

issue dealing the ResultSet Value in Eclipse Rcp


My ResultSet Query is

StrQry = "select SUM(isnull(prn_amount,0))as prn_amount,SUM(isnull(adv_prn,0))as adv_prn, SUM(isnull(prv_prn,0))as prv_prn from loan_transaction_mcg where loan_id='1117'";

It is giving the result as on Sql

  1. prn_amount =NULL
  2. adv_prn =NULL
  3. prv_prn =NULL

when the loan id =1117

ResultSet RsPrincipalDetail = getPaidDetail(loan_id);

        while(RsPrincipalDetail.next()){

        prn1 = RsPrincipalDetail.getString("prn_amount");
        prn2 = RsPrincipalDetail.getString("adv_prn");
        prn3 = RsPrincipalDetail.getString("prv_prn");
        if(prn1.equals("")){
            prn1.equals("0");               
        }
        if(prn2.equalsIgnoreCase("")){
            prn2.equals("0");               
        }
        if(prn3.equalsIgnoreCase("")){
            prn3.equals("0");               
        }

I tried putting prn1.equals(null) but still the null pointer exception comes. I tried in debug mode on prn1, it is showing as null as its value.


Solution

  • The problem here is that since your values in database are NULL when you convert them to java values using getString they will also be null.

    Since null is not the same as empty string you can not really use prn.equals("")

    Also using prn.equals(null) is a bad idea as usually the way that equals is implemented ... it will return false if something that it is compared to is null

    Your best bet is to use equality operator to check for null

    if(prn == null)