java中想获取前一天的开始和结束的两个毫秒数,请问分别怎样获取???????

2024-12-02 14:53:14
推荐回答(3个)
回答1:

方法一:
Date date=new Date();
String ss= ""+date.getTime();
Calendar c = Calendar.getInstance();
long l = c.getTimeInMillis();

方法二:
Date dt= new Date();
Long time= dt.getTime();
Long time2=System.currentTimeMillis();

这里提供了两种方式获取时间,但是如果想获取前一天的时间,用日历类实现即可。

回答2:

如果你要是做数据库查询条件的话,就可以直接用写一个自定义函数来获得当前日期的最大和最小时间:
CREATE FUNCTION f_GetThisDayBeginTime
(
@datetime datetime
)
RETURNS datetime
AS
BEGIN
RETURN convert(datetime,CONVERT(varchar(10),@datetime,120))
END

CREATE FUNCTION [dbo].[f_GetThisDayEndTime]
(
@datetime datetime
)
RETURNS datetime
AS
BEGIN
SET @datetime=CONVERT(VARCHAR(10),@datetime,120)+' 23:59:59.999'
RETURN(@datetime)
END

如果在java里面做的话:
Calendar cal1 = Calendar.getInstance();
cal1.set(2000, 7, 1, 0, 0, 0);
cal2.set(Calendar.MILLISECOND, 0);

Calendar cal1 = Calendar.getInstance();
cal1.set(2000, 7, 1, 23, 59, 59);
cal2.set(Calendar.MILLISECOND, 999);

回答3:

问楼主,主要想实现的功能是什么?这两个毫秒数返回到前台是没有意义的啊,你是想从数据库里读取前一天的所有数据嘛?