2017-06-24 7 views
0

私は春に基づいているJava Webプロジェクトを開発しています。そして、Spring JdbcTemplateを使ってハイブに接続したいと思っています。することはできません:;ネストされた例外は org.apache.commons.dbcp.SQLNestedExceptionある は、JDBC接続を取得できませんでした:私は私のサービスをテストしたときしかし、それは、このエラーメッセージSpring JdbcTemplateはハイブに接続できますか?

」org.springframework.jdbc.CannotGetJdbcConnectionExceptionが出てきましたJDBCドライバ のクラス 'org.apache.hadoop.hive.jdbc.HiveDrive'をロードしてください。

プロジェクトはidea mavenによって作成されますが、ハイブjdbcドライバはローカルのjar(WEB-INF/libにあります)です。したがって、私のプロジェクトがまだローカルjdbcドライバjarを認識できないという問題によって、またはJdbcTemplateがハイブ接続をサポートしていないためにエラーが発生しているかどうかはわかりません。誰かが私にそれを理解するのを助けることができる?前もって感謝します。ここで

は私のコードです:

JdbcTemplate定義:

<bean id="dataSourceTDW" class="org.apache.commons.dbcp.BasicDataSource" 
      destroy-method="close"> 
     <property name="driverClassName" value="${driver}" /> 
     <property name="url" value="${url}" /> 
     <property name="username" value="${username}" /> 
     <property name="password" value="${password}" /> 
    </bean> 

    <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> 
     <property name="dataSource" ref="dataSourceTDW"/> 
    </bean> 

DAOクラス:

@Repository(value = "tdwQueryImp") 
public class QueryDAOImp implements QueryDAO { 
    @Autowired 
    JdbcTemplate jdbcTemplate; 

    public List<Map<String,Object>> execute(String sql) { 
     return jdbcTemplate.queryForList(sql); 
    } 
} 
+0

org.apache.hive.jdbc.HiveDriverてみたのですか? https://stackoverflow.com/questions/31957914/も参照してください。 – Ritesh

答えて

-1
+0

答えにありません。この投稿には情報は含まれておらず、リンクのみがあり、リンクは時間とともに壊れる傾向があります。 –

0

私はorg.apache.commons.dbcp.BasicDataSourceからorg.springframework.jdbc.datasource.SimpleDriverDataSourceにデータソースのクラスを変更することで、私の問題を解決しました。ここで

は、豆の設定です:あなたは

<bean id="hiveDriver" class="org.apache.hadoop.hive.jdbc.HiveDriver"/> 

<bean id="dataSourceTDW" class="org.springframework.jdbc.datasource.SimpleDriverDataSource"> 
    <constructor-arg name="driver" ref="hiveDriver"/> 
    <constructor-arg name="url" value="${url}"/> 
    <constructor-arg name="username" value="${username}" /> 
    <constructor-arg name="password" value="${password}" /> 
</bean> 

<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> 
    <property name="dataSource" ref="dataSourceTDW"/> 
</bean> 
関連する問題