java 连接presto实现SQL查询

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/ouyang111222/article/details/50514151

presto的安装参考http://blog.csdn.net/ouyang111222/article/details/50507471

一  引入jar

      <dependency>
         <groupId>com.facebook.presto</groupId>
         <artifactId>presto-jdbc</artifactId>
         <version>0.100</version>
    </dependency>

二 Java测试

public static void main(String[] args) throws SQLException, ClassNotFoundException {
         Class.forName("com.facebook.presto.jdbc.PrestoDriver");
         Connection connection = DriverManager.getConnection("jdbc:presto://10.199.xxx.xx:8001/kafka01/default","root",null);  ;  
         Statement stmt = connection.createStatement();  
         ResultSet rs = stmt.executeQuery("show tables");  
         while (rs.next()) {  
             System.out.println(rs.getString(1));  
         }  
         rs.close();  
         connection.close();  

    }

出现如下的错误:

Exception in thread "main" java.lang.UnsupportedClassVersionError: 
com/facebook/presto/jdbc/PrestoDriver : Unsupported major.minor version 52.0

这个错误是由于高版本的java project使用了低版本的来运行。怎么破???当前用的jdk是1.7,presto使用的jdk是1.8!

分析:类似错误均属于Java版本问题,即JDK版本过低,只要选择相对应的JDK版本编译即可。
48,49,50,51,52是Java编译器内部的版本号:

Unsupported major.minor version 52.0 对应于 JDK1.8(JRE1.8)

Unsupported major.minor version 51.0 对应于 JDK1.7(JRE1.7)
Unsupported major.minor version 50.0 对应于 JDK1.6(JRE1.6)
Unsupported major.minor version 49.0 对应于 JDK1.5(JRE1.5)
Unsupported major.minor version 48.0 对应于 JDK1.4(JRE1.4)


关于minor version具体参考博文:http://www.blogjava.net/Jay2009/archive/2009/04/23/267108.html


解决方法:安装jdk1.8,在eclipse中将编译的版本改为1.8,同时将jre更改为1.8,如下图1和图2

                                                   图1 修改编译level

                                                   图2 install jre

展开阅读全文

没有更多推荐了,返回首页