我的解决hibernate中clob之道

 session = HibernateSessionFactory.currentSession();
   session.lock(pe,LockMode.NONE);
   pe.setLastFailReason("");
   if (pe.getProtocolType() == 0) {
    // logger.error(pe.getId().toString() + "扫描前的pop3id列表 " +
    // pe.getPopUidList());
    pop3Scan(pe);
   } else if (pe.getProtocolType() == 1) {
    imapScan(pe);
   } else {
    logger.error("|" + pe.getId().getUsernumber() + "|" + "协议类型错 "
      + "|Protocol_type :" + pe.getProtocolType() + "|");
   }
   Transaction tx = null;
   // session.isOpen()
   tx = session.beginTransaction();
   // logger.error(pe.getId().toString() + "扫描后的pop3id列表 " +
   // pe.getPopUidList());
   pe.setInquireState(0l);
   pe.setLastScanTime(new java.util.Date());
   session.update(pe);
   session.flush();
//   为更新pop3uid
   logger.info("handle 1111111111");
   session.refresh(pe, LockMode.UPGRADE); //grabs an Oracle CLOB  
  // oracle.sql.CLOB clob = (oracle.sql.CLOB)((SerializableClob)pe.getPopUidListClob()).getWrappedClob();  
//   注:如果是用weblogic connection pool,则用weblogic的OracleThinClob  
   logger.info("handle 2222222222");
   pe.setPopUidListClob(Hibernate.createClob(pe.getPopUidList() + "  "));
   /*
   java.io.Writer pw = clob.getCharacterOutputStream();  
   pw.write(pe.getPopUidList() + "  ");  
   pw.flush();  
   pw.close();  
   */
   session.flush();
   logger.info("handle 3333333333");
   tx.commit();
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值