1、问题报错

2、原因

由于没过的夏令营导致的报错。
夏令时:
由于美国有夏令时,CST非夏令时对应 UTC-06:00,夏令时对应 UTC-05:00 。
美国的夏令时,从每年3月第2个星期天凌晨开始,到每年11月第1个星期天凌晨结束。
以2020年为例:
夏令时开始时间调整前:2020年03月08日星期日 02:00:00,时间向前拨一小时.
调整后:2020年03月08日星期日 03:00:00

夏令时结束时间调整前:2020年11月01日星期日 02:00:00,时间往回拨一小时.
调整后:2020年11月01日星期日 01:00:00

这意味这:CST没有2020-03-08 02:00:00~2020-03-08 03:00:00 这个区间的时间。会有两个 2020-11-01 01:00:00~2020-11-01 02:00:00区间的时间。

例:
//相差14小时
Calendar calendar = Calendar.getInstance(TimeZone.getTimeZone("CST"), Locale.US);
calendar.setLenient(false);
//2020-03-08 01:02:00
calendar.set(2020, 2, 8, 1, 2, 0);Date s = new Date(calendar.getTimeInMillis());
SimpleDateFormat f1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(f1.format(s));//2020-03-08 15:02:00
//2020-03-08 01:02:00 非夏令时间,于北京时间相差14小时。例:
//相差13小时
Calendar calendar = Calendar.getInstance(TimeZone.getTimeZone("CST"), Locale.US);
calendar.setLenient(false);
//2020-03-08 03:02:00
calendar.set(2020, 2, 8, 3, 2, 0);Date s = new Date(calendar.getTimeInMillis());
SimpleDateFormat f1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(f1.format(s));//2020-03-08 16:02:00
//2020-03-08 03:02:00 夏令时间,于北京时间相差13小时。例:
//抛出 Exception: HOUR_OF_DAY: 2 -> 3
Calendar calendar = Calendar.getInstance(TimeZone.getTimeZone("CST"), Locale.US);
calendar.setLenient(false);//严格数据校验
//2020-03-08 02:02:00
calendar.set(2020, 2, 8, 2, 2, 0);Date s = new Date(calendar.getTimeInMillis());//抛出异常:java.lang.IllegalArgumentException: HOUR_OF_DAY: 2 -> 3
SimpleDateFormat f1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(f1.format(s));
//2020-03-08 02:02:00 在CST 时区中是一个不存在的时间,因此出现了异常。

3、解决方案

  1. mysql-connector-java.jar版本6.x、8.x降级为5.1.x
  2. 对于高版本jdbc,连接串强制指定时区参数:serverTimezone=GMT%2B8(一般采用这种方式)
  3. 对于高版本jdbc,mysql数据库强制修改time_zone为“+8:00”,而非“SYSTEM

java.sql.SQLException: HOUR_OF_DAY: 2 -> 3相关推荐

  1. nested exception is java.sql.SQLException: HOUR_OF_DAY: 0 -> 1

    Cause: java.sql.SQLException: HOUR_OF_DAY: 0 -> 1 HOUR_OF_DAY: 0 -> 1; nested exception is jav ...

  2. Java 程序读取Mysql数据库时间信息与真实时间相差 13、14 小时、SQLException: HOUR_OF_DAY: 2 -> 3

    CST时区引起的异常: Java 程序读取Mysql数据库时间信息,与真实时间相差 13.14 小时 java.sql.SQLException: HOUR_OF_DAY: 2 -> 3 原因: ...

  3. java.sql.SQLException: Parameter index out of range (5 > number of parameters, which is 4).

    问题描述: 启动项目调接口的时候控制台报错 Cause: java.sql.SQLException: Parameter index out of range (5 > number of p ...

  4. Cause: java.sql.SQLException: Parameter index out of range (4 > number of parameters, which is 3).

    Cause: java.sql.SQLException: Parameter index out of range (4 > number of parameters, which is 3) ...

  5. mysql5.5异常: java.sql.SQLException: Packet for query is too large (1055975 > 1048576).

    mysql5.5异常: java.sql.SQLException: Packet for query is too large (1055975 > 1048576). mysql5.5异常: ...

  6. php column not found,java.sql.SQLException: Column 'cloumn name' not found.

    Hi, My system configuration: Mandrake 9.0 + Tomcat 4.1.24 + MySQL 4.0.12. + Apache [問題] 我有一隻Servlet ...

  7. java.sql.SQLException: Data truncation: Truncated incorrect DOUBLE value

    mysql 报这个异常:java.sql.SQLException: Data truncation: Truncated incorrect DOUBLE value update 表名 set c ...

  8. HikariPool使用MySQL/MariaDB数据库报错解决:java.sql.SQLException: Access denied for user 'root'@'localhost' (u

    在使用HikariPool连接到我的数据库时报错如下,完整的报错放在最后: 2019-06-25 20:24:26.048 ERROR 18204 --- [nio-8080-exec-9] com. ...

  9. java.sql.SQLException: Lock wait timeout exceeded

    2019独角兽企业重金招聘Python工程师标准>>> 先说我我的解决方法:找到锁住的线程然后kill掉. mysql> kill thr_id; 下面简单分析一下到底应该ki ...

最新文章

  1. pytorch Tensor操作(二)
  2. Lua_第17 章 数学库
  3. Web服務器的配置方法
  4. linux 离线安装中文字库,centos7 离线安装字体fontconfig
  5. Office 365系列之八:配置和体验Exchange和Lync
  6. Netty学习总结(3)——Netty百万级推送服务
  7. Mac电脑下配置maven环境变量
  8. vue的$message(提示框换行)
  9. 分布式室内空气质量监测系统设计
  10. EOS的trace_api_plugin插件测试
  11. python爬取5442网站图片
  12. Juc_无juc情况
  13. 短视频抖音账号矩阵seo优化系统技术代开发
  14. 装配图中齿轮的画法_机械制图教程(8.2)装配图的规定画法和特殊画法
  15. 第 16 章 string类和标准模板库
  16. Opencv3.0--第二篇【双阈值二值化图像】
  17. HTTP请求/响应报文头部结构
  18. 什么是中间件,中间件有什么作用
  19. 月入五万的码农,抢了文科生的饭碗
  20. 【SCCB接口协议简介(适用于OV系列摄像头)】

热门文章

  1. 军品研制阶段划分以及各阶段工作
  2. WSO2服务端部署常见的问题以及解决方案
  3. 【CSS面试题】—CSS实现三角形
  4. user administration
  5. IGMP协议兼容性实验报告
  6. onCreate(savedInstanceState)
  7. python 计算一年内的所有周的具体日期
  8. Java 适配器模式详解
  9. c语言梅森素数求完数,梅森素数与完全数.doc
  10. Imatest图像处理软件 Imatest Master