date:只有年月日 例:2021-10-10
datetime:年月日 时分秒 例:2021-10-10 12:12:12
2.在idea中查询数据库时间时,遇到的问题(主要针对的datetime) 数据库中存储时间为 2021-10-10 12:12:12第一种:查询后只显示 2021-10-10 没有显示时分秒,采用个体Timestamp()来获取
resultSet.getTimestamp("time")
也可以用 resultSet.getObject("time")
第二种:用Timestamp(),getObject() 有时会出现秒后有小数点
可以用Date工具中的格式化
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss") format.format(resultSet.getTimestamp("time"));就可以获取正确的时间
第三种:查询出来的时间相差8个小时
数据库时间与当地时间不匹配
先在cmd中使用 mysql -u 用户名 -p 密码来登录mysql
输入select now();
查看MySQL时间,看是否与当地时间匹配,
不匹配 对MySQL进行如下设置
show variables like '%time_zone%'; //查询当前时区
set global time_zone='+8:00'; //在标准时区上加+8小时,即东8区时间
匹配 说明不是MySQL的原因,那就是Idea的问题
通常我们在链接数据库时,属性文件中会这样设置
url=jdbc:mysql://localhost:3306/expressage?serverTimezone=UTC
问题就出在serverTimezone=UTC,我们可以改为
url=jdbc:mysql://localhost:3306/expressage?serverTimezone=Asia/Shanghai
问题就可以解决



