Java利用Eclipse和Mysql資料庫連接並儲存圖片——取出圖片

來源:互聯網
上載者:User

標籤:java mysql 資料庫 圖片儲存

通過流和JPEGCodec、JPEGImageEncoder類的操作來取出資料庫中的圖片。注釋很詳細,注意要額外的引入mysql的驅動包,要修改資料庫的使用者名稱和密碼以及URL。希望對大家有協助。import java.awt.image.BufferedImage;import java.io.*;import java.sql.Blob;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import com.sun.image.codec.jpeg.JPEGCodec;import com.sun.image.codec.jpeg.JPEGImageEncoder;import javax.imageio.ImageIO;public class getImage { //串連資料庫的相關資訊 static String user = "username";//用自己的使用者名稱 static String driver = "com.mysql.jdbc.Driver"; static String password = "password";//用自己的密碼 static String url = "jdbc:mysql://localhost:4017/image";//自己的資料庫地址 public static void main(String[]args){  try {   Class.forName(driver);//載入驅動   Connection con = DriverManager.getConnection(url,user,password);//獲得Connection對象   PreparedStatement ps = con.prepareStatement("select photo from photo where name = ‘z‘");   ResultSet rs = ps.executeQuery();   rs.next();//移動到第一行上   Blob blob = (Blob)rs.getBlob("photo");//獲得資料庫中的Blob對象,即映像   File file = new File("D:/1.jpg");//指定檔案的輸出路徑和檔案名稱   if(!file.exists())//判斷,如果檔案不存在,則建立檔案    file.createNewFile();   FileOutputStream fos = new FileOutputStream(file);//根據指定的路徑,建立檔案輸出資料流   BufferedInputStream in = new BufferedInputStream(blob.getBinaryStream());//將得到的檔案寫入流中   //System.out.println(in);//測試內容是否為空白   BufferedImage image = ImageIO.read(in);//將流轉換為Image對象   JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(fos);   encoder.encode(image);  } catch (Exception e) {   e.printStackTrace();  } }}

本文出自 “低調的氣質” 部落格,請務必保留此出處http://6641091.blog.51cto.com/6631091/1543300

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.