oracle存clob,oracle数据库里保存clob字段-Oracle

这段代码展示了如何使用Hibernate将一个空的Clob对象插入到Oracle数据库,并随后填充内容。它涉及到SessionFactory的获取,开启事务,创建Clob对象,保存对象,刷新会话,更新Clob内容并再次保存,最后提交事务。这个过程对于处理大文本字段如Clob在数据库操作中是常见的。
摘要由CSDN通过智能技术生成

public void addStatements(StatementsBean statementsBean) {

try {

Session session = this.getSession();

Transaction tran=session.beginTransaction();

statementsBean.setStatementsContent(Hibernate.createClob(” “));//注意,这里的参数是个空格,先新增一个空的Clob进去

session.save(statementsBean);

session.flush();//强制执行

session.refresh(statementsBean,LockMode.UPGRADE);

SerializableClob sc=(SerializableClob)statementsBean.getStatementsContent();//kybasicInfo.getInfoContent()是Clob类型的

Clob wrapclob=sc.getWrappedClob();//这里的Clob是java.sql.Clob

CLOB clob=(CLOB)wrapclob;//这里的CLOB是oracle.sql.CLOB

Writer writer=clob.getCharacterOutputStream();

writer.write(statementsBean.getContentToString());//kybasicInfo.getInfoContentToString()是String类型的,在action里就是传这个进来,然后再通过文件流形式写成CLOB字段中

writer.close();

session.save(statementsBean);

tran.commit();

} catch (RuntimeException re) {

throw re;

} catch (SQLException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值