當前位置:首頁 » 參考文獻 » 資料庫圖片顯示jsp

資料庫圖片顯示jsp

發布時間: 2021-03-18 07:24:04

① 如何用JSP從SQL server資料庫中讀取圖片並顯示在網頁上

你可以把圖片的路徑作為參數放在資料庫的某一個欄位中,需要用時提取出來即版可.
例如:
"image/pic1.jpg" 這是一個相對權路徑,你把這個字元串存入資料庫後,需要用時只需從資料庫提取出來就行,
<img src="
<%
String str=select * from 表名 where 條件;
ResultSet rs = null;
Statement stmt = conn.createStatement();
rs=stmt.executeQuery(str);
str=rs.getString("欄位名");
out.print(str);
%>">

② jsp中顯示資料庫中圖片和文字

可以提前把圖片和文字寫好放在頁面中,屬性設為隱藏,調用的時候用js控制,把屬性改為顯示就行

③ 如何檢索和顯示資料庫中的圖像在 jsp 頁中

用JSP從資料庫中讀取圖片並顯示在網頁上:
環境mysql+tomcat:
<1>先在mysql下建立如下的table. 並insert圖像
mysql.sql文件如下:
CREATE TABLE photo (
photo_no int(6) unsigned NOT NULL auto_increment,
image blob,
PRIMARY KEY (`photo_no`)
)

<2>把show.jsp放在tomcat的任意目錄下. show.jsp作用:從資料庫中讀出blob,並產生image/jpg.
show.jsp文件如下:
<%@ page contentType="text/html; charset=gbk" %>
<%@ page import="java.io.*"%>
<%@ page import="java.sql.*, javax.sql.*" %>
<%@ page import="java.util.*"%>
<%@ page import="java.math.*"%>
<%
String photo_no = request.getParameter("photo_no");
//mysql連接
Class.forName("com.mysql.jdbc.Driver").newInstance();
String URL="jdbc:mysql://localhost:3306/job?user=root&password=111111";
Connection con = DriverManager.getConnection(URL);

//oracle連接
//String URL="jdbc:oracle:thin@localhost:1521:orcl2";
//user="system";
//password="manager";
//Connection con = DriverManager.getConnection(URL,user,password);

try{
// 准備語句執行對象
Statement stmt = con.createStatement();
String sql = " SELECT * FROM PHOTO WHERE photo_no = "+ photo_no;
ResultSet rs = stmt.executeQuery(sql);
if (rs.next()) {
Blob b = rs.getBlob("photo_image");
long size = b.length();
//out.print(size);
byte[] bs = b.getBytes(1, (int)size);
response.setContentType("image/jpeg");
OutputStream outs = response.getOutputStream();
outs.write(bs);
outs.flush();
rs.close();
}
else {
rs.close();
response.sendRedirect("./images/error.gif");
}
}
finally{
con.close();
}
%>

<3>把如下文件放在show.jsp的同一目錄下.
index.html文件如下:
<HTML>
<HEAD>
<TITLE> 圖像測試 </TITLE>
</HEAD>
<BODY>
<TABLE>
<TR>
<TD>圖像測試</TD>
</TR>
<TR>
<TD><img src="show.jsp?photo_no=2"></TD>
</TR>
</TABLE>
</BODY>
</HTML>

④ 怎麼把資料庫里的圖片顯示到jsp

從資料庫中查找圖片的二進制數據,把查找出來的數據set到會話request.getSession().setAttribute("img",圖片的二進制數據 );

⑤ jsp顯示資料庫圖片問題

你是把圖片放到資料庫裡面吧?
一般來說,這個是沒有錯的。不過實際上,如果資料庫放入大量圖片,又會有那個伺服器可以支持?
所以,一般來說,資料庫裡面的所謂圖片,其實是該圖片在伺服器裡面的一個路徑位置,如c:\mypicture\01.jpeg。
然後在頁面只是資料庫中的路徑,通過jsp或者html的標簽實現頁面顯示功能。

⑥ 請問如何從mysql資料庫中讀取圖片路徑然後將圖片顯示在Jsp頁面上

在添加一個欄位用於記錄圖片路徑,通過
sql語句
對表
進行查詢,在jsp頁面中顯示相應欄位。

⑦ 資料庫中照片怎麼在jsp中顯示

用JSP從資料庫中讀取圖片並顯示在網頁上:
環境mysql+tomcat:
<1>先在mysql下建立如下的table. 並insert圖像
mysql.sql文件如下:
CREATE TABLE photo (
photo_no int(6) unsigned NOT NULL auto_increment,
image blob,
PRIMARY KEY (`photo_no`)
)

<2>把show.jsp放在tomcat的任意目錄下. show.jsp作用:從資料庫中讀出blob,並產生image/jpg.
show.jsp文件如下:
<%@ page contentType="text/html; charset=gbk" %>
<%@ page import="java.io.*"%>
<%@ page import="java.sql.*, javax.sql.*" %>
<%@ page import="java.util.*"%>
<%@ page import="java.math.*"%>
<%
String photo_no = request.getParameter("photo_no");
//mysql連接
Class.forName("com.mysql.jdbc.Driver").newInstance();
String URL="jdbc:mysql://localhost:3306/job?user=root&password=111111";
Connection con = DriverManager.getConnection(URL);

//oracle連接
//String URL="jdbc:oracle:thin@localhost:1521:orcl2";
//user="system";
//password="manager";
//Connection con = DriverManager.getConnection(URL,user,password);

try{
// 准備語句執行對象
Statement stmt = con.createStatement();
String sql = " SELECT * FROM PHOTO WHERE photo_no = "+ photo_no;
ResultSet rs = stmt.executeQuery(sql);
if (rs.next()) {
Blob b = rs.getBlob("photo_image");
long size = b.length();
//out.print(size);
byte[] bs = b.getBytes(1, (int)size);
response.setContentType("image/jpeg");
OutputStream outs = response.getOutputStream();
outs.write(bs);
outs.flush();
rs.close();
}
else {
rs.close();
response.sendRedirect("./images/error.gif");
}
}
finally{
con.close();
}
%>

<3>把如下文件放在show.jsp的同一目錄下.
index.html文件如下:
<HTML>
<HEAD>
<TITLE> 圖像測試 </TITLE>
</HEAD>
<BODY>
<TABLE>
<TR>
<TD>圖像測試</TD>
</TR>
<TR>
<TD><img src="show.jsp?photo_no=2"></TD>
</TR>
</TABLE>
</BODY>
</HTML>

⑧ 讀取保存在資料庫里的圖片JSP頁面顯示無法顯示圖片

我把你的代碼稍微改造了下,我這邊是可以顯示圖片的。代碼如下:


資料庫操作部分:

packagecom.database;

importjava.io.InputStream;
importjava.sql.*;

/**
*@作者王建明
*@創建日期13-10-7
*@創建時間下午12:32
*@版本號V1.0
*/
publicclassDataBaseUtil{
(){
Connectionconn=null;
try{
Class.forName("com.mysql.jdbc.Driver");
conn=
DriverManager.getConnection("jdbc:mysql://localhost/quickstart","root","123456");
Statementstmt=conn.createStatement();
Stringsql="selectbook_imagefromtbl_bookwhereid=1";

ResultSetrs=stmt.executeQuery(sql);
if(rs.next()){
returnrs.getBinaryStream("book_image");
}

}catch(Exceptione){
System.out.println("出現異常:"+e.getMessage());
}finally{
try{
if(conn!=null)
conn.close();
}catch(SQLExceptione){
e.printStackTrace();
}
}
returnnull;
}
}


servlet部分:

packagecom.servlet;

importcom.database.DataBaseUtil;

importjavax.servlet.ServletException;
importjavax.servlet.http.HttpServlet;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;
importjava.io.IOException;
importjava.io.InputStream;
importjava.io.OutputStream;

/**
*@作者王建明
*@創建日期13-10-7
*@創建時間下午12:18
*@版本號V1.0
*/
{
protectedvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{
doGet(request,response);
}

protectedvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{
InputStreamin=DataBaseUtil.getImageStreamFromDataBase();
OutputStreamtoClient=response.getOutputStream();
response.reset();
response.setContentType("image/jpg");//或gif
intlen=10*1024*1024;
byte[]P_Buf=newbyte[len];
inti;
while((i=in.read(P_Buf))!=-1){
toClient.write(P_Buf,0,i);

}
in.close();
toClient.flush();
toClient.close();
}
}


web.xml中的servlet配置:

<servlet>
<servlet-name>ShowImage</servlet-name>
<servlet-class>com.servlet.ShowImage</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ShowImage</servlet-name>
<url-pattern>/showImage</url-pattern>
</servlet-mapping>


頁面中載入圖片方式:

<imgsrc="showImage"/>


希望對你有幫助O(∩_∩)O~

⑨ 從資料庫中取出圖片的二進制數據怎樣顯示在jsp頁面各位大神,救急。。。

最好資料庫中就存在圖片的存儲位置,這樣取到圖片時候就可以直接顯示了,存儲二進制太麻煩了。。。

⑩ jsp從資料庫中讀取圖片顯示不出來

/SkyShop/images/brand/2010/02/09/09/4599577f-7fca-4163-a752-24a3e331ea39.jpg
像一樓說的是正解,不行的原因可能是根的位置問題,自己對著檢查一下。
另外你這個路徑太長。。太不好測試了,先弄個簡單點的。
你右鍵點圖片,屬性的地址應該是
http://localhost:8080/SkyShop/images/brand/2010/02/09/09/4599577f-7fca-4163-a752-24a3e331ea39.jpg
這個才是你的伺服器上圖片的地址。E:的是計算機的真實路徑,和伺服器上的絕對路徑,相對路徑不是一回事。伺服器啟動後,只能訪問當前伺服器路徑之內的文件,而windows下打開html文件不受此限制,所以不能用計算機的路徑。
保存到tomcat中就是保存到項目中了,如果你希望保存到源代碼中,可以去改tomcat的server.xml配置文件,
<Context path="/" docBase="D:\workspace\SkyShop\ROOT"
debug="0" privileged="true">

</Context>
並刪除webapps下的內容。
或者以流的方式將寫到圖片寫到資料庫中。

最後建議你去看看關於相對路徑的文章,篇幅有限,說的還是不太清楚。

熱點內容
塗鴉論文 發布:2021-03-31 13:04:48 瀏覽:698
手機資料庫應用 發布:2021-03-31 13:04:28 瀏覽:353
版面217 發布:2021-03-31 13:04:18 瀏覽:587
知網不查的資源 發布:2021-03-31 13:03:43 瀏覽:713
基金贖回參考 發布:2021-03-31 13:02:08 瀏覽:489
懸疑故事範文 發布:2021-03-31 13:02:07 瀏覽:87
做簡單的自我介紹範文 發布:2021-03-31 13:01:48 瀏覽:537
戰略地圖參考 發布:2021-03-31 13:01:09 瀏覽:463
收支模板 發布:2021-03-31 13:00:43 瀏覽:17
電氣學術會議 發布:2021-03-31 13:00:32 瀏覽:731