java.math.BigInteger не может быть приведен к java.lang.Integer, sql Диалект не настроен - PullRequest
0 голосов
/ 03 октября 2019

Я использую Spring Boot 1.5, я хочу получать оповещения, сгруппированные по их статусу (четыре состояния). Таким образом, я использую собственный запрос в хранилище. когда я запускаю этот запрос, он дает мне результат. но это не работает с сервисом. результат, который я получаю при запуске с консоли: https://drive.google.com/open?id=1eson3nEHAIEr-jdEgkC1-tw2acRsW728

служба:

  @Override
public List<DashboardAlertVO> countingStatus() {
    return alertRepository.countStatus()
            .stream()
            .map(o -> new DashboardAlertVO(AlertStatus.fromValue((String) o[0]),
                    ((Integer) o[1])))
            .collect(Collectors.toList());
}

, поэтому я получаю эту ошибку:

"message": "java.math.BigInteger cannot be cast to java.lang.Integer",

Я не знаю, что на самом деле важно с этим кодом. Пожалуйста помоги ! Большое спасибо.

1 Ответ

1 голос
/ 03 октября 2019

Мы не можем набрать приведение BigInteger к Integer, просто используя ключевое слово integer. Вместо этого вы должны использовать встроенный метод intValue () класса BigInteger, чтобы получить целочисленную часть.

@Override
public List<DashboardAlertVO> countingStatus() {
    return alertRepository.countStatus()
        .stream()
        .map(o -> new DashboardAlertVO(AlertStatus.fromValue((String) o[0]),
                (o[1].intValue())))
        .collect(Collectors.toList());
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...