JdbcRDD rdd = new org.apache.spark.rdd.JdbcRDD(
sparkConf,
()= > {
Class.forName ("com.mysql.jdbc.Driver")
sql.DriverManager.getConnection("jdbc:mysql://mysql.example.com/?user=batman&password=alfred")
},
"SELECT * FROM BOOKS WHERE ? <= KEY AND KEY <= ?",
0, 1000, 10,
row = > row.getString("BOOK_TITLE")
)
我尝试将上面的scala代码更改为java 8,但是会出现很多错误。
答案 0 :(得分:1)
之前我遇到过同样的问题,结果发现它是SQL参数的问题,基本上你需要使用sql之类的:
sql
select * from books limit ?, ?
JdbcRdd构造函数需要lowerBound
和upperBound
的两个参数。