【发布时间】:2017-11-22 17:13:07
【问题描述】:
如何在 Groovy 中检查某个日期是否介于其他两个日期之间? MySQL中有没有类似BETWEEN的函数?
【问题讨论】:
标签: groovy
如何在 Groovy 中检查某个日期是否介于其他两个日期之间? MySQL中有没有类似BETWEEN的函数?
【问题讨论】:
标签: groovy
没有任何神奇的功能,但您可以轻松编写一个函数来做到这一点
Date date1 = new Date()
Date date2 = new Date().plus(2)
Date toCheck1 = new Date().plus(3)
Date toCheck2 = new Date().plus(1)
def dateBetween(Date date1, Date date2, Date toCheck){
return toCheck.after(date1) && toCheck.before(date2)
}
dateBetween(date1, date2, toCheck1) // returns false
dateBetween(date1, date2, toCheck2) // returns true
【讨论】:
主要逻辑是将你的日期转换成YYYYMMDD的格式,然后你可以检查date1
下面是可以在soapui中运行的groovy代码。例如今天是 20171225 5 天后是 20171230 。所以现在 20171227
def date1 = new Date().format("YYYYMMdd")
def date2 = (new Date()+5).format("YYYYMMdd")
def date3 = (new Date()+3).format("YYYYMMdd")
log.info "date1 is " + date1 + " date2 is " + date2 + " date3 is " + date3
if(date2<=date1 && date3>=date1)
{
log.info "date3 is between date1 and date2"
}
else
{
log.info "Date3 is not between date1 and date2"
}
【讨论】: