In diesem Artikel wird die JDBC-Programmiermethode zum Speichern von Dateien und Bildern anhand von Beispielen beschrieben. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:
/*Funktion implementiert: Verwenden Sie die Datenbank zum Speichern von Textdaten, lesen Sie sie aus und stellen Sie sie zur Analyse in das aktuelle Projekt ein. Der Schlüssel liegt darin, den Dateifluss zu beherrschen , aber es gibt mehr Lese- und Schreibvorgänge für den Dateifluss. Datum: 20131003 Autor: Yan Dayangzi*/public class Ckb_test { public static void main(String[] args) throws SQLException, IOException { // TODO Automatisch generierter Methoden-Stub-Lesen (); } static void create() throws SQLException, IOException { Connection conn=null; ResultSet resultset=null; //Einzelfall-Designmodus conn=JdbcUtilsSingle. getInstance ().getConnection(); //3. Anweisung erstellen String sql="insert into ckb_test(text) Values(?)"; prest=conn.prepareStatement(sql); File file=new File("src/cn/com/JDBC/JdbcUtils.java"); Reader reader=new BufferedReader(new FileReader(file )); prest.setCharacterStream(1, reader, (int)file.length()); //4 i=prest.execute(); SQLException, IOException { Connection conn=null; Statement st=null; ResultSet resultset=null; //2. Eine Verbindung herstellen conn=JdbcUtils.getConnection(); //Einzelfall-Designmodus conn=JdbcUtilsSingle.getConnection(); //3. 4. Execute-Anweisung resultset=st.executeQuery("select text from ckb_test"); //5. Verarbeiten Sie die Ergebnisse while(resultset.next()) { Clob clob=resultset.getClob(1); //reader=resultset.getCharacterStream(1); Datei ("JdbcUtils.java"); Writer write=new BufferedWriter(new FileWriter(file)); char[1024]; for(int i=0;(i=reader.read(buff))>0;) {writer.write(buff,0,i }writer.close(); ; } } Finally { JdbcUtils.free(resultset, st, conn); } }}/*Funktion implementiert: Verwenden Sie die Datenbank, um Bilddaten zu speichern, und lesen Sie sie aus und fügen Sie sie zur Analyse in das aktuelle Projekt ein: Es ist nicht sehr schwierig, den Byte-Stream zu beherrschen. Es gibt nicht viele Operationen zum Lesen und Schreiben von Datei-Streams. Achten Sie darauf, das Verzeichnisdatum des Bildes zu ändern: 20131003 Dayangzi*/public class PictureBlob { public static void main(String[] args) throws SQLException, IOException { read(); } static void create() throws SQLException, IOException { Connection conn=null; ResultSet resultset=null; try { //2. Eine Verbindung herstellen conn=JdbcUtils.getConnection(); // Singleton-Designmodus conn=JdbcUtils().getConnection(); insert into blob_test(big_bit) Values(?)"; prest=conn.prepareStatement(sql); File file=new File("C://Dokumente und Einstellungen//Administrator//Eigene Dateien//Meine Bilder//cxg.jpg"); InputStream in=new BufferedInputStream(new FileInputStream(file)); (int)file.length()); //4. Execute-Anweisung int i=prest.execute(); System.out.println("i="+i); } Finally { JdbcUtils.free(resultset, prest, conn); } static void read() throws SQLException, IOException { Connection conn=null; Statement st=null; ResultSet resultset=null; try { //2. Eine Verbindung herstellen conn=JdbcUtils.getConnection(); //Einzelfall-Designmodus conn=JdbcUtilsSingle.getConnection(); //3. Anweisung ausführen st=st.executeQuery("select big_bit from blob_test" ); //5. Verarbeiten Sie die Ergebnisse while(resultset.next()) { Blob blob=resultset.getBlob(1); InputStream in=blob.getBinaryStream(); //reader=resultset.getCharacterStream(1); File file=new File("1.jpeg"); =new byte[1024]; for(int i=0;(i=in.read(buff))>0;) { out.write(buff,0,i); } out.close(); in.close(); schließlich { JdbcUtils.free(resultset, st, conn);
Ich hoffe, dass dieser Artikel für alle in der Java-Programmierung hilfreich sein wird.