操作数据库存入创建时间的问题

来源:7-2 项目作业

慕标3356598

2020-04-10 02:33:05

我在Message类定义的时候createTime属性定义的是Date类。在完成添加留言功能时,需要获取用户添加的留言信息并将其封装:

Message message = new Message();
message.setUserId(user.getId());
message.setUsername(user.getUsername());
message.setTitle(title);
message.setContent(content);
// 获取用户添加留言的当前时间
Date date = new Date();
message.setCreateTime(date);

在完成Dao层的add方法的设置参数时,以下语句报错了:

pstmt.setDate(5, message.getCreateTime());

报错说明:The method setDate(int, java.sql.Date) in the type PreparedStatement is not applicable for the arguments (int, java.util.Date)

请问怎么解决?

写回答

1回答

好帮手慕阿满

2020-04-10

同学你好,message.getCreateTime()获取的时间是java.util.Date类型,而setDate()方法要求第二个参数是java.sql.Date()类型,类型不匹配,所以报错。

这里建议同学可以获取当前系统时间,将其转换为java.sql.Date类型,如:

http://img.mukewang.com/climg/5e90124e095acfa508340091.jpg

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

0

0 学习 · 8016 问题

查看课程