gpt4 book ai didi

sql-server - Grails:如何在SQL数据库中保存java.sql.Time类型

转载 作者:行者123 更新时间:2023-12-02 16:03:14 27 4
gpt4 key购买 nike

我在名为config的表中添加了一个新的时间类型列,该列由Grails在数据库中的datetime类型生成。

这是我的 Realm 类

import java.sql.Time
class Config {
int nbr_delay
Time max_duration
static constraints = {
}
}

在我的GSP页面中
<g:field type="time" name="max_duration" value="${fieldValue(bean: configInstance, field: 'max_duration')}" />

现在,当我尝试更改max_duration的值并将其保存在数据库中时,它向我显示此错误 Failed to convert property value of type java.lang.String to required type java.sql.Time for property max_duration; nested exception is java.lang.IllegalArgumentException: Could not parse date: Unparseable date: "00:30"
我的 Controller
configInstance.properties = params
configInstance.save(flush: true)

我搜索了如何解析或操作此数据类型,但未找到任何解决方案。

最佳答案

我想说的是,如果您有一个duration字段,请使用intlong来保存分钟或毫秒:

import java.sql.Time
class Config {

long maxDuration

void setMax_duration( Time time ){ maxDuration = time.time }

Time getMax_duration(){ new Time( maxDuration ) }

static transients = [ 'max_duration' ]
}

然后,您可以在GSP中执行以下操作:
<g:formatDate format="HH:mm" date="${new Date( configInstance.maxDuration )}"/>

关于sql-server - Grails:如何在SQL数据库中保存java.sql.Time类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27984523/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com