java web 连接hive问题 10C

创建了java工程,直接main方法调用jdbc方式连接hive的方法,测试成功,
查询都好用,但是在servlet里面调用那个查询方法就抛异常java.lang.ClassNotFoundException: org.apache.hive.jdbc.HiveDriver,
hive相关的jar包都不少,也在buildpath中加入项目里面了,真是搞不明白了,代码就在一个工程里面,方法直接在main函数里就可以执行
在servlet中执行就报错。有人遇见过类似的问题吗?通过servlet调用和直接main方法调用有什么本质区别呢?

0

2个回答

Web工程的classpath问题
JavaWeb项目的classpath说明
  概念解释:

    classpath : 即项目中WEB-INF下面的classes目录;

  

  应用:

    【01】 src路径下的文件在编译后会放到WEB-INF/classes路径下。默认的classpath是在这里。直接放到WEB-INF下的话,是不在classpath下的。用ClassPathXmlApplicationContext当然获取不到的。

    【02】 如果单元测试的话,可以在启动或者运行的选项里指定classpath的路径的。用maven构建项目时候resource目录就是默认的classpath

    【03】 classPath即为java文件编译之后的class文件的编译目录一般为web-inf/classes,src下的xml在编译时也会复制到classPath下

1、jar导入到web项目中的classpath下三种方式
1)这里呢,一种方法是,直接用MyEclipse里自带的相关的项目jar包,右击项目“MyEclipse”菜单,选择对应的jar包就OK了,例“Add Spring Capabilities”,并且可以设置Spring的一些配置信息,不错的可视化操作;
2)添加外部的jar包到web项目的lib包下,右击项目“Properties”-->“Java Build Path”-->“Libraries”选项卡;
3)自己手动拷贝jar文件到项目的lib包下,具体操作只要把要添加的jar文件拷贝到MyEclipse中的workspace下的lib包里就好了;
2、三种jar包添加方式区别
1)这种方式,jar文件直接链接到MyEclipse的文件下,并没有拷贝到WEB-INF/lib目录下,不得用项目的发布、移植,可能会出现jar找不到的情形;
2)选择性比较的强,可以随意的加jar包,只要在你本机存在就可以了,链接的也是jar文件的路径,缺点同1;
3)直接添加到WEB-INF/lib目录下,移植性强,可操作性也强。

0
lovelysmall7
慕容^苹果 这些都是最基本的东西,jar包都放到lib下面没毛病,问题就是直接运行main方法可以,在servlet里面调用就不行,有没有可能是javaweb里本身有什么包和hive冲突
大约一年之前 回复

如果classpath都正常,包也不缺少的话,不太可能出现楼主说的问题;
需要注意的是,跑main函数,跟你跑web工程,环境变量是不一样的,楼主最好把你servlet工程相关的东西发一下看看

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
第十三天 - 封装JDBC操作Hive工具类 - HWI配置与使用 - JavaWeb结合Hive
第十三天 - 封装JDBC操作Hive工具类 - HWI配置与使用 - JavaWeb结合Hive 第十三天 - 封装JDBC操作Hive工具类 - HWI配置与使用 - JavaWeb结合Hive 一、Hive Sql语句补充 二、封装JDBC操作Hive工具类 三、HiveWebInterface - Hive的Web页面接口 HWI源码打包配置 HWI配置 HWI使用 四、...
java连接hive出现连不上的问题
1、hive首先要起动远程服务接口,命令: nohup hive --service hiveserver  &    证明是成功了,如果你还没有成功,就重新启动下你的hadoop集群后在执行上面的命令,应该就没有问题。 2、就是加载你的hive lib中的jar到你的项目中。
.NET ODBC与JAVA JDBC连接HIVE查询数据的性能比较
最近在做大数据相关项目,大数据平台编程一般用JAVA,但由于项目组中成员用C#较熟,因此,准备做两者连接HIVE读取数据的性能比较测试,如果相差较大,就考虑整个项目用JAVA开发,这样学习成本较高。比较后发现,两者性能差距不大,这样至少前端的开发可以利用C#的原有资源了。好了,废话不多说,上代码。 C#通过ODBC连接HIVE读取数据              C#连接HIVE使用
Java使用JDBC连接Hive(新版本)API封装
网上找了很多封装的API,发现都是过时了的,运行报各种错误,经过了几天的调错,终于可以使用java代码操作hive了首先看看所需的包所有的分析都在代码里面package com.berg.hive.test1.api;import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet;
连接Hive相关Jar包(DBeaver和JDBC均可使用)
DBeaver连接Hive的Jar包,通过Java JDBC连接Hive同样可以使用。 DBeaver连接Hive的Jar包,通过Java JDBC连接Hive同样可以使用。
java jdbc连接hive所需要所有jar包,请测有效。
jdbc连接hive代码所需要jar包,测试有效
使用 JDBC 连接 hive 查询后把数据使用java反射注入到对象
要求 : 学习hive有几周了,最近一直使用javaJDBC的方式连接hive进行操作,目前我还不知道有没有第三方的框架能做哈(刚玩不清楚),今天发现使用JDBC查询出来的结果 只能根据 列名 或者 下标 获取值,这种方式感觉太不灵活了,就想按照mybatis/hibernate 这样的 ORM 框架 可以把数据自动注入封装到 类中 结果 : 通过一下午的实验,使用JAVA反射的方式可以把数据封
jdbc连接hive的问题
利用hive jdbc连接hive出现如下问题:   org.apache.hive.jdbc.HiveDriverorg.apache.hive.jdbc.HiveDriverhive_driver: org.apache.hive.jdbc.HiveDriverhive_url:jdbc:hive2://10.174.242.28:10000/defaultget connection
java通过jdbc驱动连接hive操作实例
基于hadoop的Hive数据仓库JavaAPI简单调用的实例,关于Hive的简介在此不赘述。hive提供了三种用户接口:CLI,JDBC/ODBC和 WebUI CLI,即Shell命令行JDBC/ODBC 是 Hive 的Java,与使用传统数据库JDBC的方式类似WebGUI是通过浏览器访问 Hive 本文主要介绍的就是第二种用户接口,直接进入正题。  1、Hive 安装:
Hive中文乱码(JDBC连接HiveServer2)问题解决
工作中遇到通过jdbc连接hive服务器(我们是用HiveServer2),获取的中文是乱码的问题。使用beeline有同样的效果,而用hive命令行却能正常显示中文。而写入,读取的文件,都是用的UTF-8,Java环境也都是UTF-8字符集。这是怎么回事? 问题重现 我们可以以如下方式重现: shell> cat upload.txt row1 行2 行3 row4
使用jdbc操作hive(impala)运行时报borken pipe错误
项目中需要使用hive来做查询,为了提高速度用了impala(jdbc地址没有变,驱动也还是hive,只是变了段口号)项目是springboot + gradle + dbcp + spring data hadoop项目中使用了spring新的HiveTemplate项目运行一段时间后,查询会报出borken pipe,有时也会报连接重置,这个问题找了很久,困惑了很久BasicDataSourc...
jdbc连接hive超时的问题
jdbc连接hive 超时的问题,原因:1.hadoop服务没有启动,2.hive服务没有启动、3.防火墙没有关闭。
hive的访问:通过JDBC远程连接hive数据仓库
hive的访问:终端访问  远程访问 终端访问:安装hive,利用shell脚本访问 不可并发访问 远程访问:通过JDBC连接数据仓库 支持并发访问 启动hiveserver2服务:查看该命令可知hiveserver2,等价于hive --service hiveserver2 & [xiaoqiu@s150 /soft/hive/bin]$ cat hiveserver2 #...
Hive管理之Web界面和远程管理
一 Web启动方式 端口号:9999 hive --service hwi & 通过浏览器来访问:http://:9999/hwi/ 二 安装apache-hive-0.13.0-src.tar.gz [root@localhost ~]# ls apache-hive-0.13.0-src.tar.gz apache-hive-0.13.0-src.tar.gz [roo
[Hive]Hive中表连接的优化,加快查询速度
1、多表连接的执行顺序和MapReduce job优化 select a.ymd ,a.price_close ,b.price_close ,c.price_close from stocks a join stocks b on a.ymd = b.ymd join stocks c on a.ymd = c.ymd where ...
解决maven仓库默认不支持cdh JAVAJDBC连接hive
前面的话: 目前maven仓库中没有支持cdh的相关依赖。cloudera自己建立了一个相关的仓库。要想利用maven添加相关依赖,则必须单独添加cloudera仓库。一、项目pom.xml, 添加仓库配置 <repositories> <repository> <id>cloudera</id> <url&g...
通过JDBC连接Hive以及常见异常处理方式
环境 1.hadoop-2.7.3集群 2.hive-1.2.2 测试代码 1.JDBCUtils.java package demo.utils; import java.sql.*; public class JDBCUtils { private static String driver = "org.apache.hive.jdbc.HiveDrive
Hive的java客户端连接Hive数据库
记录一下用java客户端连接Hive数据库,连接数据库的时候必须要启动HiveServer2,要不然连接不上…,测试的时候下载一下 <dependency> <groupId>org.apache.hive</groupId> <artifactId>hive-jdbc</artifactId> <ve...
通过 JDBC 连接Hive Server2 设置 Yarn 队列的方法
方式一: 方式二: 方式三: private static String url = "jdbc:hive2://<SERVER_IP>:<THRIFTSEVER2_PORT>/<DATABASE_NAME>"; 如果需要设置队列 private static String url = "jdbc:hive2://<SERVER_I...
Hive访问方式
Hive的访问方式主要分为两种,一种是本地模式,通常用于单机测试,另一种是远程连接模式,比较常用。 本文前提: 1.本文使用的软件版本为: hadoop2.7.4 hive1.2.1 jdk1.8 2.运行hive之前保证jdk与hadoop配置完毕,并且启动HDFS和Yarn。 1.本地模式 在hive安装路径bin目录下,直接运行hive脚本,即可进入本地模式,如下图所示: ...
hive2.3部署实践踩过的一些坑
1、hive.metastore.schema.verification这个参数的属性设置为false,在hive-site.xml文件中修改。否则hiveserver启动失败。 2、如果报这样的错: Exception in thread "main" java.sql.SQLException: Could not open client transport with JDBC Uri:
Hive JDBC连接Tez(AM)容器长期不释放问题的解决方法
Hive JDBC连接Tez(AM)容器长期不释放问题的解决方法 问题 有这样一个问题是很常见的:如果我们的Hive使用默认使用Tez作为执行引擎,当我们使用IDE通过Hive JDBC连接时,会出现在一个很“有趣”的想象:即如果我们不断开这个JDBC连接,则在Yarn上会持续有有一个Tez的AM容器持续存在,只有当端开JDBC连接时,这个容器才会被释放。关于Tez在Yarn的资源布局,可参考这篇...
Hive用户接口(一)—Hive Web接口HWI的操作及使用
Hive用户接口(一)—Hive Web接口HWI的操作及使用
Hive的安装配置和使用Java连接
Hadoop集群搭建可参考:http://blog.csdn.net/yanhang0610/article/details/51896545 1        系统环境 系统:CentOS 7.0。 版本:JDK 1.8.0_91,Hadoop 2.7.3,Hive 2.1.1。 2        Hive安装 官网:http://hive.apache.org/ 安装Hiv
Hive 远程连接 MySQL数据库遇到的问题
设置 源数据 保存到MySQL数据库问题 1.加载 MySQL 驱动包到 hive 的 lib 目录下 2.在 hive 的conf 目录下新建 hive-site.xml 文件 <configuration> <property> <name>javax.jdo.option.ConnectionURL</name> ...
java连接Hive的几种方式
测试环境 Hadoop 0.20.2版本、Hive-0.5.0版本、JDK1.6   1、一般来说我们对hive的操作都是通过cli来进行,也就是Linux的控制台,但是,这样做本质上是每个连接都存放一个元数据,各个之间都不相同,所以,对于这样的模式我建议是用来做一些测试比较合适,并不适合做产品的开发和应用。   2、JDBC连接的方式,当然还有其他的连接方式,比如ODBC等, 这种方式很
Hive连接Hbase操作数据
Hive整合HBase原理 Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。 其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。 Hive与HBase整合的实现是利用两者本
hive jdbc连接Demo
jdbc连接hive的小示例程序,使用方法: 1、在Hadoop服务器上启动远程服务接口,命令: nohup hive --service hiveserver 10000 & (指定端口启动) 2、将test主程序里的IP改为自己用的Hadoop服务器ip,即可使用。
Java通过jdbc连接HIVE
一、连接 public static void main(String[] args) throws SQLException { try { Class.forName("org.apache.hive.jdbc.HiveDriver"); } catch (ClassNotFoundException e) { // TODO Auto-generated cat...
jdbc连接hive数据库的驱动jar包
jdbc连接hive数据库的jar包.整理可用合集.
Spark采用jdbc的方式访问hive
这里需要导入一个jdbc-hive依赖 需要注意的是,包的版本一定要确认好,切勿版本过高 <dependency> <groupId>org.apache.hive</groupId> <artifactId>hive-jdbc</artifactId> <ve...
Hive-命令行基本操作和java API访问hive数据库
安装 首先说明hive的安装。 链接: http://pan.baidu.com/s/1DleVG 密码: mej4 这个链接是一个视频的链接,视频中讲解了如何安装hive。 关于视频中用到的资料文件,我已经上传到CSDN,请点击这里下载。 按照视频中的讲解步骤,完全可以完成hive的安装和调试。命令行基本操作 命令行基本操作无非就是增删改查。 进入hive的命令行模式,命令:hi
Maven java通过jdbc连接Hive 执行HQL语句
lrwxrwxrwx. 1 hadoop hadoop 12 May 14 09:53 hadoop -> hadoop-2.2.0 drwxr-xr-x. 10 hadoop hadoop 4096 May 14 16:45 hadoop-2.2.0  lrwxrwxrwx.  1 hadoop hadoop        15 May 16 15:38 hive -
Hive WebUi安装使用
搭建Hwi 下载地址:http://apache.fayea.com/hive PS:选择自己的版本 下载并解压src文件:tar -xzf apache-hive-2.1.0-src.tar.gz 进入web文件夹:cd apache-hive-2.1.0-src/hwi/web 打包war文件: jar -xcf hive-hwi-2.1.0.war * 将hive-hwi-2.1.0....
第十四天 - JavaWeb结合Hive - Hive外部表 - Hive内置函数 - Hive自定义函数
第十四天 - JavaWeb结合Hive - Hive外部表 - Hive内置函数 - Hive自定义函数 第十四天 - JavaWeb结合Hive - Hive外部表 - Hive内置函数 - Hive自定义函数 一、JavaWeb结合Hive(二) 完善(一)中的功能 创建表、导入数据 二、Hive外部表 三、Hive函数操作 关系运算 数学运算 逻辑运算 数值运算 日期函...
hive(四)--在java中通知thrift接口操作hive
一、简介 本文介绍在java中通知thrift操作hive。二、hive启动thrift接口1、hadoop配置 修改hadoop的配置文件core-site.xml,添加如下配置: <property> <name>hadoop.proxyuser.china.hosts</name> <value>*</value&gt...
通过远程jdbc方式连接到hive数据仓库
1.启动hiveserver2服务器,监听端口10000 $>hive --service hiveserver2 & netstat -anop | grep 10000   2.通过beeline命令行连接到hiveserver2 $>beeline //进入beeline命令行(于hive --service beeline) $beeline>!help //查看帮助 $
jdbc连接cdh版本hive
在使用IDE连接cdh版本hive时,由于jdbc版本问题,会出现如下几个错误:1.jdbc版本不是cdh的,必须使用cdh版本的;2.使用阿里云镜像仓库,从maven仓库中下载相应版本,下载失败,没有;3.从cdh内置的lib库取出相应的jar包,导出到IDE,成功,步骤如下:    a)cdh库默认地址:/opt/cloudera/parcels/CDH-5.10.0-1.cdh5.10.0....
java代码访问hive的相关步骤。
相关说明使用java代码访问hive的时候需要hive的守护进程——hiveserver2也可以使用另外一个命令行客户端beeline进行对hive的访问守护进程模式启动和beeline简单使用hiveserver2 & # 启动,并挂到后台 netstat -tupln|grep 10000 # 默认的端口是10000 beeline !connect jdbc:hive2://loc...
用Java开发的MySQL,Oracle,PostgreSQL,mongoDB,Hive 数据库web管理工具软件
产品概述: TreeDMS数据库管理系统系统使用JAVA开发,采用稳定通用的springMVC +JDBC架构,实现基于WEB方式对 MySQL,Oracle,DB2,PostgreSQL,SQL Server,mongoDB,Hive,SAP HANA,Caché数据库进行维护管理操作。 功能包括:数据库的展示,库表的展示,表字段结构的展示, SQL语句的在线编辑批量执行,表结构的在...
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 web培训班问题 hive java学习