我想将RDD
写入MYSQL
,RDD
包含java.util.Date
类型。
rdd.map(f=> FeatureData(
f.get("name").toString,
f.get("value").toString.toDouble,
f.get("time").asInstanceOf[Date],
f.get("period").toString))
.toDF()
在此RDD
中,time
的值类型的键也是java.util.Date
,它只是得到错误
[See nested exception: java.lang.UnsupportedOperationException: Schema for type java.util.Date is not supported
答案 0 :(得分:28)
首先将 java.util.Date 转换为 java.sql.Date 。然后使用 java.sql.Date 的数据运行您的sql。示例代码:
java.util.Date utilDate = new java.util.Date();
java.sql.Date sqlDate = new java.sql.Date(utilDate.getTime());
<强>更新强>
AndreHolzner建议使用java.sql.Timestamp
。我还没有尝试过,但通常Timestamp
优于Date
。