如何用j输出存在于oracle数据库Blob字段中的jpg图片_JSP技巧_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

如何用j输出存在于oracle数据库Blob字段中的jpg图片

作者:黑客防线网安JSP教程基地 来源:黑客防线网安JSP教程基地 浏览次数:0

本篇关键词:图片数据库输出存在
黑客防线网安网讯:在web-oa系统中,档案管理好象不可或缺。其中员工照片常常做成这样:用户通过浏览器上传员工相片,服务端程序接收图片文件,保存到数据库中的某个表的Blob字段里(关于文件上传和blob字段的更新,...

在web-oa系统中,档案管理好象不可或缺其中员工照片常常做成这样:用户通过浏览器上传员工相片,服务端程序接收图片文件,保存到数据库中的某个表的Blob字段里(关于文件上传和blob字段的更新通过(jdbc/jdo)和(jsp/servlet),服务器再把保存在Blob字段中的图片文件展现给用户。我这里给出一个关于展现的简单例子。

 

1.在数据库中建表并且表要包含Blob字段。

2.用plsql developer这种客户端数据库工具,修改某条记录的Blob字段,存入一个jpg文件。

3.用jdbc或者hibernate获取某条记录的Blob字段数据。(请参考参考资料2)

4.写一个jsp文件,来输出图片。如下所示

 

//////////////////////cwry_pic.jsp/////////////////////////

<%@page import="java.io.*"%>

<%@page import="com.jagie.business.profile.*" %>

<%@page import="java.sql.Blob"%>

<%

response.reset();

//这个设置很重要,否则客户端浏览器不能识别输出内容,导致弹出下载的对话框。

response.setContentType("image/jpeg");

ServletOutputStream sos = response.getOutputStream();

//这里是用hibernate来根据id装载对象,你可以用别的方式如jdbc来组装对象,附文中有

//BaseInfo这个javabean的示意性代码.

BaseInfo bif= ProFileOperator.loadProFile(Long.valueOf("1"));

//输出图片

if(bif!=null&&bif.getPic()!=null){

Blob blob=(Blob)bif.getPic();

InputStream pi = blob.getBinaryStream();

int blobsize = (int)blob.length();

byte[] blobbytes = new byte[blobsize];

int bytesRead = 0;

while ((bytesRead = pi.read(blobbytes)) != -1) {

sos.write(blobbytes, 0, bytesRead);

}

pi.close();

sos.flush();

}

%>

 

发布这个jsp到你的web服务器,再用浏览器访问这个jsp页面你就可以看到保存在Blob字段中的图片了。

 

附文:

 

///////////////////BaseInfo.java示意性代码///////////////////////

package点com.jagie.business.profile;

public class BaseInfo{

//pk

private Long id;

//相片

private java.sql.Blob pic;

public Long getId() {

return id;

}

public void setId(Long id) {

this.id = id;

}

 

public java.sql.Blob getPic() {

return pic;

}

public void setPic(java.sql.Blob pic) {

this.pic = pic;

}

}

 

最后,希望这篇文章能对你有所启发,如有错误,敬请批评指正!

    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-16640-1.html
网站维护教程更新时间:2023-02-17 12:30:27  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer