如何在java中将“2017-04-03T00:00:00”日期格式转换为“2017-04-02 03:30:00 + 05:30”?
问题描述:
我的应用程序生成日期“2017-04-03T00:00:00”格式,我试图把它与如何在java中将“2017-04-03T00:00:00”日期格式转换为“2017-04-02 03:30:00 + 05:30”?
“2017年4月3日00:00保存的Postgres数据库:00 + 05:30“
。用sql查询,日期得到妥善保存在数据库中。但是,当我试图把它与GROM save()
方法保存,它显示 “现场 '开始日期':拒绝值2017-04-03T00:00:00]”
我正在使用org.grails.datastore.gorm.GormInstanceApi.save()
API。这里是我的代码片段:
def update(name, startdate, enddate) {
TestExt mydomain = new TestExt (name: name, startdate:startdate, enddate:enddate)
if(mydomain.hasErrors() || !mydomain.save(flush:true)){
println mydomain.errors
}
// TestExt.executeUpdate("update TestExt set name='"+name +"', start_date='"+startdate +"', end_date='"+enddate +"' where id=1")
}
任何人都可以帮助我吗? 非常感谢提前!
答
我假设你试图插入这个值的字段是一个TIMESTAMP。你是否试图施放它?
SELECT CAST('2017-04-03T00:05:00' AS TIMESTAMP);
+0
这里的问题实际上是用户定义了'def update(name,startdate,enddate)'没有定义什么开始或结束日期,因此它会接受字符串或日期。实际问题是传入的日期参数是字符串格式,需要采用日期格式。解决方案是设置默认的日期格式尝试搜索该词,并且整个问题的答案就在那里。抱歉,不是@ jim,而是@mam – Vahid
什么是'GROM save()'? – dr0i
寻求调试帮助的问题(“为什么这个代码不工作?”)必须包含所需的行为,特定的问题或错误以及在问题本身中重现问题所需的最短代码。没有明确问题陈述的问题对其他读者无益。请参阅:如何创建[mcve]。 – GhostCat
我们可以为您提供的唯一答案**不**在此发布您的代码:学习使用调试器。我们只能帮助我们看到的代码。 – GhostCat