Я не могу добавить извлеченные записи к объекту ArrayList
, поскольку ArrayList
имеет максимальный размер Integer.max
, а запрос к mysql
базе данных извлекает слишком много записей, чем Integer.max
.
Я был в spring boot
проекте.Нам нужно было решение для извлечения записей из базы данных mysql
с использованием spring data jpa
.Ниже приведен мой код для извлечения записей:
@Override
public List<HtsLogs> getAllRecords(String from, String to) {
System.out.println(from+" "+to);
List<HtsLogs> listHtsLogs = new ArrayList<HtsLogs>();
try {
String sql = "SELECT em.* FROM local_backup.hts_logs as em where em.created_date between ? and ? order by em.created_date desc ;";
Query query = entityManager.createNativeQuery(sql,HtsLogs.class);
query.setParameter(1, from);
query.setParameter(2, to);
listHtsLogs = query.getResultList();
}catch(Exception ex) {
System.out.println("exception HtsLOGS exception HtsLOGS exception HtsLOGS ");
ex.printStackTrace();
}
return listHtsLogs;
}
Я ожидал, что все записи будут накапливаться сразу в объекте arraylist, но из-за максимального размера я не могу этого сделать.Я получаю java.lang.OutOfMemoryError: GC overhead limit exceeded
ошибку.Есть ли какое-то решение этого ..