java 关于blob类型问题

java中如何处理blob类型的问题... java中如何处理blob类型的问题 展开
 我来答
帐号已注销
2012-12-27 · TA获得超过334个赞
知道小有建树答主
回答量:400
采纳率:100%
帮助的人:142万
展开全部
public void save(String vid,String title,String type,String user,String date,String context,String file) throws Exception
{
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
String sql = "insert into news(v_id,title,type,person,inputtime,context,attach_docid) values('"+vid+"','"+title+"','"+type+"','"+user+"','"+date+"',EMPTY_BLOB(),'"+file+"')";
try {
DBJdbc dbjdbc = new DBJdbc();
conn = dbjdbc.getDBConnection();
conn.setAutoCommit(false);
stmt = conn.createStatement();
stmt.executeUpdate(sql);
String sql1 = "select context from news where v_id ='"+vid+"' for update"; // 使用"FOR UPDATE"得到表的写锁
rs = stmt.executeQuery(sql1);
if (rs.next()) {
BLOB blob = (BLOB) rs.getBlob(1); // 得到BLOB对象
OutputStream outout = blob.getBinaryOutputStream(); // 建立输出流
InputStream in = new ByteArrayInputStream(strss.HTMLEncode(context).getBytes()); //字符串转换为数据流
int size = blob.getBufferSize();
byte[] buffer = new byte[size]; // 建立缓冲区
int len;
while ((len = in.read(buffer)) != -1)
outout.write(buffer, 0, len);
in.close();
outout.close();
}
conn.commit();
stmt.close();
conn.close();
}catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
希望能帮助到你
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
guoqingcun
2012-12-27 · 贡献了超过105个回答
知道答主
回答量:105
采纳率:0%
帮助的人:23.8万
展开全部
用byte类型
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式