當前位置:首頁 » 操作系統 » jsp讀取資料庫的圖片

jsp讀取資料庫的圖片

發布時間: 2022-04-19 17:53:00

1. jsp讀取資料庫的圖片

你資料庫里存的路徑是相對項目的路徑還是相對磁碟的文件路徑??
如果是類似於E:\images\demo.jpg這樣的路徑存到資料庫里也不能直接顯示,只能用IO將文件讀到流裡面在頁面上輸出才可以顯示圖片
是相對於項目的路徑images/demo.jpg這樣的路徑樓上的答案就可以解決你的問題了。

2. jsp頁面從資料庫中取圖片

把圖片圖片放到一個文件夾里如images下有1.jpeg
查詢資料庫得到數據1.jpeg
將查詢到的數據和圖片地址進行拼接 ……/images/<%=值%>

3. jsp顯示資料庫存儲目錄的圖片

首先,代碼是不會有的了。
其次你要把圖片存入資料庫,資料庫只存儲圖片的目錄。這兩句話本身就互斥好吧……姑且以後半句為例,講講思路。
你在一個文件夾中存儲了圖片,在資料庫里應該有個表。這個表起碼有ID,有文件名filename,有路徑這三個欄位。路徑path存儲的是相對路徑,並且是你項目有權訪問的路徑。
java程序中讀取這個表的數據,將path和filename拼接成完整的相對路徑+文件名的形式。在eclipse中新建jsp的時候,會自動生成獲取basePath的代碼。basePath是當前頁面所在項目的根目錄,用basePath
+
path
+
filename就可以顯示出圖片了

4. 如何用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);
%>">

5. 如何讀取JSP頁面的圖片路徑存在資料庫中

你把輸入yu的
字元串
拿到後,把它節下來,把相應
路徑
放到資料庫裡面,如果是要顯示出來的話,要看看你的、
頁面
相對於那個放在資料庫里的路徑做相應的操作,把路徑拼出來就行了,這個我做過了,很成功

6. 怎麼用jsp從mysql資料庫中提取圖片

1.去文件名
也就是你的圖片實際上是存在你的項目中的
讀的只是你的文件名加上路徑就行了,
2.添加圖片的時候,以IO的形式,把圖片真真讀到資料庫,取的時候,取出來,進行一次轉換,顯示圖片。
我知道的就是這兩種思路
希望對你有用!

7. JSP 從資料庫中如何取得圖片的路徑

我的筆記:
6:對資料庫存取圖片進行的操作:

核心思想:通過二進制流的形式進行存儲和讀取。
具體:存儲圖片:一般是通過文件上傳的方式進行存儲的

1.首先通過request獲得表單中圖片的地址

2.然後根據這個路徑可以使FileInputStream獲得文件輸入流

3.pstmt.setBinaryStream(i,
fis,
fis.available())
最後pstmt.executeUpdate();就完成整個插入語句了。

讀取:1.根據url的id傳一個對應資料庫摸個圖片的id號

2.根據這個id執行查詢,通過rst.getBinaryStream(1)返回一個輸入流(裡面存的是圖片)

3.讀輸入流,放到位元組數組中,再通過response返回一個能輸出二進制流的ServletOutputStream實例(ServletOutputStream
sos=
response.getOutputStream();
),

4.通過這個輸出流把位元組數組的位元組流寫出
希望對你有所幫助哈

8. 讀取保存在資料庫里的圖片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~

9. 真是怪事,jsp中從資料庫中顯示圖片的問題

代碼不全,也就不能仔細說了,就事論事吧
1.你要注意,資料庫里存的圖片的路徑是絕對路徑還是相對路徑,如果測試階段總是圖片出問題,先暫時換成絕對路徑,測試通過說明代碼沒問題了,再換成相對路徑。
2.如果採用相對路徑的話,推薦加上basepath設置,以下來自myEclipse:
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<base href="<%=basePath%>">
這樣的話,路徑就都有了統一的參照點,就不容易出問題了。
3.你的代碼我沒去試,不過我的圖片顯示一般是通過<img/>標簽,畢竟有專門給的,還去寫麻煩的幹啥,而且寫js的時候也方便。
4.搜狗瀏覽器有兩個內核,一個IE,另一個忘記了,沒怎麼用過。IE內核對好多的東西是支持很差(但。。至少圖片顯示不會有問題的。。。。不用說,你沖著路徑方向找吧!),開發起來讓人反胃,但奈何人家客戶群大,將就吧,沒辦法。

10. 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下的內容。
或者以流的方式將寫到圖片寫到資料庫中。

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

熱點內容
sqlserver運行存儲過程 發布:2024-09-30 21:05:32 瀏覽:207
見主機諾亞入口密碼多少 發布:2024-09-30 20:56:18 瀏覽:257
配置都夠了為什麼玩lol還卡 發布:2024-09-30 20:51:10 瀏覽:313
haskell函數式編程 發布:2024-09-30 20:50:35 瀏覽:597
sql月的最後一天 發布:2024-09-30 20:41:50 瀏覽:730
python列表生成器if 發布:2024-09-30 20:41:46 瀏覽:494
小米手機部落沖突賬號密碼是什麼 發布:2024-09-30 20:40:07 瀏覽:67
linux運維自動化腳本 發布:2024-09-30 20:36:59 瀏覽:597
變聲器最低配什麼配置 發布:2024-09-30 20:29:48 瀏覽:414
devc編譯程序被傳染病毒 發布:2024-09-30 20:29:47 瀏覽:292