當前位置:首頁 » 操作系統 » java圖片保存資料庫

java圖片保存資料庫

發布時間: 2023-03-11 09:19:04

java如何存儲圖片到資料庫,存路徑和二進制是什麼意思

一種方法是把圖像文件本身放在某個文件夾里,然後在數據表裡設一個「路徑「欄位,類型為字元串,存圖像的路徑(比如「D:\files\xxx.jpg」)。
另一種方法是,把圖像文件本身,作為一個巨大的二進制數據,放在資料庫中;具體方法是,數據表中設置一個」數據「欄位,類型是二進制數據,存放圖像本體。

⑵ 用java語言我怎麼把圖片存放到資料庫然後在取出來啊

如果要存資料庫的話,資料庫存圖片欄位用blob形式的(照片:zp為例)。
而且不能直接存,在存之前zp欄位先插入一個empty.BLOB(),
然後select ZP from 表 for update。再用輸入流的形式寫進去。
// 先檢索出來欄位,必須使用oracle的類:oracle.sql.BLOB
oracle.sql.BLOB blob = null;
if (rs.next())
{
blob = (oracle.sql.BLOB) rs.getBlob("ZP");
// 到資料庫的輸出流
OutputStream outStream = blob.getBinaryOutputStream();
// 將輸入流寫到輸出流
byte[] b = new byte[blob.getBufferSize()];
int len = 0;
while ((len = is.read(b)) != -1)
{
outStream.write(b, 0, len);
// blob.putBytes(1,b);
}
is.close();
outStream.flush();
outStream.close();
}
取照片的話,取出來轉化成流的形式直接創建jpg文件就行了。
Blob b = rs.getBlob("ZP");
File f = null;
if (b != null) {
is = b.getBinaryStream();
f = new File( "c:\\zp.jpg");
if (!f.exists()) {
f.createNewFile();
}
os = new FileOutputStream(f);
int len;
byte buf[] = new byte[2048];
while ((len = is.read(buf)) != -1) {
os.write(buf, 0, len);
}
is.close();
os.flush();
os.close();
}
強烈建議只存取照片路徑,這樣方便。

⑶ 在java代碼中怎麼從伺服器上把圖片拿來放到資料庫里

大概流程:
1.上傳插件的選擇:此篇博文選擇的是jQuery的zyupload文件上傳插件;
2.上傳請求發起後,java代碼的處理:你是要將上傳的圖片只保存在伺服器還是只保存在資料庫還是說兩者都採取。上傳到伺服器很簡單,保存到資料庫也很簡單,但是此處需要考慮業務,圖片保存在資料庫時採用哪種保存方式(本博文業務來自於項目,因為圖片數量巨多,故在資料庫是通過保存圖片的路徑實現的,並非二進制流);
3.圖片保存在資料庫後,在前段頁面的回顯功能。

⑷ 如何在Java程序中選擇添加圖片,再存到資料庫中

存儲圖片:

//載入驅動程序類
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

Connection con=DriverManager.getConnection("jdbc:odbc:denglu","sa","sa");
//建立資料庫聯機,其中denglu為資料庫名,sa為連接資料庫的帳號及密碼。
Statement stmt=con.createStatement(); //建立Statement對象

FileInputStream str=new FileInputStream(filename); //圖片文件路徑
String sql="insert into picturenews(id,image) values(?,?,?)";
PreparedStatement pstmt=con.prepareStatement(sql);
pstmt.setString(1,id); //ID號
pstmt.setBinaryStream(2,str,str.available()); //圖片數據
pstmt.execute();
//將數據存入資料庫
out.println("Success,You Have Insert an Image Successfully");

圖片讀取:

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

Connection con=DriverManager.getConnection("jdbc:odbc:denglu","sa","sa");
Statement stmt=con.createStatement();
ResultSet rs=null;
String sql = "select image from picturenews WHERE id="+id;

rs=stmt.executeQuery(sql);
if(rs.next()) {
//圖片輸出的輸出流
InputStream in = rs.getBinaryStream("image");
byte b[] = new byte[0x7a120];
for(int i = in.read(b); i != -1;)
{
//將緩沖區的輸入輸出到頁面
in.read(b);
}
}

/**
* 獲得數據後可以按照自己的方法進行處理或者顯示
*/
JLabel label=new JLabel(new ImageIcon(b)); //用JLabel進行顯示

.....

⑸ 在java中如何將圖片保存到資料庫

存取圖片就是二進制數據的存取問題
把圖片以文件的時候讀入到程序中
轉換成byte
以byte顯示保存到資料庫中
另外,access保存文件~~不合適~
---------------------------
顯示和存儲沒關系,看你要怎麼顯示了~顯示到瀏覽器?

⑹ Java web 問題圖片怎麼存儲到資料庫。

一般資料庫只存圖片的路徑。你可以在web下建一個目錄(images),然後把上傳的圖片放在裡面。最好是用系統時間命名,避免沖突。
具體路徑是通過request.getRealPath("images")得到,讓後把圖片改名放進去。

資料庫記住相對的路徑(1111.jpg)就可以了,在頁面可以<img src="$contextPath/imags/1111.jpg" .../>

⑺ Java web開發中怎麼把圖片存入資料庫

兩種方式:

  1. 把圖片轉換 『流數據』 直接存在資料庫圖片欄位中。

  2. 把圖片 『流數據』 存在文件夾內,資料庫欄位存對應圖片地址。

    第一種因為是直接存圖片數據,寫入讀取比第二種慢,會佔用資料庫資源。

    硬碟速度 > 資料庫

    圖片轉換成流數據,流轉換成圖片,具體方法你需要搞懂。看博客看到的。(我也沒寫過 [滑稽])

⑻ 在java中如何將圖片保存到資料庫

最好不要保存圖片只存路徑。
非要傳的話保存二進制的流就可以了。

⑼ java讀取照片保存到達夢資料庫

存儲圖片是後端伺服器比較基礎的功能,一般來說,圖片可以存儲在伺服器的文件系統中,然後資料庫中只需要存儲url就可以了。另外一種辦法是,將圖片通過Base64編碼後存儲到資料庫中,資料庫中存儲圖片的base64編碼的二進制可以使用TEXT(mysql)類型。

⑽ java怎樣把圖片保存到資料庫然後讀出來在html中顯示

一般是將圖片本體存放到OSS,圖片的路徑存放到資料庫,然後jsp中獲取的是他的路徑
然後用<img src="OSS的鏈接/"+你資料庫的圖片路徑> 你可以用本地圖片試試 將圖片本體存放在你的E盤/image下面 然後你存入資料庫的是你的圖片名 然後將圖片上傳到本地 然後使用<img src='E盤/image'+資料庫裡面的圖片名> 就可以顯示了 你可以試試

熱點內容
怎麼進伺服器我的世界電腦版 發布:2025-08-22 13:40:18 瀏覽:901
電腦伺服器響應 發布:2025-08-22 13:28:07 瀏覽:989
彩虹島北部1腳本 發布:2025-08-22 13:28:06 瀏覽:934
突襲風暴源碼 發布:2025-08-22 13:03:28 瀏覽:210
海康威視碼流加密 發布:2025-08-22 12:53:05 瀏覽:869
sqlserver2005無法連接 發布:2025-08-22 12:46:24 瀏覽:502
簡單的宏程序編程 發布:2025-08-22 12:45:38 瀏覽:469
圖片網站php源碼 發布:2025-08-22 12:37:50 瀏覽:35
sqlserver生成腳本 發布:2025-08-22 12:37:38 瀏覽:530
客戶機如何上傳資源給伺服器 發布:2025-08-22 12:36:11 瀏覽:521