сопоставление запросов и сопоставление результатов выводят объект не так, как я хочу

#spring-boot

Вопрос:

Когда я запускаю свою программу и открываю localhost:8080, я получаю все это в одной строке:

 {"friends":{"bob":{"name":"bob","age":1},"bobby":{"name":"bobby","age":-4}}}
 

Как сделать так, чтобы в нем были отступы, как в объекте json?

 {
    "friends": {
        "bob": {
            "name": "bob",
            "age":1
        },
        "bobby": {
            "name": "bobby",
            "age": -4
        }
    }
}
 

мой код таков:

 @RestController
@RequestMapping("/")
public class FriendResource {
    @GetMapping
    public @ResponseBody ResponseEntity<Dude> getDude() {
        return new ResponseEntity<>(new Dude())), HttpStatus.OK);
    }
}
 

Ответ №1:

Если вы хотите, чтобы ваш JSON выглядел красиво только в вашем браузере, вы можете использовать расширение chrome под названием JSON Formatter . С помощью этого в вашем браузере Chrome вам не нужно изменять свой внутренний код.

Лучше всего использовать клиентские приложения REST, такие как Postman, Insomnia, для запроса конечных точек rest. Они украсят ваш ответ JSON по умолчанию, и они поставляются с другими полезными функциями.

Ответ №2:

По умолчанию Spring Boot использует Джексона при преобразовании объектов в json. Чтобы получить вывод в нужной вам форме, включите функцию вывода отступов. Для этого добавьте следующее в свой application.properties файл в src/main/resources каталоге вашего проекта:

 spring.jackson.serialization.indent-output=true