抱歉问了一个简单的问题。我想将案例类传递给函数参数,并且我想在函数内部进一步使用它。到目前为止,我已经尝试过TypeTag
,ClassTag
但由于某种原因,我无法正确使用它,或者可能是我没有看正确的地方。
用例与此类似:
case class infoData(colA:Int,colB:String)
case class someOtherData(col1:String,col2:String,col3:Int)
def readCsv[T:???](path:String,passedCaseClass:???): Dataset[???] = {
sqlContext
.read
.option("header", "true")
.csv(path)
.as[passedCaseClass]
}
它将被称为这样的东西:
val infoDf = readCsv("/src/main/info.csv",infoData)
val otherDf = readCsv("/src/main/someOtherData.csv",someOtherData)