我从gsp View 中得到一个带有日期和时间的字符串:
def name = params.name
def time = params.minutes
def date = params.datapicker
现在,我想按日期和名称在我的域中进行搜索。因此,我加入日期和时间并进行搜索:
def dataSearch = date + " " + time
MyDomain result= MyDomain.findByNameAndDateCreatedGreaterThan(name, dataSearch)
但是,我收到此错误:
2016-05-26 09:56:44,488 [http-bio-8090-exec-3] ERROR errors.GrailsExceptionResolver - NumberFormatException occurred when processing request: [POST] /myClass/search- parameters:
name: Bob
minutes: 18:17:42
button: search
datapicker: 2016-04-28
For input string: "2016-04-28 18:17:42". Stacktrace follows:
Message: For input string: "2016-04-28 18:17:42"
Line | Method
->> 65 | forInputString in java.lang.NumberFormatException
最佳答案
将您的String
转换为Date
,然后再将其传递给findByNameAndDateCreatedGreaterThan
,例如
def dataSearch = date + " " + time
Date date = Date.parse('yyyy-MM-dd HH:mm:ss', dataSearch)
MyDomain result = MyDomain.findByNameAndDateCreatedGreaterThan(name, date)
关于grails - NumberFormatException对于尝试在grails中进行日期搜索时的输入字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37456277/