Oracle 操作图片

Oracle 操作图片

 

Blobtest.java
Created with JBuilder

package testapp;

import java.sql.*;
import java.io.*;

public class Blobtest {   public Blobtest() {  }   public static void main (String args [])  throws SQLException, IOException  {  //write();  read();   }   static void read() throws SQLException, IOException {  DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());   // Connect to the database  // You can put a database name after the @ sign in the connection URL.  Connection conn =  DriverManager.getConnection ("jdbc:oracle:thin:@ebizser:1521:serverdb", "scott", "tiger");   // It's faster when you don't commit automatically  conn.setAutoCommit (false);   // Create a Statement  Statement stmt = conn.createStatement ();    // Do a query to get the row with NAME 'StreamExample'  ResultSet rset =  stmt.executeQuery ("select col2 from lobtest where userid=1");   // Get the first row  if (rset.next ())  {  // Get the data as a Stream from Oracle to the client  InputStream gif_data = rset.getBinaryStream (1);   // Open a file to store the gif data  FileOutputStream os = new FileOutputStream ("example.jpe");   // Loop, reading from the gif stream and writing to the file  int c;  while ((c = gif_data.read ()) != -1)  os.write (c);   // Close the file  os.close ();  }   // Close all the resources  if (rset != null)  rset.close();   if (stmt != null)  stmt.close();   if (conn != null)  conn.close();  }   static void write() throws SQLException, IOException {   DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());  // Connect to the database  // You can put a database name after the @ sign in the connection URL.  Connection conn =  //DriverManager.getConnection ("jdbc:oracle:thin:@ebizser:1521:serverdb", "scott", "tiger");  DriverManager.getConnection ("jdbc:oracle:oci8:@ebdb", "scott", "tiger");   // It's faster when you don't commit automatically  conn.setAutoCommit (false);   // Create a Statement    File file = new File("C://Documents and Settings//gzb.ECOM//My Documents//My Pictures//28-3-16933_jinxishan34s.jpe");   InputStream is = new FileInputStream ("C://Documents and Settings//gzb.ECOM//My Documents//My Pictures//28-3-16933_jinxishan34s.jpe");  PreparedStatement pstmt =  conn.prepareStatement ("insert into lobtest (userid, col2 ) values (?, ?)");   pstmt.setBinaryStream(2, is, (int)file.length ());  pstmt.setInt (1, 2);  pstmt.execute ();    if (pstmt != null)  pstmt.close();   if (conn != null)  conn.close();  }  }  

Blobtest.java
Created with JBuilder

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值