ODPS JDBC链接方式

2024-05-26 18:08
文章标签 jdbc 方式 链接 odps

本文主要是介绍ODPS JDBC链接方式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

这里写目录标题

  • MAVEN
  • 正文

MAVEN

<dependency><groupId>com.aliyun.odps</groupId><artifactId>odps-jdbc</artifactId><version>3.0.1</version></dependency>

正文

特别注意:
url

jdbc:odps:http://service.cn.maxcompute.aliyun.com/api

user ——> access_id;
这里不能再写user了,得写access_id不然系统不认

config.put("access_id", "LTAI*********SPbd");

password——>access_key;
这里不能再写password了,得写access_key不然系统不认

config.put("access_key", "AC5K*******************GdnVk");

database——>project_name
这里不能再写database了,得写project_name不然系统不认

config.put("project_name", "market_***_analyze");

import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;/*** Created by zlh_fulin on 2018/5/14.*/
public class OdpsTest {private static String driverName = "com.aliyun.odps.jdbc.OdpsDriver";public static void main(String[] args) throws SQLException {try {Class.forName(driverName);} catch (ClassNotFoundException e) {e.printStackTrace();System.exit(1);}Properties config = new Properties();config.put("access_id", "LTAI*********SPbd");config.put("access_key", "AC5K*******************GdnVk");config.put("project_name", "market_***_analyze");Connection conn = DriverManager.getConnection("jdbc:odps:http://service.cn.maxcompute.aliyun.com/api", config);ResultSet rs;// 建表Statement stmt = conn.createStatement();String tableName = "market_repay_report";
//        stmt.execute("drop table if exists " + tableName);
//        stmt.execute("create table " + tableName + " (key int, value string)");// metadata
//        DatabaseMetaData metaData = conn.getMetaData();
//        System.out.println("product = " + metaData.getDatabaseProductName());
//        System.out.println("jdbc version = " + metaData.getDriverMajorVersion() + ", "
//                + metaData.getDriverMinorVersion());
//        rs = metaData.getTables(null, null, tableName, null);
//        while (rs.next()) {
//            String name = rs.getString(3);
//            System.out.println("inspecting table: " + name);
//            ResultSet rs2 = metaData.getColumns(null, null, name, null);
//            while (rs2.next()) {
//                System.out.println(rs2.getString("COLUMN_NAME") + "\t"
//                        + rs2.getString("TYPE_NAME") + "(" + rs2.getInt("DATA_TYPE") + ")");
//            }
//        }String sql;// 插
//        sql = String.format("insert into table %s select 24 key, ‘hours’ value from (select count(1) from %s) a", tableName, tableName);
//        System.out.println("Running: " + sql);
//        int count = stmt.executeUpdate(sql);
//        System.out.println("updated records: " + count);//查sql = "select * from " + tableName + " where pt=to_char(dateadd(from_unixtime(unix_timestamp()), -1, 'dd'), 'yyyymmdd')";System.out.println("Running: " + sql);rs = stmt.executeQuery(sql);while (rs.next()) {System.out.println(String.valueOf(rs.getInt(1)) + "\t" + rs.getString(2));}if (rs !=null)  rs.close();if (stmt != null)  stmt.close();if (conn!=null)  conn.close();}
}

这篇关于ODPS JDBC链接方式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/1005199

相关文章

JAVA封装多线程实现的方式及原理

《JAVA封装多线程实现的方式及原理》:本文主要介绍Java中封装多线程的原理和常见方式,通过封装可以简化多线程的使用,提高安全性,并增强代码的可维护性和可扩展性,需要的朋友可以参考下... 目录前言一、封装的目标二、常见的封装方式及原理总结前言在 Java 中,封装多线程的原理主要围绕着将多线程相关的操

Golang中拼接字符串的6种方式性能对比

《Golang中拼接字符串的6种方式性能对比》golang的string类型是不可修改的,对于拼接字符串来说,本质上还是创建一个新的对象将数据放进去,主要有6种拼接方式,下面小编就来为大家详细讲讲吧... 目录拼接方式介绍性能对比测试代码测试结果源码分析golang的string类型是不可修改的,对于拼接字

Linux下修改hostname的三种实现方式

《Linux下修改hostname的三种实现方式》:本文主要介绍Linux下修改hostname的三种实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux下修改ho编程stname三种方式方法1:修改配置文件方法2:hFvEWEostnamectl命

SpringBoot接收JSON类型的参数方式

《SpringBoot接收JSON类型的参数方式》:本文主要介绍SpringBoot接收JSON类型的参数方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、jsON二、代码准备三、Apifox操作总结一、JSON在学习前端技术时,我们有讲到过JSON,而在

Spring Security注解方式权限控制过程

《SpringSecurity注解方式权限控制过程》:本文主要介绍SpringSecurity注解方式权限控制过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、摘要二、实现步骤2.1 在配置类中添加权限注解的支持2.2 创建Controller类2.3 Us

SpringBoot操作MaxComputer方式(保姆级教程)

《SpringBoot操作MaxComputer方式(保姆级教程)》:本文主要介绍SpringBoot操作MaxComputer方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的... 目录引言uqNqjoe一、引入依赖二、配置文件 application.properties(信息用自己

Java中数组转换为列表的两种实现方式(超简单)

《Java中数组转换为列表的两种实现方式(超简单)》本文介绍了在Java中将数组转换为列表的两种常见方法使用Arrays.asList和Java8的StreamAPI,Arrays.asList方法简... 目录1. 使用Java Collections框架(Arrays.asList)1.1 示例代码1.

java两个List的交集,并集方式

《java两个List的交集,并集方式》文章主要介绍了Java中两个List的交集和并集的处理方法,推荐使用Apache的CollectionUtils工具类,因为它简单且不会改变原有集合,同时,文章... 目录Java两个List的交集,并集方法一方法二方法三总结java两个List的交集,并集方法一

Python中如何控制小数点精度与对齐方式

《Python中如何控制小数点精度与对齐方式》在Python编程中,数据输出格式化是一个常见的需求,尤其是在涉及到小数点精度和对齐方式时,下面小编就来为大家介绍一下如何在Python中实现这些功能吧... 目录一、控制小数点精度1. 使用 round() 函数2. 使用字符串格式化二、控制对齐方式1. 使用

Nginx配置系统服务&设置环境变量方式

《Nginx配置系统服务&设置环境变量方式》本文介绍了如何将Nginx配置为系统服务并设置环境变量,以便更方便地对Nginx进行操作,通过配置系统服务,可以使用系统命令来启动、停止或重新加载Nginx... 目录1.Nginx操作问题2.配置系统服android务3.设置环境变量总结1.Nginx操作问题