timeZone:GMT+8

因此需要根据时区将用户带入的参数转化为GMT+0的时间,然后去查询,在来回折腾后使用如下代码可以实现

public class TimeZoneLearn
{
private static final String TIME_FORAMT = "yyyyMMdd'T'HHmmss'Z'";

private static final String TIME_ZONE = "GMT+8";

private static final String TIME_ZONE_ZERO = "GMT+0";

@Test
public void test() throws ParseException
{
Long time = getTime(new Date());
SimpleDateFormat foraDateFormat = new SimpleDateFormat(TIME_FORAMT);
String result = foraDateFormat.format(new Date(time));
System.out.println(result);
}

public Long getTime(Date date) throws ParseException
{
SimpleDateFormat formater = new SimpleDateFormat(TIME_FORAMT);
formater.setTimeZone(TimeZone.getTimeZone(TIME_ZONE_ZERO));
String time = formater.format(date);

formater.setTimeZone(TimeZone.getTimeZone(TIME_ZONE));
Date parse = formater.parse(time);
return parse.getTime();
}
}
只需将用户的时间转换为Date对象,传入getTime方法中,TIME_ZONE常量使用用户给定的时区即可

在工作中遇到一个问题某一类数据在数据库中保存时,是根据伦敦时间保存的,也就是GMT+0其他业务在使用时,需要根据用户的输入时间去查询,用户的时间参数中带有时区例如:time:17:30timeZone:GMT+8因此需要根据时区将用户带入的参数转化为GMT+0的时间,然后去查询,在来回折腾后使用如下代码可以实现public class TimeZoneLearn{ ...
在使用Element UI的过程中,发现DateTimePicker选择器返回值是GMT格式的,但向后端发送的 时间 格式是标准 时间 格式,于是需要把DateTimePicker返回的值 转换 格式1.GMT转普通格式GMTToStr(time){ let date = new Date(time) let Str=date.getFullYear() + '-' + (date.ge
本地 时间 (locale time) 格林威治 时间 (Greenwich Mean Time GMT) 时间 协调 时间 (Universal Time Coordinated UTC) 时间 标准: (1)世界时 世界时是最早的 时间 标准。在1884年,国际上将1s确定为全年内每日平均长度的1/8.64×104。以此标准形成的 时间 系统,称为世界时(UT1)。 1972年国际上开始使用国际原子时标,从那以后,经过格林威治老天文台本初子午线的 时间 便被称为世界时(UT2),或称格林威治 时间 (GMT),UT2是对地球转速周期性差异进行校正后的世界时。 (2)原子时 以下是正确的做法 String date = "Mon Jul 13 11:48:10 CST 2020"; SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy",Locale.US);
普及一下什么是 格林尼治 时间 ? 世界时UT即 格林尼治 平太阳 时间 ,是指 格林尼治 所在地的标准 时间 ,也是表示地球自转速率的一种形式。以地球自转为基础的 时间 计量系统。地球自转的角度可用地方子午线相对于地球上的基本参考点的运动来度量。为了测量地球自转,人们在地球上选取了两个基本参考点:春分点(见分至点)和平太阳点,由此确定的 时间 分别称为恒星时和平太阳时。 林尼治是英国伦敦南郊原皇家 格林尼治 天文...
Unix 时间 戳最小单位是秒,开始 时间 为格林威治标准 时间 1970-01-01 00:00:00ConvertIntDateTime方法的基本思路是通过获取本地时区表示Unixk开始 时间 ,加上Unix 时间 值(即过去的秒数). ConvertDateTimeInt方法的基本思路是通过刻度数差,再把刻度数 转换 为秒数,当然要说明的是,我这里返回的是double类型,意义上并非是真正的Unix 时间 戳格式。要获取真正Unix 时间 戳的,只获取整数部分就可以了。 代码如下:dangranusing System;using System.Collections.Generic;using System.Text