Grails3与Grails4-日期和时间戳

Grails3与Grails4-日期和时间戳,grails,Grails,我正在尝试将我的Grails3应用程序升级为Grails4。在这两种情况下,我都将其用于Java8和Oracle数据库。我看到了日期处理方式的差异,并试图找出日期的变化,但没有发现任何与此相关的内容(在发行说明等中)。是否有任何类型的博客帖子/发布说明可以让我参考?或者,解释下面的区别 两个例子 我使用这样的函数从Oracle获取日期 Date currentDateTime; // NOte this is a java.util.date {$Sql.TIMESTAMP = call Get

我正在尝试将我的Grails3应用程序升级为Grails4。在这两种情况下,我都将其用于Java8和Oracle数据库。我看到了日期处理方式的差异,并试图找出日期的变化,但没有发现任何与此相关的内容(在发行说明等中)。是否有任何类型的博客帖子/发布说明可以让我参考?或者,解释下面的区别

两个例子

我使用这样的函数从Oracle获取日期

Date currentDateTime; // NOte this is a java.util.date
{$Sql.TIMESTAMP = call GetcurrentDateTime} {
            returnedDateTime -> currentDateTime =  returnedDateTime;
        }
在Grails3中,returnedDateTime的行为总是与java.util.Date一样。我知道函数调用中的返回参数是Sql.TIMESTAMP,但它会让我将其分配给一个日期变量,然后作为一个日期。但在Grails4中,它的行为类似于java.sql.Timestamp,即使它被声明为日期变量

另一个例子: 在我看来,我会有一个像这样的日期选择器

<div data-role="controlgroup" data-mini="true" data-type="horizontal" >
    <g:datePicker name="reportingPeriod" precision="month"
    value="${reportingPeriod}"
    default="none" noSelection="['':'']"
    />
</div>
它将显示一个类似以下内容的结果
params.reportingPeriod
Sun Dec 01 00:00:00 UTC 2019

我也可以指定

params.reportingPeriod 
直接到
java.util.Date
变量

但在Grails4中,控制器显示了这一点

params.reportingPeriod: date.struct

而且它没有正确地直接分配给日期变量

你在这方面有什么进展吗?我在将2.4.x应用程序迁移到4.0时遇到了同样的问题。将所有
params.someDate
调用更改为
params.getDate('someDate')
是可行的,但必须有更好的方法来完成这一点,而不是在应用程序中更改对日期参数的每个引用…不。。。。似乎我们需要改变你所描述的通话。
params.reportingPeriod: date.struct