我的问题是后台用System.currentTimeMillis()传给前端一个时间戳,但是前端解析的时间跟系统时间不一致。怀疑是时区的问题。然后把系统的时区修改为东八区就可以了。果真是前端用东八区的时区来解析的得到时间的。问题就解决了~
下面是转载的,我找到问题出现的原因。
在Y.Daniel Liang《Java语言程序设计》第八版的第二章中。介绍了显示系统的时间的方法:用System.currentTimeMillis()返回一个UNIX时间戳以来的毫秒数。
由于返回的值是以毫秒为单位的,所以,要我们进行计算是几点几时几分。然而我看了一眼算法,写出的程序,返回的值是错误的。
package Demo.book;
public class ShowCurrentTime {
/**
* @显示当前时间
* @2014.9.3
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//获得系统的时间,单位为毫秒,转换为妙
long totalMilliSeconds = System.currentTimeMillis();
long totalSeconds = totalMilliSeconds / 1000;
//求出现在的秒
long currentSecond = totalSeconds % 60;
//求出现在的分
long totalMinutes = totalSeconds / 60;
long currentMinute = totalMinutes % 60;
//求出现在的小时
long totalHour = totalMinutes / 60;
long currentHour = totalH