Как использовать сериализацию Джексона для метода toString? - PullRequest
0 голосов
/ 21 марта 2019

Я уже установил открытый класс сущности через сериализацию Jackson, которая хорошо работает в моем RestController.

Недавно я попытался создать Spring AOP для отображения журнала, но он использует toString класса, который выдает исключение StackOverflow, поскольку класс содержит двунаправленные отношения.

Object result = joinPoint.proceed();
if (log.isDebugEnabled()) {
    log.debug("Exit: {}.{}() with result = {}", 
        joinPoint.getSignature().getDeclaringTypeName(),
        joinPoint.getSignature().getName(), 
        result);
}

Как настроить метод toString для использования уже настроенной сериализации Jackson?

1 Ответ

0 голосов
/ 21 марта 2019

Я решил свою проблему с помощью ObjectMapper.

Object result = joinPoint.proceed();
if (log.isDebugEnabled()) {
    log.debug("Exit: {}.{}() with result = {}", 
        joinPoint.getSignature().getDeclaringTypeName(),
        joinPoint.getSignature().getName(), 
        new ObjectMapper().writeValueAsString(result));
}
...