java.sql.SQLException: Cannot set create_time: incompatible types.

原因


MySQL中的create_time类型为datetime

Java中create_time类型为date

二者类型不匹配!!!

解决办法


java类型与MySQL类型要对应

方法一

将MySQL中的create_time类型由datetime改为date

缺陷:只显示年-月-日,不显示具体时-分-秒

方法二

将java的create_time类型由date改为timestamp类型

这样就可以成功从数据库中获取时间,解决异常

那该timestamp类型如何获取当前的时间,保存到数据库中呢?

java获取当前时间戳:年-月- 日 时:分:秒:毫秒

Timestamp timestamp = newTimestamp(System.currentTimeMillis());

这样问题就都解决啦~

补充

timestamp的时间格式中有毫秒,那如何将它的格式改成自己想要的时间格式呢?

在get()方法中,时间格式化

public String getCreateTime() {
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        return simpleDateFormat.format(this.createTime);
    }

同时附上java与mysql类型对应的图片

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值