Oracle中Clob类型转换问题 ·_·! (很急!)

wingoo220 2010-03-03 05:46:14
java中创建了一个对象,例如BookModel ;

数据库中有一个表,例如: MYTABLE ;

MYTABLE中有一个clob类型的大字段book,我用流的方式将整个BookModel存入了该book字段中。

但是读取这个字段的时候,我不知道怎么将这个clob类型的book字段,转换成我的BookModel了。

请各位帮帮忙,给我想想办法,指点指点。

急!
...全文
624 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
lisai17 2010-10-23
  • 打赏
  • 举报
回复
怎么解决的,分享一下啊!
wingoo220 2010-04-22
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 duqiangcise 的回复:]
java中创建了一个对象,例如BookModel ;

数据库中有一个表,例如: MYTABLE ;

MYTABLE中有一个clob类型的大字段book,我用流的方式将整个BookModel存入了该book字段中。

但是读取这个字段的时候,我不知道怎么将这个clob类型的book字段,转换成我的BookModel了。

请各位帮帮忙,给我想想办法,指点指点。

你……
[/Quote]

我就是要把整个对象存在一个clob字段中,
这个问题我已经解决了。谢谢
duqiangcise 2010-03-05
  • 打赏
  • 举报
回复
java中创建了一个对象,例如BookModel ;

数据库中有一个表,例如: MYTABLE ;

MYTABLE中有一个clob类型的大字段book,我用流的方式将整个BookModel存入了该book字段中

但是读取这个字段的时候,我不知道怎么将这个clob类型的book字段,转换成我的BookModel了。

请各位帮帮忙,给我想想办法,指点指点。

你把整个对象都写入数据库中??是不是搞错了哟你!你应该是把该对象的各个属性的值写入数据库中,而不是把该对象写入数据库中。


下面给你给关于数据库存取clob的例子:



import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.Reader;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Properties;

import oracle.jdbc.driver.OracleDriver;
import oracle.jdbc.driver.OraclePreparedStatement;

/**
* @author ibm
*
*/
public class TestClob {

/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
String url = "jdbc:oracle:thin:@localhost:1521:orclu";
String username = "xxx_name";
String passwd = "xxxxx_passwd";
// -----------------------------------ORCLU_TEST_TBS
Properties props = new Properties();
props.put("user", username);
props.put("password", passwd);
props.put("setBigStringTryClob", "true");
DriverManager.registerDriver(new OracleDriver());
Connection conn = DriverManager.getConnection(url, props);

// PreparedStatement pstmt =
// conn.prepareStatement("insert into clob_tab values(?)");
String str = readFile("c:\\sqltest.sql");

OraclePreparedStatement opstmt = (OraclePreparedStatement) conn
.prepareStatement("insert into clob_tab values(?)");
opstmt.setStringForClob(1, str);
opstmt.executeUpdate();

ResultSet rset = null;
opstmt = (OraclePreparedStatement) conn.prepareStatement("select clob_col from clob_tab");
rset = opstmt.executeQuery();
String clobVal=null;
while (rset.next()){
clobVal = rset.getString(1);
System.out.println("CLOB LENGTH: "+clobVal.length());
}
}

public static String readFile(String path) throws Exception {
BufferedReader reader = new BufferedReader(new FileReader(path));
String tt = "";
String content;
content = reader.readLine();
while (null != content) {
tt += content;
content = reader.readLine();
}
return tt;

}
}
tangren 2010-03-03
  • 打赏
  • 举报
回复
到JAVA区吧,可能回答的人要多一点

17,140

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧