oracle 数据库存放读取二进制文件(将上传的文件流存在数据库)
private void saveBinary(InputStream in, Long userId, String fieldName) { Sql sql = new Sql("insert into EEAS_USER_ATTH(id,CONTENT,USER_ID,ATTH_NAME) values(SEQ_EEAS_USER_ATTH.NEXTVAL,?,?,?)"); sql.addParameter(new Parameter(DataType.BLOB, in)); sql.addParameter(new Parameter(DataType.LONG, userId)); sql.addParameter(new Parameter(DataType.STRING, fieldName)); service.execute(sql); } public InputStream getBinary(String sql) { InputStream fis = null; Connection conn = null; PreparedStatement pstmt = null; try { conn = ContextUtil.getConnection(); // -- pstmt = conn.prepareStatement(sql); ResultSet rs = pstmt.executeQuery(); if (rs.next()) { fis = rs.getBinaryStream(1); } rs.close(); // -- } catch (Exception e) { e.printStackTrace(); } finally { if (pstmt != null) { try { pstmt.close(); } catch (SQLException e) { e.printStackTrace(); } } if (conn != null) { try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } return fis; }
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。