package com.asiainfo.aiox.smc.rest.util; import java.io.IOException; import java.io.Reader; import java.sql.Clob; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; public class ClobUtil { private static Log logger = LogFactory.getLog(ClobUtil.class); public static String clob2str(Clob clob) { String reString = ""; Reader is = null; try{ if (clob != null) { is= clob.getCharacterStream(); char[] tempDoc = new char[(int) clob.length()]; is.read(tempDoc); reString = new String(tempDoc); } }catch(Exception e){ logger.error(e); }finally{ if(is!=null) try { is.close(); } catch (IOException e) { logger.error(e); } } return reString; } }
相关推荐
### ORACLE中CLOB字段转String类型 在Oracle数据库中,`CLOB`(Character Large Object)是一种用于存储大量文本数据的数据类型。由于其能够存储非常大的文本块(最大可达4GB),因此常被用于存储文章、报告或任何...
这个TypeHandler实现了将String转换为CLOB并插入数据库,以及从CLOB读取回String。 4. **在Mapper XML文件中使用** 在Mapper的XML文件中,确保在CLOB类型的字段上使用了正确的TypeHandler,例如: ```xml ...
标题中的“jdbc连接例子 Oracle CLOB转换为String java调用存储过程之输出游标”涉及到三个主要的Java数据库编程知识点:JDBC连接、Oracle数据库中的CLOB类型处理以及通过Java调用存储过程处理输出游标。 1. JDBC...
在数据库编程领域,CLOB(Character Large Object)和BLOB(Binary Large Object)是用于存储大量文本和二进制数据的数据类型。在DELPHI中,处理这些大型对象时需要特殊的技术和策略。本篇文章将深入探讨DELPHI中...
《Pentaho Kettle解决方案:使用PDI构建开源ETL解决方案》主要介绍如何使用开源ETL工具来完成数据整合工作。 《Pentaho Kettle解决方案:使用PDI构建开源ETL解决方案》介绍的PDI(Kettle)是一种开源的 ETL 解决方案,...
### WebLogic 下 Oracle CLOB 类型转换解决方案 在使用 WebLogic 服务器进行应用程序开发时,尤其是在处理 Oracle 数据库中的 CLOB 类型数据时,开发者可能会遇到类型转换的问题。本文将详细介绍如何通过反射机制来...
string sql = "INSERT INTO B_TSBH (BH, MC, SSBXBH, CONTENT) VALUES ('" + strTsbhBH + "', '" + strMC + "', '" + strSsbxbh + "', :clob)"; // 创建OracleConnection对象 using (OracleConnection conn = ...
在Java应用程序与Oracle数据库交互时,通常需要在两者之间进行`String`与CLOB类型的转换。以下是对这个主题的详细讨论。 1. **CLOB数据类型**: Oracle的CLOB类型可以存储最大为4GB的单个字符数据,这使得它成为...
String sql = "insert into test values(1, empty_clob())"; Statement stmt = con.createStatement(); ResultSet rs = stmt.executeQuery(sql); // 查询并更新CLOB记录 String sqll = "select content from ...
在 Java 中,CLOB 可以使用两种方式来操作:一种是将 CLOB 看成字符串类型,即可以使用 String 进行直接操作;另一种是使用 getAsciiStream 或者 getUnicodeStream 以及对应的 setAsciiStream 和 setUnicodeStream ...
String sql = "UPDATE " + tableName + " SET " + fieldName + "= ? WHERE " + primaryKey + "=?"; PreparedStatement pstmt = conn.prepareStatement(sql); pstmt.setClob(1, newClob); pstmt.setString(2, primary...
在Hibernate中,如果Clob字段的值是字符串,可以通过将Clob字段映射为String类型,让Hibernate自动处理转换。这种方式简单易用,但可能不适合非常大的文本,因为可能会导致内存溢出。 3.3 直接使用Clob类型: 对于...
本文主要介绍了两种操作Clob字段的方法,一种是将Clob字段直接映射为String类型,另一种是使用Clob类型进行处理。同时,还探讨了Hibernate框架中getCurrentSession()与openSession()的区别。 首先,要操作数据库中...
String sql = "SELECT my_clob_column FROM my_table WHERE id = ?"; Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery(sql); if (rs.next()) { Clob clobData = rs.getClob("my_clob_...
### Java存储Oracle中的CLOB类型知识点详解 #### 一、CLOB类型简介及Java操作方法 CLOB(Character Large Object)是一种用于存储大量文本数据的数据类型,在Oracle数据库中被广泛使用,可以支持最大4GB的数据量。...
### 数据库读取CLOB字段 #### 概述 在Oracle数据库中,CLOB(Character Large Object)是一种用于存储大量文本数据的数据类型。CLOB能够容纳4GB的文本信息,适用于存储如文章、报告或者XML文档等大型文本数据。...
String sql = "insert into text(id, context) values(text_id.nextval, empty_clob())"; PreparedStatement stmt = conn.prepareStatement(sql); stmt.executeUpdate(); stmt.close(); // 获取新插入的记录ID ...
MyBatis 提供了对 CLOB 和 BLOB 类型的内置支持,通过将 CLOB 类型映射到 Java 的 String 类型,BLOB 类型映射到 byte[] 类型。 在使用 MyBatis 时,需要在实体类中定义对应的字段类型,例如: ```java public ...
String content = ""; content = br.readLine(); while (content != null) { sb.append(content); sb.append("\n"); content = br.readLine(); } content = sb.toString(); ``` 4. **关闭资源**: 在...
为了简化处理,可以将Clob中的数据转换为String,利用Hibernate的String类型映射。在写入时,先将字符串转换为Clob对象,再由Hibernate处理;读取时,将Clob内容转化为字符串。这种方式适用于数据量不是特别大的...