ssh实现clob存储大文本数据

1.实体类  需要一个Strin各类型的辅助类

     private Clob    plContent;  
     private String  plcontent;  

2. 配置类 

      <property name="plContent" type="java.sql.Clob" >
            <column name="PL_CONTENT" >
                <comment>内容</comment>
            </column>
       </property>
       
3.action

      保存:

      policy.setPlContent(Hibernate.createClob(policy.getPlcontent()));
      this.policyBiz.save(policy);

      读取

     instance = (Policy) getHibernateTemplate().get(Policy.class, id);
     Clob PlContent = instance.getPlContent();
     instance.setPlcontent(PlContent.getSubString(1, (int) PlContent.length()));

4.dao层

     //创建空的clob占位

      Session session = getHibernateTemplate().getSessionFactory().getCurrentSession();
      session.beginTransaction();
      policy.setPlContent(Hibernate.createClob(" "));
      session.save(policy);
      session.flush();
      session.refresh(policy, LockMode.UPGRADE);

     //将java.sql.clob 转换为oracle.sql.clob

      SerializableClob sc = (SerializableClob) policy.getPlContent();
      java.sql.Clob wrapclob = sc.getWrappedClob();
     oracle.sql.BLOB clob = (oracle.sql.CLOB) wrapclob;

     //将String内容,转换成clob

     Writer writer;
     writer = clob.getCharacterOutputStream();
     writer.write(policy.getPlcontent());
     writer.close();

     session.save(policy);

5.oracle存储的字段为    clob


 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值