今天遇到个问题 ,让我找半天错!!!!最后发现原来是版本问题 ,当然 换老版本的 mysql 这个就不是问题了
记得 以前可以直接用date类型的数据 存到sql里面
order.setOrdertime(new Date());
public void addOrderItem(Order order) throws SQLException {
//相orderItem表插入数据
QueryRunner runner = new QueryRunner(DataSourceUtils.getDataSource());
String sql = "insert into orderItem values(?)";
runner.update(sql,order.getOrdertime());
}
但是今天一直报错Incorrect datetime value: '' for column 'createTime' at row 1
数据错误.......查了很多资料
现在把解决办法贴出来
import java.util.Date;
import java.sql.Timestamp;
import java.text.SimpleDateFormat;
Date date=new Date();
//转换时间格式
SimpleDateFormat simpleDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
order.setOrdertime(Timestamp.valueOf(simpleDate.format(date)));
完美解决!!!!!!!!!!!!! Date数据可以直接存到 sql的 dateTime里面了
问题分析: 没什么 版本问题.....用的新版本的 mysql 重新定义了DateTime类型的sql