Groovy 无法将java.lang.Object转换为java.util.Date
在groovy应用程序中,我使用Hibernate createCriteria()接收java.sql.Timestamp对象,并希望将其转换为java.util.Date对象。我尝试了以下代码,但无效:Groovy 无法将java.lang.Object转换为java.util.Date,groovy,Groovy,在groovy应用程序中,我使用Hibernate createCriteria()接收java.sql.Timestamp对象,并希望将其转换为java.util.Date对象。我尝试了以下代码,但无效: Date javaDateObject = sqlDateObject Date javaDateOject = (Date)sqlDateObject Date javaDateObject = sqlDateObject as Date 我得到一个错误: org.codehaus.g
Date javaDateObject = sqlDateObject
Date javaDateOject = (Date)sqlDateObject
Date javaDateObject = sqlDateObject as Date
我得到一个错误:
org.codehaus.groovy.runtime.typehandling.GroovyCastException:
Cannot cast object '[Ljava.lang.Object;@14a4864' with class
'[Ljava.lang.Object;' to class 'java.util.Date'
试一试
Date javaDateObject = new Date(sqlDateObject.time)
由于sqlDateObject实际上是一个对象[],而不是java.sql.Timestamp,因此该错误是正常的 假设数组包含时间戳作为(单个)第一个元素,您当然可以执行
datejavadateobject=(Date)sqlDateObject[0]
(或带有“as”的变量)。但因为Timestamp是Date的一个子类,所以它实际上不起任何作用
如果你真的需要约会,我建议你:
Date javaDateOject = new Date(sqlDateObject[0].time)
不,对象数组不能强制转换为日期,这很有意义。谢谢您的视图谢谢您的视图对您有用吗?如果是,请将答案标记为正确。