欢迎来到天天文库
浏览记录
ID:19095374
大小:22.79 KB
页数:20页
时间:2018-09-28
《讲解Java从数据库中读取Blob对象图片并显示的方法》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、讲解Java从数据库中读取Blob对象图片并显示的方法 本文实例讲述了Java从数据库中读取Blob对象图片并显示的方法。分享给大家供大家参考。具体实现方法如下: 第一种方法: 大致方法就是,从数据库中读出Blob的流来,写到页面中去: 复制代码代码如下:Connectionconn=(); Stringsql="SELECTpictureFROMteacherWHEREid=1"; PreparedStatementps=null; ResultSetrs=null; InputStreamis=null; OutputStreamos=null;
2、try{ ps=(sql); rs=(); if(()){ is=(1); } ("text/html"); os=(); intnum; bytebuf=newbyte; while((num=(buf))!=-1){ (buf,0,num); } }catch(SQLExceptione){ (); } try{ (); (); (); (); }catch(SQLExceptione){ (); } 在页面中: 复制代码代码如下: Stringpath=(); StringbasePath=()+"://"+()
3、+":"+()+path+"/"; %> 搞定。 第二种方法: 整个流程分为四步,连接oracle数据库->读取blob图片字段->对图片进行缩放->把图片展示在jsp页面上。 复制代码代码如下:import*; import*; import; import; import; import; publicclassOracleQueryBean{ privatefinalStringoracleDriverName=""; privateConnectionmyConnection=null; privateStringstrTabNam
4、e; privateStringstrIDName; privateStringstrImgName; publicOracleQueryBean(){ try{ (oracleDriverName); }catch(ClassNotFoundExceptionex){ ("加载jdbc驱动失败,原因:"+()); } } publicConnectiongetConnection(){ try{ //用户名+密码;以下使用的Test就是Oracle里的表空间 //从配置文件中读取数据库信息 GetParaoGetPara=newGetPara
5、(); StringstrIP=("serverip"); StringstrPort=("port"); StringstrDBName=("dbname"); StringstrUser=("user"); StringstrPassword=("password"); =("tablename"); =("imgidname"); =("imgname"); StringoracleUrlToConnect="jdbc:oracle:thin:@"+strIP+":"+strPort+":"+strDBName; =(oracleUrlToCon
6、nect,strUser,strPassword); }catch(Exceptionex){ ("Cannotgetconnection:"+()); ("请检测配置文件中的数据库信息是否正确."); } return; } } 2.读取blob字段 在OracleQueryBean类中增加一个函数,来进行读取,具体代码如下: 复制代码代码如下:publicbyteGetImgByteById(StringstrID,intw,inth){ //("Getimgdatawhichidis"+nID); if(myConnection==null)
7、 (); bytedata=null; try{ Statementstmt=(); ResultSetmyResultSet=("select"+ +"from"+ +"where"+ +"="+strID); StringBuffermyStringBuffer=newStringBuffer(); if(()){ blob=(); InputStreaminStream=(); try{ longnLen=(); intnSize=(int)nLen; //("imgdatasizeis:"+n
此文档下载收益归作者所有