mybatis读取oralce数据库字段是clob类型两种方法
一、用流的方法将clob转为String类型 (要记的将流关闭)
@Override
public Map<String, Object> queryreviewbaseerrorList(Map<String, Object> map) {
Map<String, Object> mapData = new HashMap<>();
List<Map<String, Object>> list=new ArrayList<Map<String,Object>>();
int reviewcode=Integer.parseInt(map.get("reviewcode").toString());
list = DataReviewMapper.queryreviewbaseerrorList(map);
for (Map<String, Object> obj : list) {
Clob sc = (Clob) obj.get("TOPOGEOMETRY");
if(sc!=null){
String TOPOGEOMETRY = null;
try {
TOPOGEOMETRY = ClobToString(sc);
} catch (SQLException | IOException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
obj.remove("TOPOGEOMETRY");
obj.put("TOPOGEOMETRY", TOPOGEOMETRY);
}
}
PageInfo pInfo = new PageInfo(list);
mapData.put("code", 0);
mapData.put("msg", "");
mapData.put("data", list);
mapData.put("count", pInfo.getTotal());
return mapData;
}
public String ClobToString(Clob sc) throws SQLException, IOException {
String reString = "";
Reader is = sc.getCharacterStream();// 得到流
BufferedReader br = new BufferedReader(is);
String s = br.readLine();
StringBuffer sb = new StringBuffer();
while (s != null) {// 执行循环将字符串全部取出付值给StringBuffer由StringBuffer转成STRING
sb.append(s);
s = br.readLine();
}
reString = sb.toString();
return reString;
}
二、使用ClobProxyImpl类来解决(比较好)
Map<String,Object> map = clubGroMapper.queryClueGroupDetail(map);
ClobProxyImpl disOrgNoProxy = (ClobProxyImpl)map.remove("distributeOrgNo");//此字段在oracle中为clob类型
String distributeOrgNo = null;
if(disOrgNoProxy != null){
Clob rawClob = disOrgNoProxy .getRawClob();
distributeOrgNo = rawClob.getSubString(1,(int)rawClob.length());
}
map.put("distributeOrgNo",distributeOrgNo);
mybatis读取oralce数据库字段是clob类型两种方法相关推荐
- mysql php gpl_MySQL_MySQL数据库远程访问权限如何打开(两种方法),下载GPL版本安装MySQL Community - phpStudy...
MySQL数据库远程访问权限如何打开(两种方法) 下载GPL版本安装 MySQL Community Edition(GPL) Community (GPL) Downloads » 在我们使用mys ...
- oracle事务数统计,【学习笔记】Oracle数据库收集统计信息的两种方法介绍案例
天萃荷净 分享一篇关于Oracle数据库收集统计信息的办法,Oracle DBMS_STATS与Oracle analyze使用方法案例 今天群里面讨论DBMS_STATS和analyze,这里进行了 ...
- arcgis用python字段自动编号,arcgis中字段自动编号的两种方法
<arcgis中字段自动编号的两种方法>由会员分享,可在线阅读,更多相关<arcgis中字段自动编号的两种方法(4页珍藏版)>请在人人文库网上搜索. 1.精选文档关于ARCGI ...
- qt连接mysql数据库原理_Qt连接数据库的两种方法
我曾经想过,无论在哪个平台下开发,都不要再接触SQL Server了,但显然不行.我们是来看世界的,不是来改变世界的,想通就好. 前两天,尝试了一下Qt下远程访问数据库.在macOS下,用Qt 5.1 ...
- mysql数据库运行远程用户访问不了_MySQL数据库远程访问权限如何打开(两种方法)...
下载GPL版本安装 MySQL Community Edition(GPL) Community (GPL) Downloads » 在我们使用mysql数据库时,有时我们的程序与数据库不在同一机器上 ...
- MySQl数据库-批量添加数据的两种方法
当你需要往数据表中添加数据,如果少量,手动添加其实没什么问题.但是当你需要测试大量数据时,比如要统计一年.一个月.一个星期的数据的区别,而且需求是必须每天都要有数据,这时就需要批量添加数据.在这里以u ...
- 在ABAP里取得一个数据库表记录数的两种方法
方法1:使用函数EM_GET_NUMBER_OF_ENTRIES 这个函数使用起来很简单,只需要将想查询的数据库表名称维护进输入参数IT_TABLES: 上图说明这个函数支持批量操作,我查询的两张表名 ...
- oracle数据库导入dmp文件,两种方法
开始的准备工作:前面的步骤都一样 一: 创建表空间: create tablespace root datafile 'D:\Oracle\dataSpace\root.dbf' (你自己的存放空间) ...
- oracle sql列转行_Oracle数据库中列转行的两种方法
1.创建tb_student表 create table tb_student( id number(4) , name varchar2(20), course varchar2(20), scor ...
最新文章
- 33 个 2017 年必须了解的 iOS/swift 开源库第三方库
- doget dopost 过滤器 乱码
- 面试官: 平时开发中你用过读写锁吗?
- Android 之PackageManager框架
- win10你的电脑设备需要修复_图文详解win10升级失败的解决方法
- 笨办法学 Python · 续 练习 40:SQL 读取
- matlab 请验证三角等式,[转载]matlab
- Python使用装饰器捕获异常
- WCF中因序列化问题引起的异常和错误。
- ReduceTask工作机制图解
- 论文阅读《A Survey on Deeping Learning In Medical Image Analysis》
- 如何做html链接,怎么做超链接,制作超链接的详细操作步骤
- 【林林js笔记】克隆数组的几种方法以及浅克隆深克隆误区
- 网上那些代理IP是哪儿来的
- Android LRUCache原理
- ros串口通讯(读取串口数据)
- IC功能芯片的封装和包装经验
- openwrt ppoe拨号后数据为零的解决方法
- 手写文字识别软件有哪些?教你怎么识别手写文字
- OUC-SE-GROUP09-BLOG1