spring使用JdbcTemplate 读取clob属性字段

public static List queryListBlob(String sql,JdbcTemplate sjt){
  List list=null;

 list = sjt.query(sql, new RowMapper(){
   public Object mapRow(ResultSet rs, int i) throws SQLException {
           Map results = new HashMap();//存放对像的hashmap
           CLOB clob = null;
           String str = "";
           try {
            T_CASESTUDY bean=new T_CASESTUDY();//表对应的javaBean
            clob = (oracle.sql.CLOB) rs.getClob("content");//content字段属性为clob,转成clob对象
            str = clobToString(clob);将clob对象转为String
            bean.setId(rs.getString("id"));
            bean.setName(rs.getString("name"));
            bean.setWebsite(rs.getString("website"));
            bean.setImgpath(rs.getString("imgpath"));
            bean.setContent(str);
            bean.setCrdt(rs.getDate("crdt"));
            bean.setCrusr(rs.getString("crusr"));
            bean.setOrderid(rs.getInt("orderid"));
            bean.setState(rs.getString("state"));
            results.put(rs.getString("id"),bean);
     } catch (Exception e) {
      logger.error(e.getMessage());
      results.put("content", "");
     }           
           return results;
    }

    //此方法将clob转为String
    public String clobToString(CLOB clob) throws SQLException, IOException {
     String reString = "";
     if( clob == null || clob.getCharacterOutputStream() == null )
      return "";
     Reader is = clob.getCharacterStream();// 得到流
     BufferedReader br = new BufferedReader(is);
     String s = br.readLine();
     StringBuffer sb = new StringBuffer();
     while (s != null) {// 执行循环将字符串全部取出付值给StringBuffer由StringBuffer转成STRING
      sb.append(s);
      s = br.readLine();
     }
     reString = sb.toString();
     return reString;
    }
  });

}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值