`
shixiuteng
  • 浏览: 40273 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

java读取clob字段的几种方法

 
阅读更多

最近频繁处理clob字段,故集中了几种读取clob字段的方法,供大家参考。

第一种:

Clob clob = rs.getClob("remark");//java.sql.Clob
String detailinfo = "";
if(clob != null){
detailinfo = clob.getSubString(0,(int)clob.length());
}

 
第二种:

Clob clob = rs.getClob("remark");//java.sql.Clob
int i = 0;
if(clob != null){
InputStream input = clob.getAsciiStream();
int len = (int)clob.length();
byte by[] = new byte[len];
while(-1 != (i = input.read(by, 0, by.length))){
input.read(by, 0, i);
}
detailinfo = new String(by, "utf-8");
}

 第三种:

Clob clob = rs.getClob("remark");//java.sql.Clob
String value="";
String line="";
if(clob!=null){
Reader reader=((oracle.sql.CLOB)clob).getCharacterStream();
BufferedReader br=new BufferedReader(reader);
while((line=br.readLine())!=null)
{
value += line + "\r\n";
}

}

 第一种方法代码量少,且能避免中文乱码问题;第二种方法与第一种方法效率差不多,也是常使用的一种方法;第三种方法效率极低,如果数据比较大的话建议不要使用。

分享到:
评论

相关推荐

    java中操作oracle的CLOB字段精解

    Java 中操作 Oracle 的 CLOB 字段是一种常见的操作,在实际开发中,我们经常需要在 Oracle 数据库中存储和读取大型文本数据,这时就需要使用 CLOB(Character Large OBject)类型的字段来存储这些数据。下面我们将...

    运用Java如何存取Oracle中的CLOB类型字段

    在处理CLOB数据时,通常会涉及到以下几种常见操作: - 插入CLOB数据 - 更新CLOB数据 - 查询CLOB数据 - 删除CLOB数据 #### Java访问CLOB示例 以下是一个使用Java访问Oracle数据库中CLOB类型的示例代码: ```java ...

    clob增加、修改

    ### 二、Java操作CLOB字段的方法 #### 2.1 插入CLOB数据 插入CLOB数据通常涉及到以下步骤: 1. **创建空的CLOB对象**:使用`empty_clob()`函数创建一个空的CLOB对象。 2. **获取CLOB的输出流**:使用`...

    iBATIS操作Oracle CLOB数据

    4. **查询操作**:查询包含CLOB字段的记录时,iBATIS会自动处理CLOB的读取。但是,由于CLOB可能很大,所以在处理结果集时应谨慎,避免内存溢出。 5. **类型处理器**:iBATIS提供了一个`OracleClobHandler`,它可以...

    java存取oracle中的COLB类型数据.pdf

    Java 访问 Oracle 中的 COLB 类型数据 Java 中访问 Oracle 数据库中的 COLB 类型数据是一种常见的操作。...最后,在和数据库中最好是采用连接池技术,用标准的 J2EE 的环境,用简单的 JNDI 技术,是很好的一种方法的。

    Oracle大型数据对象LOB几种情况的示范类

    然后,查询这个新记录并获取其CLOB字段,利用`getCharacterOutputStream()`方法创建一个输出流,并通过`BufferedWriter`将文件内容写入CLOB。最后,提交事务并将自动提交恢复到初始状态。 3. **修改CLOB对象** `...

    spring1.2+hibernate2对大字段的处理实例

    Hibernate2支持将Java的`java.sql.Blob`和`java.sql.Clob`对象映射到数据库的Blob和Clob字段,这样可以存储大数据而不影响其他字段。 2. **文件系统存储**:大字段数据可以存储在文件系统中,然后在数据库中仅存储...

    oracle中的BLOB(照片)转换到mysql中

    BLOB是一种可以存储大量二进制数据的对象,分为四种子类型:BLOB、CLOB、NCLOB和BFILE。在Oracle中,BLOB用于存储二进制数据,如照片;而在MySQL中,BLOB也有类似的分类,包括TINYBLOB、BLOB、MEDIUMBLOB和LONGBLOB...

    spring1.2+hibernate3对大字段的处理实例,供大家学习与交流,可直接运行

    针对大字段的处理,通常有以下几种策略: 1. **字段分片**:如果一个字段过大,可以将其拆分为多个较小的字段存储,降低单个字段的数据量。 2. **延迟加载**(Lazy Loading):在Hibernate中,大字段可以通过懒...

    spring blob相关

    1. **JdbcTemplate**:这是Spring JDBC模块的一个关键接口,提供了方便的SQL执行方法,可以用于读取和写入BLOB字段。使用JdbcTemplate,我们可以编写SQL查询或更新语句,并利用其方法执行它们,处理结果集。 2. **...

    ORALCE10g驱动classes12.jar版本问题 类型长度大于最大值

    解决这个问题有几种方法: 1. **调整数据类型**:检查数据库表结构,确认字段是否使用了适当的数据类型。如果字段内容确实需要很长,可以考虑改用CLOB或NCLOB类型,它们可以存储更大的文本数据。 2. **升级驱动**...

    轻松将Excel的xls格式文件导入到Oracle数据库

    要将Excel数据导入Oracle,我们通常有以下几种方法: 1. **SQL*Loader**:Oracle提供的一个批量数据加载工具,能够快速将大量数据从文本文件或CSV文件加载到数据库中。对于xls文件,我们可以先将其转换为CSV格式,...

    mysql,sqlserver,oracle三种数据库的大对象存取解析.docx

    MySQL支持几种不同类型的BLOB类型,包括TINYBLOB、BLOB、MEDIUMBLOB和LONGBLOB。这些类型主要区别在于它们可以存储的最大字节数。TINYBLOB可以存储最多255个字节,BLOB可以存储最多65,535个字节,MEDIUMBLOB可存储...

    ssh(structs,spring,hibernate)框架中的上传下载

     文件数据存储在Blob类型的FILE_CONTENT表字段上,在Spring中采用OracleLobHandler来处理Lob字段(包括Clob和Blob),由于在程序中不需要引用到oracle数据驱动程序的具体类且屏蔽了不同数据库处理Lob字段方法上的...

    Hibernate学习笔记

    Hibernate是一款广泛应用于Java开发中的ORM(对象关系映射)框架,它的主要目标是简化数据库操作,将数据库的CRUD(创建、读取、更新、删除)操作转化为对Java对象的操作。通过Hibernate,开发者可以避免编写大量的...

    DM7程序员手册.pdf

    介绍了几种建立JDBC连接的方法,包括使用DriverManager类、配置JDBC数据源等,为开发者提供了灵活的选择。 **4.6 Statement/PreparedStatement/CallableStatement** 这部分分别介绍了Statement、PreparedStatement...

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    LOB数据类型 clob 1~4GB 只能存储字符数据 nclob 1~4GB 保存本地语言字符集数据 blob 1~4GB 以二进制信息保存数据 三、 DDL语言 1. Create table命令 用于创建表。在创建表时,经常会创建该表的主键、外键、唯一...

    Oracle9i的init.ora参数中文说明

    说明: 指定一对值 (UTC,TZD), 设置 TIME WITH TIME ZONE 数据类型的默认值, 该数据类型包含 HOUR, MINUTE, SECOND, TIMEZONE_HOUR 和 TIMEZONE_MINUTE 这几个日期时间字段。UTC 是世界时而 TZD 是当地时区。 语法: ...

Global site tag (gtag.js) - Google Analytics