Я использую базу данных MySQL для хранения информации для моего приложения напоминания в Java. Я пытаюсь извлечь информацию и сохранить ее в массиве и сравнить каждый элемент массива с текущей меткой времени обновления. Проблема в том, что код, который у меня есть, дает исключение нулевого указателя, и я не могу понять, почему. Он работает, когда LocalDateTime не является массивом, но в тот момент, когда я превращаю его в массив, он выдает ошибку. Он также требует, чтобы я инициализировал его нулевым значением над чем-либо еще.
Мысли, как это исправить? Любая помощь приветствуется.
Вот рассматриваемый метод.
public static LocalDateTime[] getReminderTime()
{
String SQL = "SELECT r_dateTime FROM reminder_database.reminder;";
LocalDateTime reminderTime[] = null;
try
{
Connection conn = main.getConnection();
java.sql.Statement stmt;
stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(SQL);
if(rs.isBeforeFirst())
{
for(int i = 0; rs.next(); i++)
{
reminderTime[i] = rs.getTimestamp(1).toLocalDateTime();
}
}
rs.close();
stmt.close();
conn.close();
}
catch(Exception e)
{
System.out.println("Exception thrown with getReminderTime --> " + e + e.getStackTrace());
}
return reminderTime;
}
Вот выброшенное исключение
Exception thrown with getReminderTime --> java.lang.NullPointerException[Ljava.lang.StackTraceElement;@6dfc1e5f
Exception thrown with getReminderTime --> java.lang.NullPointerException[Ljava.lang.StackTraceElement;@3b2da18f