Java 比较两个时间戳天数
在我的应用程序中,我设计了一个Spring调度器,它应该选择具有“abcDate”字段且明天的时间戳为值的记录 我在java应用程序中计算了时间戳Java 比较两个时间戳天数,java,javascript,couchdb,Java,Javascript,Couchdb,在我的应用程序中,我设计了一个Spring调度器,它应该选择具有“abcDate”字段且明天的时间戳为值的记录 我在java应用程序中计算了时间戳 Calendar cal = Calendar.getInstance(); cal.add(Calendar.DAY_OF_YEAR, 1); long abcTimeStamp = DateUtils.convertDateTimeToUTCzone(cal.getTimeInMillis());
Calendar cal = Calendar.getInstance();
cal.add(Calendar.DAY_OF_YEAR, 1);
long abcTimeStamp = DateUtils.convertDateTimeToUTCzone(cal.getTimeInMillis());
该值为:1387348986(即)12/18/13@UTC上午6:43:06
在DB中,我有一条记录,时间戳为1387365854(即)12/18/13@11:24:14am UTC
我使用coach DB map reduce view,并将时间戳值作为键传递给视图
但由于两个时间戳的时间不同,我无法获取此记录。是否有办法只匹配时间戳中的天数并过滤视图中的记录?检查。它是一个javascript日期库,用于解析、验证、操作和格式化日期。您可以使用它。它有更多的功能
从日历中,可以使用getTime()方法获取日期。此日期可用于上述API中的对象。或使用毫秒:
...
DateTime dt = new DateTime(millis);
int day = dt.getDayOfYear();
...
CouchDB的
startkey
和endkey
概念在这里非常有用
听起来你已经有了一个视图,但为了完整起见,我们假设它看起来是这样的:
{
"_id": "_design/mydesign",
"_rev": "1-088646f81629ce559b6d9772c6116113",
"views": {
"by_timestamp": {
"map": "function(doc) { emit(doc.timestamp, doc); }"
}
}
}
您已经有一个名为“timestamp”的数据库在本地运行,其中包含一些文档,如下所示:
$ curl localhost:5984/timestamps/_design/mydesign/_view/by_timestamp
要获取一系列文档,请添加startkey
和endkey
查询参数:
$ curl localhost:5984/timestamps/_design/mydesign/_view/by_timestamp\?startkey\=1387348986\&endkey\=1387365854
现在要获取这些参数,您需要明天开始和明天结束的时间戳。用java.util.Calendar
API和Joda时间来说明这一点
要了解更多关于查找多个视图的信息,请查看CouchDB的真棒。我必须使用Coach db map reduce view js来比较它们。所以我不能使用这个库。