客快物流大数据项目(七十四):Impala的java开发
【摘要】 Impala的java开发在实际工作当中,因为impala的查询比较快,所以可能有会使用到impala来做数据库查询的情况,可以通过java代码来进行操作impala的查询。一、下载impala jdbc依赖下载路径:Download Impala JDBC Connector 2.5.28因为cloudera属于商业公司性质,其提供的jar并不会出现在开源的maven仓库中,如果在企业中...
Impala的java开发
在实际工作当中,因为impala的查询比较快,所以可能有会使用到impala来做数据库查询的情况,可以通过java代码来进行操作impala的查询。
一、下载impala jdbc依赖
下载路径:
Download Impala JDBC Connector 2.5.28
因为cloudera属于商业公司性质,其提供的jar并不会出现在开源的maven仓库中,如果在企业中需要使用,请添加到企业maven私服。
二、创建java工程
创建普通java工程,把依赖添加工程。
三、导入pom依赖
<repositories>
<repository>
<id>cloudera</id>
<url>https://repository.cloudera.com/artifactory/cloudera-repos/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>org.apache.kudu</groupId>
<artifactId>kudu-client</artifactId>
<version>1.6.0-cdh5.14.0</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.25</version>
</dependency>
<!--impala的jdbc操作-->
<dependency>
<groupId>com.cloudera</groupId>
<artifactId>ImpalaJDBC41</artifactId>
<version>2.6.3</version>
</dependency>
<!--Caused by : ClassNotFound : thrift.protocol.TPro-->
<dependency>
<groupId>org.apache.thrift</groupId>
<artifactId>libfb303</artifactId>
<version>0.9.3</version>
<type>pom</type>
</dependency>
<!--Caused by : ClassNotFound : thrift.protocol.TPro-->
<dependency>
<groupId>org.apache.thrift</groupId>
<artifactId>libthrift</artifactId>
<version>0.9.3</version>
<type>pom</type>
</dependency>
</dependencies>
四、java api操作
package cn.lanson;
import java.sql.*;
/**
* 使用jdbc的方式操作impala
*/
public class ImpalaJdbcDemo {
public static void main(String[] args) {
Connection con = null;
ResultSet rs = null;
PreparedStatement ps = null;
String JDBC_DRIVER = "com.cloudera.impala.jdbc41.Driver";
String CONNECTION_URL = "jdbc:impala://node2:21050";
try
{
// 注册步骤
Class.forName(JDBC_DRIVER);
// 获取连接
con = (Connection) DriverManager.getConnection(CONNECTION_URL);
ps = con.prepareStatement("select * from t_person;");
rs = ps.executeQuery();
while (rs.next())
{
System.out.println(rs.getInt(1));
System.out.println(rs.getString(2));
System.out.println(rs.getInt(3));
System.out.println(rs.getString(4));
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
rs.close();
ps.close();
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)