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有效地操作Oracle数据库中的CLOB类型字段,包括插入(Insert)、删除(Delete)、更新(Update)和查询(Select)等操作。 首先,我们需要理解CLOB的基本概念。CLOB是一种数据库对象,...
这是因为 WebLogic 服务器为了更好地管理和操作数据库连接,会使用自己的包装类 `weblogic.jdbc.wrapper.Clob_oracle_sql_CLOB` 来表示 CLOB 类型的数据,而不是直接使用 Oracle 提供的标准 `oracle.sql.CLOB` 类。...
### JDBC中操作Blob、Clob等对象 #### 一、简介 在JDBC(Java Database Connectivity)编程中,Blob和Clob是非常重要的数据类型。Blob(Binary Large Object)主要用于存储二进制大对象,如图像、音频文件等;而Clob...
这篇博客“使用Jdbc4操作Blob,Clob”将深入讲解如何利用JDBC4 API来处理Blob和Clob对象。 Blob通常用于存储二进制数据,如图片、音频或视频文件,而Clob则用于存储大量文本数据,如长篇的文本或XML文档。在JDBC4中...
CLOB操作与BLOB操作类似,但是在获取java.sql.Clob对象后需要强制转换为oracle.sql.CLOB对象,以便使用getCharacterOutputStream()方法将数据写入CLOB字段。 三、出库操作 出库操作可以使用ResultSet.getBlob()或...
2. **预编译SQL语句**:Blob和Clob操作通常涉及预编译的PreparedStatement,因为它们通常需要动态插入或更新大数据值。例如,`PreparedStatement.setBlob(int index, Blob value)` 和 `PreparedStatement.setClob...
这篇文档将详细阐述如何在JDBC中有效地读取和操作Oracle数据库的CLOB字段,并将其转换为String类型。 首先,理解CLOB对象的特性是关键。CLOB是一种BLOB(Binary Large Object)的变种,专用于存储字符数据。在JDBC...
JDBC实现对CLOB和BLOB数据类型的操作 在数据库中,存在两种类型的数据:CLOB(Character Large OBject)和BLOB(Binary Large OBject),它们用于存储大型数据,如文本、图片、音频、视频等。对CLOB和BLOB数据类型...
在JDBC(Java Database Connectivity)中,我们可以使用特定的方法来操作这些类型的数据。 首先,我们需要建立与数据库的连接。在示例代码中,`JDBCUtils.getConnection()` 方法用于获取数据库连接。这个方法通常会...
7. **事务管理**:由于CLOB操作可能会涉及到较大的数据量,确保正确设置事务的隔离级别和回滚规则,以防止数据不一致。 综上所述,通过iBATIS操作Oracle的CLOB数据,需要对iBATIS的映射文件、类型处理器以及Oracle...
本篇将深入探讨如何使用JDBC来操作Oracle数据库中的Clob类型。 Clob类型在Oracle中用于存储大量的文本数据,例如长篇文章、XML文档或任何其他非结构化的字符数据。在Java中,我们通过java.sql.Clob接口来与Oracle的...
总结来说,JDBC提供了处理CLOB数据的全面支持,包括创建、设置和读取操作。理解和熟练使用这些方法对于在Java中处理大文本数据至关重要。不过,使用时需注意内存管理和性能优化,确保程序高效且稳定。
在 Java 中操作 CLOB 字段需要使用 Oracle 的 JDBC 驱动程序,首先我们需要在 Java 项目中引入 Oracle 的 JDBC 驱动程序,然后使用 Connection 对象连接到 Oracle 数据库,最后使用 PreparedStatement 或 Statement ...
本教程将详细介绍如何在 Java 中使用 JDBC 和 JNDI 连接访问 Oracle 数据库,对 CLOB 字段进行读写操作。 首先,我们创建两个测试表,一个包含 BLOB 字段,一个包含 CLOB 字段: ```sql CREATE TABLE TESTBLOB ( ...
- JDBC提供了对CLOB字段的操作接口,包括`java.sql.Clob`,通过它可以在数据库和应用程序之间读写CLOB数据。 3. **empty_clob()函数**: - 在插入CLOB数据时,如果值是空的,可以使用Oracle SQL的`empty_clob()`...
在提供的`ConnUtils2.java`文件中,很可能包含了以上所述的Java数据库操作代码,例如建立JDBC连接、处理CLOB数据类型以及调用Oracle存储过程的方法。分析这个文件可以帮助我们更好地理解实际应用中的实现细节,包括...
总的来说,Spring通过JDBC提供了一套完善的接口和工具类来处理CLOB和BLOB,使得开发者无需直接与JDBC API打交道,降低了数据库操作的复杂度。在实际项目中,根据业务需求,合理运用这些功能可以极大地提高开发效率和...