文档章节

getClob(String),不应调用它(Mybatis错误)

sprouting
 sprouting
发布于 2017/09/06 19:39
字数 326
阅读 326
收藏 0

晚上用mybatis的时候,死活报一个错误

org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException:
### Error querying database.  Cause: java.lang.UnsupportedOperationException: 不支持方法 com.sybase.jdbc3.jdbc.SybResultSet.getClob(String),不应调用它。

因为mapper文件的返回是返回一个map,怀疑是map的接收出了问题,可死活调不对,百度CLOB

SQL CLOB 是内置类型它将字符大对象 (Character Large Object) 存储为数据库表某一行中的一个列值。默认情况下,驱动程序使用 SQL locator(CLOB) 实现 Clob 对象,这意味着 CLOB 对象包含一个指向 SQL CLOB 数据的逻辑指针而不是数据本身。Clob 对象在它被创建的事务处理期间有效

上面的一段话很关键,将字符串大的值转换为了clob类型

找到表,发现果然有一个字段长度为500。到现在,问题已经明了。

mybatis 根据的你字段长度 超过256 自动用clob封装,而因为使用的map接收的返回值,直接导致接收该字段的时候报错,将map中这个字段去掉,问题解决。

另外,该问题其实与sybase数据库的驱动有一定关系

© 著作权归作者所有

sprouting

sprouting

粉丝 18
博文 172
码字总数 65343
作品 0
广州
程序员
私信 提问
加载中

评论(0)

工作经验:mybatis 处理 oracle Long 类型

前言:mybatis 接收 oracle 中 LONG 类型的,报错:无效的列类型: getCLOB not implemented for class oracle.jdbc.driver.T4CLongAccessor 注意   当表中有 long 类型的字段存在时,查询多...

osc_xl85dc6p
2018/07/05
5
0
JDBC编程专题8之JDBC数据类型

- JDBC驱动程序将Java数据类型转换成适当的JDBC类型,然后将其发送给数据库。它为大多数数据类型提供并使用默认映射。例如,Java int 类型会被转换成SQL INTEGER。创建默认映射以提供到驱动程...

极客微信条
2017/11/09
0
0
1.2(Mybatis学习笔记)Mybatis核心配置

一、Mybatis核心对象   1.1SqlSeesionFactory   SqlSessionFactory主要作用是创建时SqlSession。   SqlSessionFactory可通过SqlSessionFactoryBuild构建,   调用器build方法,方法参...

osc_bnzpjhof
2019/03/04
0
0
MyBati__mapper 中取值(#{} 或${}) 以及 parameterType为(基本类型 或复杂类型)

参考资料: MyBatis学习笔记(三)——parameterType为基本类型时的使用方法 MyBatis的传入参数parameterType类型 1. MyBatis的传入参数parameterType类型分两种 1.1 基本数据类型:int,strin...

osc_5512k200
2018/11/19
7
0
JDBC 4.2 Specifications 中文翻译 -- 第六章 遵守规范

本章指出了实现一个 JDBC 驱动所需要遵守的规范,在本章中没有指出的规范,则作为可选项来遵守。 6.1 准则与要求 以下的准则是 JDBC API 规范要求实现者遵守的基本准则 JDBC API 的实现者必须...

beanlam
2017/01/14
0
0

没有更多内容

加载失败,请刷新页面

加载更多

QEMU、KVM、libvirt三者间的关系

QEMU QEMU提供了一个开源的服务器全虚拟化解决方案,它可以使你在特定平台的物理机上模拟出其它平台的处理器,比如在X86 CPU上虚拟出Power的CPU,此时的Guest OS感觉不到虚拟机的存在,就像运行在...

osc_7ludm6s2
5分钟前
3
0
QEMU和KVM的关系

KVM是指在CPU硬件支持基础之上的虚拟化技术。没有CPU硬件虚拟化的支持,KVM是无法工作的。 准确来说,KVM是Linux的一个模块。可以用modprobe去加载KVM模块。加载了模块后(kvm和kvm-intel模块...

osc_3ytpwpyb
7分钟前
3
0
thymeleaf语法(二)

<span th:if="$(user.age) eq 23"></span> 运算符: gt  :great than  (大于)  > ge  :great equal  (大于等于)  >= eq  :equal  (等于)  = lt  :less than  (小于) ......

osc_nt0jrqne
9分钟前
3
0
送给发烧友:Python条件语句的七种写法T

有的人说 Python 入门容易,但是精通难的语言,这点我非常赞同。Python 语言里有许多(而且是越来越多)的高级特性,是 Python 发烧友们非常喜欢的。在这些人的眼里,能够写出那些一般开发者...

osc_0kdyznad
10分钟前
7
0
人物-企业家:车建新

ylbtech-人物-企业家:车建新 车建新 ,男,1966年6月18日生于江苏省常州市,红星美凯龙家居集团股份有限公司(Red Star Macalline Group Corporation Ltd.)董事长兼CEO,并担任全国工商联执...

osc_z2ru77w0
11分钟前
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部