三、hive--jdbc的使用
发表于:2025-02-04 作者:千家信息网编辑
千家信息网最后更新 2025年02月04日,一、jdbc连接mysql代码示例public class TestConnector { final static String USER = "root"; final static
千家信息网最后更新 2025年02月04日三、hive--jdbc的使用
一、jdbc连接mysql代码示例
public class TestConnector { final static String USER = "root"; final static String PASSWORD = "wjt86912572"; final static String URL = "jdbc:mysql://bigdata121:3306/metastore?useSSL=false&serverTimezone=UTC&useUnicode=true"; //这是 mysql.connector 在8.x版本中新驱动,com.mysql.jdbc.Driver在此版本中已弃用 final static String DRIVER = "com.mysql.cj.jdbc.Driver"; public static void main(String[] args) { Connection connection = null; Statement statement = null; ResultSet resultSet = null; try { //加载驱动类 Class.forName(DRIVER); //获取连接对象 connection = DriverManager.getConnection(URL, USER, PASSWORD); //获取连接的代理对象,用于传递sql请求 statement = connection.createStatement(); boolean result = statement.execute("show databases;"); resultSet = statement.getResultSet(); //resultSet.next()看返回的结果是否还有数据,如果有为true while (resultSet.next()) { //resultSet提供了很多获取的方法,getInt,getString等,具体用哪个,看字段的数据类型 System.out.println(resultSet.getString("Database")); } } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } finally { try { if (resultSet != null) {resultSet.close();} if (statement != null) {statement.close();} if (connection != null) {connection.close();} } catch (SQLException e) { e.printStackTrace(); } } }}
二、jdbc连接hive代码示例
首先添加maven依赖:
org.apache.hive hive-jdbc 1.2.1
代码:
package com.zy.hivejdbc;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.Statement;import org.junit.After;import org.junit.Before;import org.junit.Test;public class HiveJDBC { //这是hive的driver名字 private static String driverName="org.apache.hive.jdbc.HiveDriver"; //数据库连接字符串 private static String url = "jdbc:hive2://192.168.134.153:10000/mydb"; private static String user = "root"; private static String password="root"; private static Connection conn = null; private static Statement stmt = null; private static ResultSet rs = null; @Before public void init() throws Exception{ Class.forName(driverName); conn = DriverManager.getConnection(url, user, password); stmt = conn.createStatement(); } @Test public void createDatabase() throws Exception{ String sql = "create database hive_jdbc_test"; System.out.println("Running: " + sql); stmt.executeQuery(sql); } @Test public void dropDatabase() throws Exception { String sql = "drop database if exists hive_jdbc_test"; System.out.println("Running: " + sql); stmt.execute(sql); } @Test public void showDatabases() throws Exception { String sql = "show databases"; System.out.println("Running: " + sql + "\n"); rs = stmt.executeQuery(sql); while (rs.next()) { System.out.println(rs.getString(1) ); } } @Test public void createTable() throws Exception { String sql = "create table t2(id int ,name String) row format delimited fields terminated by ',';"; System.out.println("Running: " + sql); stmt.execute(sql); } @Test public void loadData() throws Exception { String filePath = "/usr/tmp/student"; String sql = "load data local inpath '" + filePath + "' overwrite into table t2"; System.out.println("Running: " + sql); stmt.execute(sql); } @Test public void selectData() throws Exception { String sql = "select * from t2"; System.out.println("Running: " + sql); rs = stmt.executeQuery(sql); System.out.println("编号" + "\t" + "姓名" ); while (rs.next()) { System.out.println(rs.getInt(1) + "\t" + rs.getString(2)); } } @Test public static void drop(Statement stmt) throws Exception { String dropSQL = "drop table t2"; boolean bool = stmt.execute(dropSQL); System.out.println("删除表是否成功:" + bool); } @After public void destory() throws Exception { if (rs != null) { rs.close(); } if (stmt != null) { stmt.close(); } if (conn != null) { conn.close(); } }}
基本使用和jdbc连接mysql类似。
代码
数据
对象
版本
示例
这是
驱动
成功
名字
姓名
字段
字符
字符串
数据库
方法
类型
结果
中新
代理
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
当前网络安全的现状
php服务器加速
wow双线服务器
办公软件开发平台
奉贤区营销软件开发机构整顿
数据库数据分析思路记录
江岸软件开发电话
自动控制系统软件开发
锡山区通用软件开发注意事项
熙宝网络技术上海有限公司
青岛易贸宝网络技术
数据库系统的结构和优点
网络安全专业考证吗
qt远程调用服务器
法意数据库答案
sql server数据库备份
斯科特日记软件开发
软件开发职称申报
网络安全电子板报作品一等奖
服务器防火墙添加ip白名单
银行网络安全书籍推荐
江浙沪民宿软件开发
湖南米尚网络技术有限公司
中国互联网与科技公司
科技民企与互联网巨头
手机网络安全软件排名
湖北上门软件开发方案
基因表达差异分析的数据库
一个网站服务器存储空间多大
万得数据库在哪查绿色金融数据