Результат запроса Grails Native Sql, возвращающий поле даты как LocalDateTimeJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Результат запроса Grails Native Sql, возвращающий поле даты как LocalDateTime

Сообщение Anonymous »

Мы используем платформу Grails.v3.3.10 для веб-приложения. Jdk1.8 мы используем. Мы только что обновили наш MYSQL с mysql-connector-java:5.1.36 до mysql-connector-java:8.0.33. Я также обновил клиентское программное обеспечение командной строки mysql 8.3. В нашем веб-приложении мы используем собственный SQL-запрос для создания сложных отчетов. Этот запрос возвращает поле даты как класс LocalDateTime.
См. раздел «Посещаемость».

Код: Выделить всё

class Attendance {
Date date
...... Other fields
}

class AttendanaceService{
DataSource dataSource

String query = "select a.id, a.date from attendance as a"
Sql sql = new Sql(dataSource)
List attendanceList = sql.rows(query)
attendanceList?.each{ GroovyRowResult row ->
log.info "Date ---> ${row?.date?.getClass()}"
log.info "Date VALUE---> ${row?.date}"
}

Output is
2024-04-19 11:12:44.756  INFO --- [nio-8080-exec-7] x.y.d.AttendanaceService         : Date ---> class java.time.LocalDateTime
2024-04-19 11:12:44.756  INFO --- [nio-8080-exec-7] x.y.d.AttendanaceService         : Date VALUE---> 2024-04-09T00:00
}
Перед обновлением mysql 8 я просто сравнивал поле даты sql с объектом даты JAVA. И это работало, как и ожидалось. Я использовал, как показано ниже

Код: Выделить всё

   Date date = new Date();
attendanceList?.each{ GroovyRowResult row ->
if(row >= date){
.. DOING MY STTUFF
}
}
После обновления MySQL приведенное выше сравнение не работает. В нашем веб-приложении мы во многих местах используем собственный SQL для сложных запросов. Трудно пойти и проверить все запросы и перебрать строки, чтобы преобразовать LocalDateTime в объект Date, чтобы он работал. Пожалуйста помоги мне с этим. У нас нет bean-компонентов, которые могли бы повлиять на это.
В нашем файле build.gradle . у нас есть зависимости, связанные с спящим режимом.

Код: Выделить всё

    compile "org.grails.plugins:hibernate5"
compile "org.hibernate:hibernate-core:5.1.16.Final"
compile "org.hibernate:hibernate-ehcache:5.1.16.Final"
runtime "mysql:mysql-connector-java:8.0.33"
Пожалуйста, помогите мне решить эту проблему. Спасибо

Подробнее здесь: https://stackoverflow.com/questions/783 ... aldatetime
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»