之前写了个web端的程序用来控制从oracle向Hadoop导数据,同时在页面上可以通过jdbc调用hive,发现中文显示为乱码,因为是装在windows2003上

在网上查了一下,通过修改hive的jdbc包可以解决这个问题,将jdbc包里的org.apache.hadoop.hive.jdbc.HiveQueryResultSet文件修改后放回去,就可以了。

改这行:  Object data = this.serde.deserialize(new BytesWritable(rowStr.getBytes()));

修改成:  Object data = this.serde.deserialize(new BytesWritable(rowStr.getBytes("UTF-8")));

上传一个修改好的包:改好的hive-jdbc包

http://download.csdn.net/detail/sardtass/6873591

windows的编码默认是gbk,之前也遇到过在开发环境中文正常而生产环境中文乱码的问题,主要是因为windows的编码不是utf8的,这个编码不知道在哪改,但是在启动tomcat时可以设置-D参数,进行修改,在启动tomcat时加上 -Dfile.encoding=UTF-8 就可以了,但是这样调整以后通过myeclipse调用tomcat时,后台输出都会是乱码,因为myeclipse默认也使用gbk,myeclipse也需要设置。

后来发现是装hadoop的服务器语言配置有问题,改成utf8就好了。

盾环境的配置:

Properties pps=System.getProperties(); 
pps.list(System.out);

另外,通过jdbc调用hive的时候,如果语句中有中文会报错,注意看一下服务器上的语言配置,改为utf8,而且web端的默认语言也需要是utf8的。

使用Java调hive的jdbc时,如果连接由tomcat管理,则需要在tomcat的lib下放1个hadoop-core-**.jar的包和4个hive的包core,jdbc,metastore,service还有2个libfb303-0.9.0(facebook的包,为什么还要有这个)和libthrift-0.9.0包。

hive jdbc连接时的乱码问题相关推荐

  1. JDBC 连接 MySQL 中文乱码问题

    JDBC 连接 MySQL 中文乱码问题 前言 最近在写小项目,用到了上个月刚学的mysql和 JDBC,在java查询时出现了中文乱码,在网络上查询资料,发现相关问题比较混乱,故整理一下解决方法. ...

  2. JDBC连接时的一些问题

    package com.chanda.connection;/*** @author 禅达啊* @date 2020/9/22 15:46*/ import org.junit.Test;import ...

  3. JDBC连接时所犯错误1.字符集设置不合适2.连接MySQL8.0社区版时时区不一致3..包名不能以Java.命名4.驱动被弃用

    Microsoft JDBC Driver 的主页为:https://msdn.microsoft.com/en-us/data/aa937724.aspx 下载所需驱动 今天连接时报了四次错,记录下 ...

  4. mysql8.0JDBC驱动下载以及JDBC连接时遇到的问题

    笔者最近重温JDBC,由于换了数据库版本,安装了最新的mysql8.0.26,在编写java代码时仍然用5版本的驱动是行不通的,一直是连接不到数据库的. 于是就去官网下了最新版本的驱动. 下载地址: ...

  5. Hive load data 时中文乱码的解决

    检查建表的字段分隔符,我的是 制表符(\t) 所以在保存为文本文件的时候要注意是要用制表符(\t)分隔 最重要的一步: 保存文本文件的时候要注意,文件编码要为无BOM头的UTF-8编码 最后执行命令即 ...

  6. jdbc-connect-oracle12c-pdb/cdb(jdbc连接oracle12c的pdb和cdb)

      1       本文简介: 通过特意引发问题,聚焦问题,解决问题,并循序渐进 最后总结jdbc连接oracle12c中cdb和pdb的条件. 软件环境:Redhat7.1+orcacle12c 2 ...

  7. impala 连接mysql_impala系列: 基本命令和jdbc连接

    --======================= 使用impala-shell 登录 --======================= impala-shell --auth_creds_ok_i ...

  8. JDBC连接SQL Server 2005问题

    java.sql.SQLException: Network error IOException: Connection refused: connectCaused by: java.net.Con ...

  9. 数据层优化-jdbc连接池简述、druid简介

    终于回到既定轨道上了,这一篇讲讲数据库连接池的相关知识,线程池以后有机会再结合项目单独写篇文章(自己给自己挖坑,不知道什么时候能填上),从这一篇文章开始到本阶段结束的文章都会围绕数据库和dao层的优化 ...

最新文章

  1. 自控力极差的人如何自救?两个方法战胜拖延!
  2. ASP.NET Core Web APi获取原始请求内容
  3. session cookie
  4. 查看Mat对象的数据的三种方法
  5. 卷积神经网络的网络层与参数的解析
  6. PW Live 直播 | 清华大学王晓智:事件抽取的进展与挑战
  7. Docker入门总结
  8. 使用 Tye 辅助开发 dotnet 应用程序
  9. leetcode 480. 滑动窗口中位数(堆+滑动窗口)
  10. 一个极其高效的虚拟机内存冗余消除机制:UKSM
  11. python 读取excel表格_python 对Excel表格的读取
  12. 抽象工厂模式_设计模式——抽象工厂模式
  13. 【操作系统/OS笔记12】同步互斥的三种实现方法:禁用硬件中断、基于软件的解决方案、更高级的抽象
  14. 软件项目验收汇报ppt_扔掉你收藏的PPT吧,设计院专用项目汇报模板来袭(68GB)!...
  15. Ubuntu系统安装JDK教程
  16. HTML和JavaScript学习笔记
  17. 超图android离线瓦片,android端实践openlayers离线地图
  18. JDO与JPA哪个更好?
  19. Windows 下 Quartus 检测不到 USB-Blaster 终极解决办法
  20. 区块链10年兴衰录:中国是最好的发展土壤

热门文章

  1. 【C#】wpf自定义calendar日期选择控件的样式
  2. Netty4 学习笔记之一:客户端与服务端通信 demo
  3. C#winform控制textbox输入只能为数字
  4. ubuntu mysql lessons
  5. oracle常用网址
  6. Windows 部署服务(WDS)基础配置指南 (2008 or 2008R2 Only)
  7. 利用DELPHI开发完成例程(1)
  8. 惠普修复已存在8年的可蠕虫漏洞,影响150多款多功能打印机
  9. Linux OS 曝新漏洞 攻击者可在多数发行版获root 权限
  10. 微软披露25个漏洞 BadAlloc,至少影响数十亿智能设备