Search code examples
javajsonhibernateextjs4

How to compare null value from the JsonObject in java


stackoverflow member i need some help from you.

I am having a JsonObject given below

{
"Id": null,
"Name": "New Task",
"StartDate": "2010-03-05T00:00:00",
"EndDate": "2010-03-06T00:00:00",
"Duration": 1,
"DurationUnit": "d",
"PercentDone": 60,
"ManuallyScheduled": false,
"Priority": 1,
"parentId": null,
"index": 2,
"depth": 1,
"checked": null }

i am getting parentId as null. I want to replace the parentId value from null to 0.

I am trying to do it with below mentioned code

if(jsonObject.get("parentId") == null || jsonObject.get("parentId") == "")
    {
        System.out.println("inside null");
        jsonObject.put("parentId", 0);
    }
    else
    {
        System.out.println("inside else part");
        //jsonObject.put("parentId", jsonObject.getInt("parentId"));
        jsonObject.put("parentId", 0);
    }

but it seems not to be working. What I am doing wrong here.


Solution

  • Use the following method of JsonObject to check if a value against any key is null

    public boolean isNull(java.lang.String key)
    

    This method is used to check Null against any key or if there is no value for the key.

    check this in the documentation

    Your Modified code should be like this

    if(jsonObject.isNull("parentId"))
        {
            System.out.println("inside null");
            jsonObject.put("parentId", 0);
        }
        else
        {
            System.out.println("inside else part");
            //jsonObject.put("parentId", jsonObject.getInt("parentId"));
            jsonObject.put("parentId", 0);
        }