转载自: https://blog.csdn.net/liqinghuiyx/article/details/53333284

起因:在本地开发的WEB项目部署到Linux 下后,存入数据库的时间少了8个小时。

首先想到的肯定是时区问题

linux 下直接 执行 date 命令
Fri Nov 25 11:28:18 CST 2016

 

时间正常。然后简单java类,打印new Date时间

public class TestDate {
public static void main(String[] args) throws Exception {
System.out.println(new Date());
}
} ------运行结果 Fri Nov 25 11:29:31 CST 2016

 

确定linux,JDK 时间正常

但是Tomcat下 jsp打印时间,少了8个小时

<%@ include file="/WEB-INF/views/include/taglibs.jsp"%>
<%@ page language="java" pageEncoding="utf-8"%>
<jsp:useBean id="now" class="java.util.Date" />
${now}
Fri Nov 25 04:43:51 GMT 2016

 

明显jsp中打印的时间时区为GMT

CET,UTC,GMT,CST几种常见时间概述与关系

已经过以上测试,可能是Tomcat问题,那么修改tomcat 启动参数 
http://free.yes81.net/yes81/view-13576.html

按照以上方式修改后,tomcat内Date时间正常

过程中还发现一个问题我的系统中

/etc/sysconfig/clock 文件只有一行(文件说明

ZONE="Asia/Shanghai"

并没有这两行。

UTC=false
ARC=false

加上后,tomcat不修改时间也是正常。

后经过搜索返现一篇博文 
http://blog.tangjianwei.com/2009/06/04/the-problem-of-tomcat-timezone/ 
启动提到: 
tomcat读取的可能是硬件时间(BIOS时间) 
而 
UTC=false 
UTC – 指定BIOS中保存的时间是否是GMT/UTC时间,true表示BIOS里面保存的时间是UTC时间,false表示BIOS里面保存的时间是本地时间。

所以判断 可能为之前没有设置 /etc/sysconfig/clock 中 UTC=false,倒置tomcat读取时区出现问题倒置。

到此问题基本解决。

其他相关博文 
http://escode.blog.51cto.com/2025829/1147439

Linux java Tomcat 项目中 new Date 获取时间 8小时 时差的更多相关文章

  1. JAVA WEB项目中各种路径的获取

    JAVA WEB项目中各种路径的获取 标签: java webpath文件路径 2014-02-14 15:04 1746人阅读 评论(0) 收藏 举报  分类: JAVA开发(41)  1.可以在s ...

  2. linux 下用renameTo方法修改java web项目中文件夹名称问题

    经测试,在Linux环境中安装tomcat,然后启动其中的项目,在项目中使用java.io.File.renameTo(File dest)方法可行. 之前在本地运行代码可以修改,然后传到Linux服 ...

  3. java项目中的路径获取,request

    java web项目中获取项目根路径(tomcat可运行的web源码的路径)的方式: 分为两种情况: 情况一: 在eclipse.inde等开发工具中获取(注:如下代码所在的类必须是控制层所在包下的类 ...

  4. Linux下Tomcat项目启动报错

    Linux下Tomcat项目启动报错 org.springframework.beans.factory.CannotLoadBeanClassException: Error loading cla ...

  5. linux系统tomcat项目部署和tomcat访问日志

    一.只用ip地址访问 先把端口号改成80,然后用 <Host name="localhost"  appBase="webapps"    137     ...

  6. 对Java Web项目中路径的理解

    第一个:文件分隔符 坑比Window.window分隔符 用\;unix采用/.于是用File.separator来跨平台 请注意:这是文件路径.在File f = new File(“c:\\hah ...

  7. java web 项目中 简单定时器实现 Timer

    java web 项目中 简单定时器实现 Timer 标签: Java定时器 2016-01-14 17:28 7070人阅读 评论(0) 收藏 举报  分类: JAVA(24)  版权声明:本文为博 ...

  8. Java Web项目中连接Access数据库的配置方法

    本文是对前几天的"JDBC连接Access数据库的几种方式"这篇的升级.因为在做一些小项目的时候遇到的问题,因此才决定写这篇博客的.昨天已经将博客公布了.可是后来经过一些验证有点问 ...

  9. Java Web项目中缺少Java EE 6 Libraries怎么添加

    Java Web项目中缺少Java EE 6 Libraries怎么添加 具体步骤如下: 1.项目名称上点击鼠标右键,选择"Build Path-->Configure Build P ...

随机推荐

  1. storm深入研究

    著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处.作者:He Ransom链接:http://www.zhihu.com/question/23441639/answer/28075 ...

  2. Fast-RCNN

    后面框架回归和分类都放到了神经网络里 测试速度提升100倍 训练10

  3. 详解Git工作区、暂存区、历史记录区以及git reset、git revert、git checkout等撤销命令的区别

    http://josh-persistence.iteye.com/blog/2215214

  4. ubuntu压缩

    .tar解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)-------------------------- ...

  5. Redis生成Id主键的工具

    public class PrimaryKeyGenerator { private static readonly NedisClient client = new NedisClient(GetR ...

  6. swift - UIScrollView 的使用

    本节详细介绍scrollview的用法 ———————————————————————————————————— UIScrollView 是一个能够滚动的视图控件,可以用来展示大量的内容,并且可以通 ...

  7. Oracle-未能加载文件或程序集“oracle.dataaccess”或它的某一个依赖项。试图加载格式不正确的程序。

    未能加载文件或程序集“oracle.dataaccess”或它的某一个依赖项.试图加载格式不正确的程序. 说明: 执行当前 Web 请求期间,出现未经处理的异常.请检查堆栈跟踪信息,以了解有关该错误以 ...

  8. python2.0_s12_day10_rabbitMQ使用介绍

    RabbitMQ RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统.他遵循Mozilla Public License开源协议. MQ全称为Message Queue, 消息队列(M ...

  9. 电脑CPU的发展史(转)

    Intel于1971年发售了自己的第一款4位微处理器,设计与ROM 4001,RAM 4002和移位寄存器4003配合工作.其中4004自身负责运算,其它部分则是使CPU正常工作的重要组成.大部分40 ...

  10. 为什么在js当中没有var就是全局变量

    因为,在js中,如果某个变量没有var声明,会自动移到上一层作用域中去找这个变量的声明语句,如果找到,就是用,如果没找到, 就继续向上寻找,一直查找到全局作用域为止,如果全局中仍然没有这个变量的声明语 ...