Вы можете сделать, как показано ниже, если вы знаете схему и иерархию:
JsonObject jsonObj= gson.fromJson(json, JsonObject.class);
jsonObj.getAsJsonObject("moreDetails").remove("secondName");
System.out.println(jsonObj.getAsString());
см. Эту информацию для получения дополнительной информации Удалить ключ из Json внутри JsonObject
иначе вам нужно написать динамическую функцию, которая проверит каждый элемент объекта JSON и попытается найти в нем элемент secondName
и удалить его.
Итак, рассмотрим здесь, поскольку у вас есть несколько вложенных объектов, вам нужно написать функцию, которая будет выполнять итерацию по каждому элементу, и проверять его тип, если он снова jsonObject вызывает один и тот же метод рекурсивно или итеративно для проверки текущего элемента в каждой проверке. вам также необходимо убедиться, что ключ, если он совпадает с ключом, который должен быть удален, вы можете удалить его и продолжить то же самое.
Чтобы узнать, как проверить тип значения JSON, см. Как проверить тип значения из JSONObject?