使用JdbcTemplate 向ORACLE插入大文本CLOB数据的方法

使用JdbcTemplate插入大文本的CLOB字段时,可以用如下方法进行:

final LobHandler lobHandler = new DefaultLobHandler (); //定义一个lob的操作类
  Object update_result = jdbc.execute(sql, new AbstractLobCreatingPreparedStatementCallback(lobHandler) {
   
   @Override
   protected void setValues(PreparedStatement pstmt, LobCreator lobCreator)
     throws SQLException, DataAccessException {
    pstmt.setLong(1, Long.parseLong(app_id));//插入其他类型的字段
    pstmt.setInt(2, Integer.parseInt(result));
    lobCreator.setClobAsString(pstmt, 3, result_log);//大文本CLOB字段,result_log为字符串
    pstmt.setString(4, user);
   }
  });

注意,jdbc驱动版本要支持你所操作的oracle数据库的版本,否则会提示长度超过限制的错误。

你可能感兴趣的:(JdbcTemplate)