blob和clob的输入方式

BLOB (binary large object),二进制大对象,是一个可以存储二进制文件的容器,所以我这边用流的方式读入;

if(colList.get(j).get("type").toString().equalsIgnoreCase("BLOB")){
                                    byte[] content = null;
                                    java.sql.Blob blob = executeQuery.getBlob(colList.get(j).get("code").toString());
                                    if (blob != null){
                                        InputStream inStream = blob.getBinaryStream();
                                        ByteArrayOutputStream bot = new ByteArrayOutputStream();
                                        byte[] b = new byte[(int)blob.length()];
                                        int len = 0;
                                        while ((len = inStream.read(b)) != -1) {
                                            bot.write(b, 0, len);
                                        }
                                        content = bot.toByteArray();
                                        System.out.println("content:"+content);
                                    }
                                    insertpstm.setObject(j+x, content);

CLOB 是可以直接存储文字的,单字节字符数据****所以他的读入方式和blob的方式完全不一样

 if(colList.get(j).get("type").toString().equalsIgnoreCase("clob")){
						            Clob clob = executeQuery.getClob(colList.get(j).get("code").toString());
                                    String detailinfo = "";
                                    if(clob != null){
                                        detailinfo = clob.getSubString((long)1,(int)clob.length());
                                    }

注:“code”是通过JSONO的方式获得数据列名,然后通过判断如果是blob或者clob就采取相应的读入方式;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值