在spring mvc获取blob时使用存储过程

时间:2010-07-04 07:39:41

标签: spring

我想学习在我的MSSQL表上插入BLOB数据时如何使用存储过程。

final File blobIn = new File("spring2004.jpg");
final InputStream blobIs = new FileInputStream(blobIn);
final File clobIn = new File("large.txt");
final InputStream clobIs = new FileInputStream(clobIn);
final InputStreamReader clobReader = new InputStreamReader(clobIs);
jdbcTemplate.execute(
  "INSERT INTO lob_table (id, a_clob, a_blob) VALUES (?, ?, ?)",
  new AbstractLobCreatingPreparedStatementCallback(lobhandler) {                         (1)
      protected void setValues(PreparedStatement ps, LobCreator lobCreator) 
          throws SQLException {
        ps.setLong(1, 1L);
        lobCreator.setClobAsCharacterStream(ps, 2, clobReader, (int)clobIn.length());    (2)
        lobCreator.setBlobAsBinaryStream(ps, 3, blobIs, (int)blobIn.length());           (3)
      }
  }
);
blobIs.close();
clobReader.close();

spring framework 2.5文档使用jdbc模板。但在我的情况下,这是一个NO-NO。 我希望有人可以分享他们如何插入和检索数据的见解 输入流。

我一直试图谷歌寻求答案,但没有足够的资源可以找到。

1 个答案:

答案 0 :(得分:0)

您可以使用本机查询或使用JpaDaoSupport尝试使用Spring + JPA。

以下链接有很好的答案: