您好,登錄后才能下訂單哦!
這篇文章主要講解了“java調用zookeeper模式報錯問題怎么處理”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“java調用zookeeper模式報錯問題怎么處理”吧!
1.調用方式 zookeeper方式調用
/** *@Title TestHive.java *@description TODO *@time 2020年12月24日 下午1:27:38 *@version 1.0 **/ package org.thedatamanager.dataCollectionService; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; /** * */ public class TestHive { /** * @Title: main * @Description: * @param args * @return void * @date 2020年12月24日下午1:27:38 */ public static void main(String[] args) { try { Class.forName("org.apache.hive.jdbc.HiveDriver"); //Connection conn = DriverManager.getConnection("jdbc:hive2://10.60.127.131:10000", "hive", ""); // Connection conn = DriverManager.getConnection("jdbc:hive2://192.168.1.135:10000/default;auth=noSasl", "hive", "hive"); Connection conn = DriverManager.getConnection("jdbc:hive2://192.168.1.134:2181,192.168.1.135:2181,192.168.1.136:2181/default;serviceDiscoveryMode=zooKeeper;zooKeeperNamespace=hiveserver2", "root", "root"); // default 為 hive的數據庫名 Statement stmt = conn.createStatement(); String querySQL="show databases"; ResultSet res = stmt.executeQuery(querySQL); while (res.next()) { System.out.println(res.getString(1)); } } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } } }
報錯class undefined找不到curator connection
2.問題
解決方法:,將低版本的hive-jdbc中curator-client低版本的移除 引入高版本的4.0.1
<!-- hive 調用需要的包 --> <dependency> <groupId>org.apache.hive</groupId> <artifactId>hive-jdbc</artifactId> <version>3.1.0</version> <exclusions> <exclusion> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> </exclusion> <exclusion> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-slf4j-impl</artifactId> </exclusion> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> </exclusion> <exclusion> <groupId>org.eclipse.jetty</groupId> <artifactId>*</artifactId> </exclusion> <exclusion> <groupId>org.eclipse.jetty.orbit</groupId> <artifactId>*</artifactId> </exclusion> <exclusion> <groupId>org.eclipse.jetty.aggregate</groupId> <artifactId>*</artifactId> </exclusion> <exclusion> <groupId>tomcat</groupId> <artifactId>*</artifactId> </exclusion> <exclusion> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> </exclusion> <exclusion> <groupId>org.mortbay.jetty</groupId> <artifactId>*</artifactId> </exclusion> <exclusion> <groupId>org.apache.curator</groupId> <artifactId>curator-client</artifactId> </exclusion> </exclusions> </dependency> <!-- 找不到class undefined問題找不到 curator connection,將低版本的hive-jdbc中curator-client低版本的移除 引入高版本的4.0.1 --> <dependency> <groupId>org.apache.curator</groupId> <artifactId>curator-client</artifactId> <version>4.0.1</version> </dependency>
感謝各位的閱讀,以上就是“java調用zookeeper模式報錯問題怎么處理”的內容了,經過本文的學習后,相信大家對java調用zookeeper模式報錯問題怎么處理這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。