Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

java.util.Date is not supported

I want to write RDD to MYSQL, which RDD contains java.util.Date type.

rdd.map(f=> FeatureData(
           f.get("name").toString, 
           f.get("value").toString.toDouble, 
           f.get("time").asInstanceOf[Date],
           f.get("period").toString))
    .toDF()

In this RDD the key of time's value type is also java.util.Date and it just get the error of [See nested exception: java.lang.UnsupportedOperationException: Schema for type java.util.Date is not supported

like image 793
yeyimilk Avatar asked Jul 09 '15 08:07

yeyimilk


1 Answers

At first convert java.util.Date to java.sql.Date. Then run your sql with the data of java.sql.Date. Sample code :

java.util.Date utilDate = new java.util.Date();
java.sql.Date sqlDate = new java.sql.Date(utilDate.getTime());

Update: AndreHolzner suggested to use java.sql.Timestamp. I did not try it yet, but generally Timestamp is better than Date.

like image 183
Saqib Rezwan Avatar answered Oct 19 '22 05:10

Saqib Rezwan