博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【Hive】JDBC操作
阅读量:5340 次
发布时间:2019-06-15

本文共 3385 字,大约阅读时间需要 11 分钟。

1 package com.java.hadoop.hive; 2   3 import java.sql.Connection; 4 import java.sql.DriverManager; 5 import java.sql.PreparedStatement; 6 import java.sql.ResultSet; 7 import java.sql.SQLException; 8 import java.sql.Statement; 9  10 import org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore.Processor.drop_database;11 import org.junit.Before;12 import org.junit.Test;13  14 public class TestHive {15     private Connection connection;16     private PreparedStatement ps;17     private ResultSet rs;18     //创建连接19     @Before20     public void getConnection() {21         try {22  23             Class.forName("org.apache.hive.jdbc.HiveDriver");24             connection = DriverManager.getConnection("jdbc:hive2://192.168.18.130:10000/", "root", "root");25             System.out.println(connection);26         } catch (ClassNotFoundException e) {27             e.printStackTrace();28         } catch (SQLException e) {29             e.printStackTrace();30         }31     }32     //关闭连接33     public void close() {34         try {35             if (rs != null) {36                 rs.close();37             }38             if (ps != null) {39                 ps.close();40             }41             if (connection != null) {42                 connection.close();43             }44         } catch (SQLException e) {45             e.printStackTrace();46         }47     }48  49     // 创建表50     @Test51     public void createTable() {52         String sql = "create table goods2(id int,name string) row format delimited fields terminated by '\t' ";53         try {54             ps = connection.prepareStatement(sql);55             ps.execute(sql);56             close();57         } catch (SQLException e) {58             e.printStackTrace();59         }60     }61     // 删除表62     @Test63     public void dropTable() {64         String sql = "drop table goods";65         try {66             ps = connection.prepareStatement(sql);67             ps.execute();68             close();69         } catch (SQLException e) {70             e.printStackTrace();71         }72     }73     //添加数据74     @Test75     public void insert() throws SQLException{76         String sql = "load data inpath '/goods.txt' into table goods";77         //记得先在文件系统中上传goods.txt78         ps = connection.prepareStatement(sql);79         ps.execute();80         close();81     }82     //查询83     @Test84     public void find() throws SQLException {85         String sql = "select * from goods ";86         ps = connection.prepareStatement(sql);87         rs = ps.executeQuery();88         while (rs.next()) {89             System.out.println(rs.getObject(1) + "---" + rs.getObject(2));90         }91         close();92     }93  94      95 }
1 String sql="show tables; select * from test_tb limit 10"; 2 List
command = new ArrayList
(); 3 4 command.add("hive"); 5 command.add("-e"); 6 command.add(sql); 7 8 List
results = new ArrayList
(); 9 ProcessBuilder hiveProcessBuilder = new ProcessBuilder(command);10 hiveProcess = hiveProcessBuilder.start();11 12 BufferedReader br = new BufferedReader(new InputStreamReader(13 hiveProcess.getInputStream()));14 String data = null;15 while ((data = br.readLine()) != null) {16 results.add(data);17 }

 

转载于:https://www.cnblogs.com/flydkPocketMagic/p/6298403.html

你可能感兴趣的文章
Linux 的 date 日期的使用
查看>>
Java变量类型,实例变量 与局部变量 静态变量
查看>>
mysql操作命令梳理(4)-中文乱码问题
查看>>
Python环境搭建(安装、验证与卸载)
查看>>
一个.NET通用JSON解析/构建类的实现(c#)
查看>>
Windows Phone开发(5):室内装修 转:http://blog.csdn.net/tcjiaan/article/details/7269014
查看>>
详谈js面向对象 javascript oop,持续更新
查看>>
关于这次软件以及pda终端的培训
查看>>
jQuery上传插件Uploadify 3.2在.NET下的详细例子
查看>>
如何辨别一个程序员的水平高低?是靠发量吗?
查看>>
新手村之循环!循环!循环!
查看>>
正则表达式的用法
查看>>
线程安全问题
查看>>
下拉刷新
查看>>
linux的子进程调用exec( )系列函数
查看>>
MSChart的研究
查看>>
C# 索引器
查看>>
MySQLdb & pymsql
查看>>
zju 2744 回文字符 hdu 1544
查看>>
delphi 内嵌汇编例子
查看>>