У меня есть демо в качестве объекта модели Scala.
и извлечение данных из кассандры и сохранение в кадре данных.
я хочу получить значение определенного столбца и сохранить его в объект модели scala.
Но не могу этого сделать, пожалуйста, помогите мне решить эту проблему.
class demo
{
var aid:java.lang.Long=null;
var a_name: String=null;
def getaid(): java.lang.Long = {
return aid;
}
def setaid( assetId: java.lang.Long) {
this.aid = assetId
}
def geta_name(): String = {
return a_name;
}
def seta_name( assetId: String) {
this.a_name = assetId
}
}
------------------------------------------------
object test_cassandra extends Context1{
def main(args : Array[String]) = {
println("Hello World")
// df_read1= dataframe data
// println(df_read1.show)
// println(df_read1.filter("id == 2").show)
df_read1.createOrReplaceTempView("so_tags")
var res= sparkSession.sql(s"select * from so_tags where id=$in ")
//i get the datatype of ab as String
//var ab= res.select("name").map(r => r.getString(0)).collect.toList.mkString
//below i get the datatype as Array[Any] but i need Long datatype to insert into model object
val Tp0= res.select(res.col("s_id").cast("Long")).rdd.map(r => r(0)).collect()
//For Below i get error like type mismatch; found : Array[Any] required: Long
demo.setaid(result.select("a_id"))
//how to cast Array[Any] to java.util.Date below
val Tp1= res.select(res.col("s_id").cast("Date")).rdd.map(r => r(0)).collect()