توضح هذه المقالة طريقة برمجة JDBC لتخزين الملفات والصور من خلال الأمثلة. شاركها مع الجميع للرجوع إليها، التفاصيل كالتالي:
/*تم تنفيذ الوظيفة: استخدم قاعدة البيانات لتخزين البيانات النصية وقراءتها ووضعها في المشروع الحالي لتحليلها: المفتاح هو إتقان تدفق الملف وليس هناك العديد من العمليات ، ولكن هناك المزيد من القراءة والكتابة لتدفق الملف التاريخ: 20131003 المؤلف: Yan Dayangzi*/public class Ckb_test { public static void main(String[] args) throws SQLException, IOException { // قراءة كعب الطريقة التي تم إنشاؤها تلقائيًا في TODO. ()؛ } الفراغ الثابت create() throws SQLException, IOException { Connection conn=null; PreparationStatement prest=null; ResultSet resultset=null; محاولة { //2. إنشاء اتصال conn=JdbcUtils.getConnection(); getInstance ().getConnection(); //3. إنشاء بيان 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. تنفيذ البيان int i=prest.executeUpdate(); Reader.Close(); System.out.println("i="+i); أخيرًا { JdbcUtils.free(resultset, prest, conn); SQLException, IOException { Connection conn=nullSt=null; //2. إنشاء اتصال conn=JdbcUtils.getConnection(); // وضع تصميم الحالة الفردية conn=JdbcUtilsSingle.getInstance().getConnection(); //3. 4. تنفيذ العبارة resultset=st.executeQuery("select text from ckb_test"); //5. معالجة النتائج while(resultset.next()) { Clob clob=resultset.getClob(1); Reader Reader=clob.getCharacterStream(); //reader=resultset.getCharacterStream(1); File ("JdbcUtils.java"); Writer=new BufferedWriter(new FileWriter(file)); char[1024]; for(int i=0;(i=reader.read(buff))>0;) {writer.write(buff,0,i }writer.إغلاق(); } } أخيرًا { JdbcUtils.free(resultset, st, conn } }}/*تم تنفيذ الوظيفة: استخدم قاعدة البيانات لتخزين بيانات الصورة وقراءتها ووضعها في المشروع الحالي للتحليل: المفتاح ليس صعبًا للغاية هو إتقان تدفق البايت. لا توجد عمليات كثيرة في قاعدة البيانات، ولكن هناك العديد من عمليات القراءة والكتابة لتدفقات الملفات. انتبه إلى تغيير تاريخ دليل الصورة: 20131003 المؤلف: Yan Dayangzi*/public class PictureBlob { public static void main(String[] args) throws SQLException, IOException { read() } static void create() throws SQLException, IOException { Connection conn=null PreparationStatement prest=null; ResultSet results=null; حاول { //2. إنشاء اتصال conn=JdbcUtils.getConnection(); // وضع التصميم المفرد conn=JdbcUtilsSingle.getInstance().getConnection(); أدخل في قيم blob_test(big_bit)(؟)"; prest=conn.prepareStatement(sql); ملف الملف=جديد File("C://Documents and Settings//Administrator//My Documents//My Pictures//cxg.jpg"); InputStream in=new BufferedInputStream(new FileInputStream(file)); (int)file.length()); //4. تنفيذ العبارة int i=prest.executeUpdate(); System.out.println("i="+i); } أخيرا { JdbcUtils.free(resultset, prest, conn); ResultSet resultset=null حاول { //2. إنشاء اتصال conn=JdbcUtils.getConnection(); // وضع تصميم حالة واحدة conn=JdbcUtilsSingle.getInstance().getConnection(); //3. إنشاء بيان st=conn.createStatement() //4. تنفيذ البيان resultset=st.executeQuery("select big_bit from blob_test" //5. معالجة النتائج while(resultset.next()) { Blob blob=resultset.getBlob(1); InputStream in=blob.getBinaryStream(); //reader=resultset.getCharacterStream(1); File file=new File("1.jpeg"); =بايت جديد[1024]; for(int i=0;(i=in.read(buff))>0;) { out.write(buff,0,i);
آمل أن تكون هذه المقالة مفيدة للجميع في برمجة جافا.