<%@ page language="java" contentType="text/html;charset=GBK" %>
<%@ page import ="java.util.*" %><%
  Date dnow=new Date();
  int dhours=dnow.getHours();;
  int dminutes=dnow.getMinutes();
  int dseconds=dnow.getSeconds();
  out.print("服务器时间:"+dhours+":"+dminutes+":"+dseconds);
%>
<script>
 var dnow=new Date();
 dhours=dnow.getHours();
 dminutes=dnow.getMinutes();
 dseconds=dnow.getSeconds();
 document.write("<br>浏览器时间:"+dhours+":"+dminutes+":"+dseconds);
</script>我设置我的计算机为服务器,用的是TOMCAT,按道理这两段程序的执行结果应该是一样的,都为系统当前时间吧,但是两者运行结果却不一样。
在IE内显示为:
服务器时间:5:3:47 
浏览器时间:13:3:47为啥时间不一致呢?
还请高手们指点一下!

解决方案 »

  1.   

    应该是 UTC GMT 之间的差异。
      

  2.   

    我测试了上面代码没有问题
    可能是你TOMCAT的问题
    你运行的时候,看看电脑上显示的时间和浏览器时间13:3:47是不是一样的啊?
    如果一样,则推断是你的TOMCAT(服务器)有问题
    服务器时间:5:3:47 
    浏览器时间:13:3:47
      

  3.   

    我的时区选择的是(GMT+08:00)北京,重庆,香港特别行政区,乌鲁木齐
      

  4.   

    问题已解决。就是与时区有关系。int dhours=dnow.getHours()+8;就行了。
    GMT(格林威治标准时间),北京时间是GMT+8。服务器时间显示的是GMT时间,而浏览器时间显示的是系统当前时间。你双击屏幕右下角的时间,在出现的对话框中选择“时区”,其中显示“(GMT+08:00)   北京、重庆、香港特别行政区、乌鲁木齐”,这就是GMT时间转化为当前系统格式的时间。
    大伙有些不用+8显示的时间是也是一致的,这可能是系统自动完成转化吧。
    大家有别的想法的一定要告诉我,让大家一起学习进步吧!
      

  5.   

    javascript是前台,jsp是后台!个人感觉当然有不同的时候。