Java 转换为UTC后的日期时间比较
我有一个场景,我想检查当前UTC时间是否在两个UTC日期的范围内 我们通过将UTC FromTime和ToTime从IST(用户时区)转换为创建时间表来获得UTC FromTime和ToTime 因此,当从客户端创建计划时,FromTime和ToTime将转换为UTC并发送到服务器并保存到数据库中,并且选定的DayID也存储在数据库中(sun->1,mon->2,…sat->7) 现在,无论何时请求到来,我们都必须为用户提供该特定时间间隔的访问权,就像我们必须在该特定时间/按照时间表向用户提供访问令牌一样 FromTime在客户端上显示给用户:00:00:00 在客户端上向用户显示的时间:23:59:59 IST到UTC是实际时间的-05:30:00,因此转换为- FromTime保存在数据库中(UTC):18:30:00 保存在数据库中的总时间(UTC):18:29:59 必须授予访问权限的日期也存储在数据库中。 但是,当IST转换为UTC时,dayId将作为前一天的日期保存在数据库中Java 转换为UTC后的日期时间比较,java,spring-boot,datetime,utc,Java,Spring Boot,Datetime,Utc,我有一个场景,我想检查当前UTC时间是否在两个UTC日期的范围内 我们通过将UTC FromTime和ToTime从IST(用户时区)转换为创建时间表来获得UTC FromTime和ToTime 因此,当从客户端创建计划时,FromTime和ToTime将转换为UTC并发送到服务器并保存到数据库中,并且选定的DayID也存储在数据库中(sun->1,mon->2,…sat->7) 现在,无论何时请求到来,我们都必须为用户提供该特定时间间隔的访问权,就像我们必须在该特定时间/按照时间表向用户提供访
Sr.No CurrentTime Duration FromTime ToTime FromDateTime DateWithDuration
1 19 Oct 20:00:00 23:59:59 18:30:00 18:29:59 19 Oct 18:30:00 20 Oct 18:29:59
2 20 Oct 02:00:00 23:59:59 18:30:00 18:29:59 20 Oct 18:30:00 21 Oct 18:29:59
由于无法比较FromTime和ToTime,因此只有日期具有当前日期,并且FromTime被添加到其中(FromDateTime)
因此,即使将FromDateTime和TodateTime添加到当前日期,CurrentTime也不会介于FromDateTime和TodateTime之间
以下是我们已经实现的伪代码:
if(CurrentTime.after(FromDateTime) && CurrentTime.before(DateWithDuration))
{
// Give Access Token
}
因此,在第二种情况下,这是失败的
此外,我们还必须检查当前日期是否是用户可以访问的日期,但数据库中存储的dayId将只包含UTC转换的日期,而不包含第二天的日期。这不是设计问题吗?您不应该在UTC中同时存储日期和时间吗?另外,客户是否会一直在印度?