+1 امتیاز
قبل در برنامه نویسی توسط (17 امتیاز)
ویرایش شده قبل توسط

در یک query  هدف جستجو اطلاعات براساس زمان ثبت رکورد  براساس تاریخ و ساعت بوده است.

کاری که شده است به این صورت بوده است

createTime >=startTime and createtiem>=EndTime

این در حالتی که تاریخ روز مورد جستجو باشد مشکلی ندارد

ولی در زمینه ست کردن "ساعت" درست کار نمی کند.

کدی که با آن پارامترها را تنظیم و query را اجرا شده است:

Date startNow = new Date();
Date endNow = new Date();

startNow.setHours(10);
startNow.setMinutes(0);
startNow.setSeconds(0);
		
endNow.setHours(12);
endNow.setMinutes(60);
endNow.setSeconds(60);

param.getFilter().put(Filters.GREATER_OR_EQUAL + BookletPrintEntity.PROP_CREATION_TIME,startNow);
		param.getFilter().put(Filters.LESS_OR_EQUAL + BookletPrintEntity.PROP_CREATION_TIME,endNow);

DataPage<BookletPrintEntity> bookletSearchResults = manager.search(param);
قبل توسط (1.2هزار امتیاز)
+1
لطفاً کدی که با آن پارامترها را تنظیم و query را اجرا کرده اید در متن سوال بگذارید.
قبل توسط (17 امتیاز)
هدف بدست آوردن رکوردهایی که بین ساعت 10 تا 12 صبح ثبت شده می باشد .

1 پاسخ

+1 امتیاز
قبل توسط (1.2هزار امتیاز)
ویرایش شده قبل توسط

متدهایی از کلاس java.util.Date که برای تنظیم ساعت استفاده کرده اید deprecate شده اند. ضمناً حداکثر مقدار دقیقه و ثانیه 59 است نه 60. به شکل زیر عمل بفرمایید:

Date date = new Date();
Calendar cal = Calendar.getInstance();
cal.setTime(date);
cal.set(Calendar.HOUR_OF_DAY, 12);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MILLISECOND, 0);
date = cal.getTime();

سوالات مشابه

+1 امتیاز
1 پاسخ 484 بازدید
+1 امتیاز
1 پاسخ 568 بازدید
+1 امتیاز
1 پاسخ 595 بازدید
+1 امتیاز
1 پاسخ 387 بازدید
+1 امتیاز
0 پاسخ 413 بازدید
+1 امتیاز
1 پاسخ 422 بازدید
+1 امتیاز
1 پاسخ 931 بازدید
+1 امتیاز
1 پاسخ 384 بازدید
...