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
protectedvoid 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;
}
});
}
原文:http://www.cnblogs.com/yshyee/p/5983287.html
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!