Wednesday, July 7, 2021

Remove Null and Empty Keys from Json [Jackson Library]

import com.fasterxml.jackson.databind.JsonNode;


import java.util.Iterator;


/**

 * @author: Bhupendra Singh

 * @date 7/6/21 7:57 PM

 */

public class RemoveNullAndEmptyFromJson {

    /**

     * This method removes null/empty nodes from JsonNode.

     *

     * @param jsonNode

     * @return

     */

    public void removeNullAndEmptyNodesFromJsonNode(final JsonNode jsonNode) {


        if (jsonNode == null) {

            return;

        }

        if (jsonNode.isObject()) {

            final Iterator<JsonNode> iterator = jsonNode.iterator();

            while (iterator.hasNext()) {

                final JsonNode child = iterator.next();

                if (child.isNull() || child.isEmpty(null)) {

                    iterator.remove();

                } else {

                    removeNullAndEmptyNodesFromJsonNode(child);

                }

            }

        } else if (jsonNode.isArray()) {

            jsonNode.forEach(this::removeNullAndEmptyNodesFromJsonNode);

        }

    }

}

No comments:

Post a Comment

Add Your comments here...