Я хочу отобразить таблицу Hive в объект java. Идея в том, чтобы сделать что-то похожее на Hibernate.
Например. У меня есть следующие столбцы таблицы:
| column_name1 | column_name2 |
и класс java для привязки:
class Example implements Serializable{
String columnName1;
String columnName2;
// constructor, getters and setters
}
Когда я пытаюсь:
SparkSessionManager.sc()
.sqlContext()
.sql("SELECT * FROM tableName" )
.as(Encoders.bean(Example.class));
Не работает Он пытается найти column_name1
в классе. Есть ли способ сопоставить переменную с именем столбца?
Я знаю обходной путь => Я могу положить в select select column_name1 As columnName1 ...
, и это работает, но это не красиво.
Я используя Spark версии 2.3.0
Спасибо!