我是靠谱客的博主 疯狂小鸭子,最近开发中收集的这篇文章主要介绍mybatis-plus 查询hive数据库报错Required field ‘type‘ is unset报错org.apache.thrift.protocol.TProtocolException: Required field ‘type’ is unset! Struct:TPrimitiveTypeEntry(type:null, typeQualifiers:TTypeQualifiers(qualifiers:{characterMaximumLength=})),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

mybatis-plus 查询hive数据库,报错Required field 'type' is unset!

  • 报错org.apache.thrift.protocol.TProtocolException: Required field 'type' is unset! Struct:TPrimitiveTypeEntry(type:null, typeQualifiers:TTypeQualifiers(qualifiers:{characterMaximumLength=}))
    • 可能的原因之一

报错org.apache.thrift.protocol.TProtocolException: Required field ‘type’ is unset! Struct:TPrimitiveTypeEntry(type:null, typeQualifiers:TTypeQualifiers(qualifiers:{characterMaximumLength=}))

在这里插入图片描述

可能的原因之一

hive数据库中有两种存储字符的类型,varchar 和 string。
如果hive 数据库字段里是varchar类型,在java类中用String接收,就会报错:org.apache.thrift.protocol.TProtocolException: Required field ‘type’ is unset!

这里的hive版本为:
在这里插入图片描述

使用DBeaver连接hive数据库,看表字段类型如下;
在这里插入图片描述
Mapper.java

在这里插入图片描述
报错:
在这里插入图片描述
解决办法:
类型转换 使用 cast 函数将 varchar 转成 string
在这里插入图片描述
然后就查询成功了。

最后

以上就是疯狂小鸭子为你收集整理的mybatis-plus 查询hive数据库报错Required field ‘type‘ is unset报错org.apache.thrift.protocol.TProtocolException: Required field ‘type’ is unset! Struct:TPrimitiveTypeEntry(type:null, typeQualifiers:TTypeQualifiers(qualifiers:{characterMaximumLength=}))的全部内容,希望文章能够帮你解决mybatis-plus 查询hive数据库报错Required field ‘type‘ is unset报错org.apache.thrift.protocol.TProtocolException: Required field ‘type’ is unset! Struct:TPrimitiveTypeEntry(type:null, typeQualifiers:TTypeQualifiers(qualifiers:{characterMaximumLength=}))所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(58)

评论列表共有 0 条评论

立即
投稿
返回
顶部