首页 > 代码库 > JdbcTemplate 操作Oracle Blob
JdbcTemplate 操作Oracle Blob
1:增加操作
public int addTest(TestVo tv) { byte bz[] = tv.getBz().getBytes(); LobHandler lobHandler = new DefaultLobHandler(); String sql = "insert into test(name,age,bz) values(?,?,?)"; return jdbcTpl.execute(sql,new AbstractLobCreatingPreparedStatementCallback(lobHandler){ @Override protected void setValues(PreparedStatement ps, LobCreator lobCreator) throws SQLException, DataAccessException { ps.setString(1,tv.getName()); ps.setInt(2,tv.getAge()); lobCreator.setBlobAsBytes(ps,3,bz); } }); }
2:查询操作
public List<TestVo> getTestList() { String sql = "select name,age,bz from test"; return jdbcTpl.query(sql,new Object[]{},new RowMapper<TestVo>(){ @Override public TestVo mapRow(ResultSet rs, int rowNum) throws SQLException { TestVo tv =new TestVo(); tv.setName(rs.getString("name")); tv.setAge(rs.getInt("age")); InputStream is = rs.getBlob("bz").getBinaryStream(); ByteArrayOutputStream out = new ByteArrayOutputStream(); int len = 0; try { while((len=is.read())!=-1){ out.write(len); } tv.setBz(Base64Utils.encodeToString(out.toByteArray())); } catch (IOException e) { e.printStackTrace(); } finally { try { if(null!=out){ out.close(); } } catch (IOException e) { e.printStackTrace(); }finally { try { if(is!=null){ is.close(); } } catch (IOException e) { e.printStackTrace(); } } } return tv; } }); }
JdbcTemplate 操作Oracle Blob
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。