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

jdbc clob 操作

    博客分类:
  • jdbc
阅读更多

JdbcUtil

public final class JdbcUtil {

	private static String url = "jdbc:mysql://localhost:3306/blobtest";
	private static String user = "root";
	private static String password = "root";

	private JdbcUtil() {

	}

	static {
		try {
			Class.forName("com.mysql.jdbc.Driver");
		} catch (Exception e) {
			throw new ExceptionInInitializerError(e);
		}
	}

	public static Connection getConnection() throws SQLException {
		return DriverManager.getConnection(url, user, password);
	}

	public static void free(ResultSet rs, Statement stmt, Connection conn) {
		try {
			if (rs != null) {
				rs.close();
			}
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			try {
				if (stmt != null) {
					stmt.close();
				}
			} catch (SQLException e) {
				e.printStackTrace();
			} finally {
				if (conn != null) {
					try {
						conn.close();
					} catch (SQLException e) {
						e.printStackTrace();
					}
				}
			}
		}
	}
}

 ClobTest

public class ClobTest {

	public static void main(String[] args) throws Exception {
		ClobTest.read();
	}
	
	static void create() throws Exception{
		Connection conn = null;
		PreparedStatement ps = null;
		try {
			conn = JdbcUtil.getConnection();
			String sql = "INSERT INTO clob(clob) VALUES (?) ";
			ps = conn.prepareStatement(sql);
			File file = new File("src/cn/lichaozhang/jdbc/Base.java");
			Reader reader = new BufferedReader(new FileReader(file));
			ps.setCharacterStream(1, reader, file.length());
			int i = ps.executeUpdate();
			System.out.println(i);
			reader.close();
		} finally {
			JdbcUtil.free(null, ps, conn);
		}
	}
	
	static void read() throws Exception {
		Connection conn = null;
		Statement st = null;
		ResultSet rs = null;
		try {
			conn = JdbcUtil.getConnection();
			st = conn.createStatement();
			rs = st.executeQuery("SELECT clob FROM clob");
			while (rs.next()) {
				Clob clob = rs.getClob(1);
				Reader reader = clob.getCharacterStream();
				File file = new File("Base_bak.java");
				Writer writer = new BufferedWriter(new FileWriter(file));
				char[] buff = new char[1024];
				for (int i = 0; (i = reader.read(buff)) != -1;) {
					writer.write(buff, 0, i);
				}
				writer.close();
				reader.close();
			}
		} finally {
			JdbcUtil.free(rs, st, conn);
		}
	}
}

  

分享到:
评论

相关推荐

    JDBC方式操作CLOB字段实例

    JDBC方式操作CLOB字段实例代码 。

    jdbc 处理clob类型字段

    本主题主要探讨如何使用JDBC有效地操作Oracle数据库中的CLOB类型字段,包括插入(Insert)、删除(Delete)、更新(Update)和查询(Select)等操作。 首先,我们需要理解CLOB的基本概念。CLOB是一种数据库对象,...

    weblogic.jdbc.wrapper.Clob_oracle_sql_CLOB 类型转换解决办法

    这是因为 WebLogic 服务器为了更好地管理和操作数据库连接,会使用自己的包装类 `weblogic.jdbc.wrapper.Clob_oracle_sql_CLOB` 来表示 CLOB 类型的数据,而不是直接使用 Oracle 提供的标准 `oracle.sql.CLOB` 类。...

    JDBC中操作Blob、Clob等对象

    ### JDBC中操作Blob、Clob等对象 #### 一、简介 在JDBC(Java Database Connectivity)编程中,Blob和Clob是非常重要的数据类型。Blob(Binary Large Object)主要用于存储二进制大对象,如图像、音频文件等;而Clob...

    使用Jdbc4操作Blob,Clob

    这篇博客“使用Jdbc4操作Blob,Clob”将深入讲解如何利用JDBC4 API来处理Blob和Clob对象。 Blob通常用于存储二进制数据,如图片、音频或视频文件,而Clob则用于存储大量文本数据,如长篇的文本或XML文档。在JDBC4中...

    JAVA对clob的操作

    CLOB操作与BLOB操作类似,但是在获取java.sql.Clob对象后需要强制转换为oracle.sql.CLOB对象,以便使用getCharacterOutputStream()方法将数据写入CLOB字段。 三、出库操作 出库操作可以使用ResultSet.getBlob()或...

    jdbc_blob_clob.rar

    2. **预编译SQL语句**:Blob和Clob操作通常涉及预编译的PreparedStatement,因为它们通常需要动态插入或更新大数据值。例如,`PreparedStatement.setBlob(int index, Blob value)` 和 `PreparedStatement.setClob...

    oracle数据库的clob大字段在jdbc中的处理方式

    这篇文档将详细阐述如何在JDBC中有效地读取和操作Oracle数据库的CLOB字段,并将其转换为String类型。 首先,理解CLOB对象的特性是关键。CLOB是一种BLOB(Binary Large Object)的变种,专用于存储字符数据。在JDBC...

    详解jdbc实现对CLOB和BLOB数据类型的操作

    JDBC实现对CLOB和BLOB数据类型的操作 在数据库中,存在两种类型的数据:CLOB(Character Large OBject)和BLOB(Binary Large OBject),它们用于存储大型数据,如文本、图片、音频、视频等。对CLOB和BLOB数据类型...

    Oracle clob和blob在jdbc的应用

    在JDBC(Java Database Connectivity)中,我们可以使用特定的方法来操作这些类型的数据。 首先,我们需要建立与数据库的连接。在示例代码中,`JDBCUtils.getConnection()` 方法用于获取数据库连接。这个方法通常会...

    iBATIS操作Oracle CLOB数据

    7. **事务管理**:由于CLOB操作可能会涉及到较大的数据量,确保正确设置事务的隔离级别和回滚规则,以防止数据不一致。 综上所述,通过iBATIS操作Oracle的CLOB数据,需要对iBATIS的映射文件、类型处理器以及Oracle...

    jdbc__clob.rar_oracle

    本篇将深入探讨如何使用JDBC来操作Oracle数据库中的Clob类型。 Clob类型在Oracle中用于存储大量的文本数据,例如长篇文章、XML文档或任何其他非结构化的字符数据。在Java中,我们通过java.sql.Clob接口来与Oracle的...

    基于jdbc处理Clob的使用介绍

    总结来说,JDBC提供了处理CLOB数据的全面支持,包括创建、设置和读取操作。理解和熟练使用这些方法对于在Java中处理大文本数据至关重要。不过,使用时需注意内存管理和性能优化,确保程序高效且稳定。

    java中操作oracle的CLOB字段精解

    在 Java 中操作 CLOB 字段需要使用 Oracle 的 JDBC 驱动程序,首先我们需要在 Java 项目中引入 Oracle 的 JDBC 驱动程序,然后使用 Connection 对象连接到 Oracle 数据库,最后使用 PreparedStatement 或 Statement ...

    java操作clob

    本教程将详细介绍如何在 Java 中使用 JDBC 和 JNDI 连接访问 Oracle 数据库,对 CLOB 字段进行读写操作。 首先,我们创建两个测试表,一个包含 BLOB 字段,一个包含 CLOB 字段: ```sql CREATE TABLE TESTBLOB ( ...

    解析jdbc处理oracle的clob字段的详解

    - JDBC提供了对CLOB字段的操作接口,包括`java.sql.Clob`,通过它可以在数据库和应用程序之间读写CLOB数据。 3. **empty_clob()函数**: - 在插入CLOB数据时,如果值是空的,可以使用Oracle SQL的`empty_clob()`...

    jdbc连接例子 Oracle CLOB转换为String java调用存储过程之输出游标

    在提供的`ConnUtils2.java`文件中,很可能包含了以上所述的Java数据库操作代码,例如建立JDBC连接、处理CLOB数据类型以及调用Oracle存储过程的方法。分析这个文件可以帮助我们更好地理解实际应用中的实现细节,包括...

    spring2通过jdbc的方式读取、更新数据库的clob或者blob类型的数据

    总的来说,Spring通过JDBC提供了一套完善的接口和工具类来处理CLOB和BLOB,使得开发者无需直接与JDBC API打交道,降低了数据库操作的复杂度。在实际项目中,根据业务需求,合理运用这些功能可以极大地提高开发效率和...

Global site tag (gtag.js) - Google Analytics