/**
* File Name: ClobToString.java
*
* File Desc: 处理clob大对象类型
*
* Product AB: WEB_1_0_0
*
* Product Name: 网站
*
* Author: kan.jiang
*
* History: 2010-9-14 created by kan.jiang
*/
package com.sinitek.web.taglib.common;
import java.io.*;
import java.sql.*;
import javax.servlet.jsp.*;
import javax.servlet.jsp.tagext.*;
/**
* 处理clob大对象类型
* @author kan.jiang
* @version 1.0
* @date 2010-9-14 9:55:33
*/
public class ClobToString extends SimpleTagSupport
{
private Object clob;
private int n;
private String addContent;
public String getAddContent()
{
return addContent;
}
public void setAddContent( String addContent )
{
this.addContent = addContent;
}
public int getN()
{
return n;
}
public void setN( int n )
{
this.n = n;
}
public Object getClob()
{
return clob;
}
public void setClob( Object clob )
{
this.clob = clob;
}
@Override
public void doTag() throws JspException, IOException
{
JspContext jc = super.getJspContext();
JspWriter out = jc.getOut();
if ( clob == null )
{
out.print( "" );
}
StringBuffer clobString = new StringBuffer();
if ( clob instanceof Clob )
{
int y;
char ac[] = new char[4096];
Reader reader;
try
{
reader = ( ( Clob ) clob ).getCharacterStream();
while ( ( y = reader.read( ac, 0, 4096 ) ) != -1 )
{
clobString.append( new String( ac, 0, y ) );
}
}
catch ( SQLException e )
{
e.printStackTrace();
}
}
else
{
clobString.append( clob.toString() );
}
if ( clobString.toString().length() > n && n > 0 )
{
out.print( clobString.toString().substring( 0, n ) + addContent );
}
else
{
out.print( clobString.toString() );
}
}
}
相关推荐
MyBatis 处理 CLOB、BLOB 类型数据是指在使用 MyBatis 框架时,如何正确地处理大字段类型的数据。CLOB(Character Large OBject)和 BLOB(Binary Large OBject)都是大字段类型,用于存储大量的数据。 CLOB 类型...
2. **数据展示**:为了便于前端展示,有时需要将CLOB类型的数据转换为更适合网页显示的格式。 3. **数据迁移**:在进行数据库迁移或重构时,可能需要将原有的CLOB字段转换为新的数据类型以适应新环境的要求。 ###...
在使用MyBatis框架进行数据操作时,我们可能会遇到CLOB类型数据的读写问题,尤其是在转换和插入数据库时。本篇将详细探讨MyBatis中处理CLOB类型数据的转换以及解决可能出现的异常情况。 首先,MyBatis是Java中的一...
通过上述示例,我们可以看到如何使用Java通过JDBC操作Oracle数据库中的CLOB类型数据。这些基本的操作是开发人员在日常工作中经常需要用到的功能之一。掌握这些技术对于实现高效、可靠的数据库应用程序至关重要。此外...
在Oracle数据库中,CLOB(Character Large Object)是一种用于存储大量文本数据的数据类型,如XML文档、长篇文章或任何其他非二进制的大型数据。本文将深入探讨Oracle中的CLOB类型文字处理,以及如何在实际操作中...
当我们在处理大型文本数据时,例如XML文档、长篇文章或者大段代码,数据库通常会提供CLOB(Character Large Object)类型来存储这类数据。本主题主要探讨如何使用JDBC有效地操作Oracle数据库中的CLOB类型字段,包括...
CLOB(Character Large Object)是一种用于存储大量文本数据的数据类型,在Oracle数据库中被广泛使用,可以支持最大4GB的数据量。在Java编程中,为了能够有效地与Oracle数据库中的CLOB类型交互,Java提供了`java.sql...
Clob”类型在数据库中主要用于存储大对象(Large Object),如长文本、XML文档等大量数据。在Oracle数据库中,Clob是用来存储可变长度的非结构化数据,如长篇文字、HTML文档等。在Java世界中,尤其是在持久化框架...
使用这种自定义的CLOB聚合函数,你可以避免`WM_CONCAT`的长度限制问题,同时也能充分利用CLOB类型的优势处理大数据量的字符串合并。在实际应用中,这尤其适用于报告、分析或数据导出等场景,其中可能需要合并大量的...
向orcale数据库中插入一个txt格式的文本文档,即clob类型的数据
在Java Web开发中,JSP(JavaServer Pages)是一种用于创建动态网页的技术,而CLOB(Character Large Object)是数据库中用于存储大量字符数据的数据类型。本示例将讲解如何在JSP中读取数据库中的CLOB类型数据,并将...
我们使用了 Java 语言和 JDBC 驱动程序来实现数据的导出,并将 Image 类型数据写到文件中,然后将文件中的数据读取出来,并将其设置到 Oracle 的 CLOB 字段中。这种方法可以帮助我们实现不同数据库管理系统之间的...
在Oracle数据库中,当我们遇到需要存储超过4000个字符的文本数据时,使用CLOB(Character Large Object)类型便显得尤为重要。下面将详细介绍如何在C#环境下通过Oracle.NET接口实现将长于4000字符的字符串转化为CLOB...
Oracle数据库同样支持BLOB和CLOB数据类型,但需要特殊配置来处理来自其他数据库的大对象数据。 3. **特殊配置策略**: - **联邦能力**:利用WII的联邦功能,先将DB2中的非BLOB字段复制到Oracle目标表中。 - **...
在本篇文章中,我们将深入探讨如何使用Spring MVC框架将图片存储到数据库中,并特别关注CLOB类型的使用。 #### 二、CLOB类型概述 CLOB(Character Large Object)是数据库中用于存储大量文本数据的一种数据类型。...
在Oracle数据库中,`CLOB`(Character Large Object)是一种用于存储大量文本数据的数据类型。由于其能够存储非常大的文本块(最大可达4GB),因此常被用于存储文章、报告或任何其他大型文本内容。然而,在处理CLOB...
Oracle的Clob数据类型在数据库中用于存储大对象(Large Object),如长文本、XML文档等大量字符数据。在Hibernate框架中,Clob类型的字段处理是数据库操作中的一个关键环节,尤其是在处理大量文本数据时。以下是对...
在Oracle数据库中,CLOB(Character Large Object)类型字段用于存储大量的文本数据,如XML文档、长篇文章等。由于其特殊性,处理CLOB类型的字段时可能会遇到性能问题,特别是当涉及索引时。本话题将围绕如何针对...
这是因为 WebLogic 服务器为了更好地管理和操作数据库连接,会使用自己的包装类 `weblogic.jdbc.wrapper.Clob_oracle_sql_CLOB` 来表示 CLOB 类型的数据,而不是直接使用 Oracle 提供的标准 `oracle.sql.CLOB` 类。...