晕倒一片
ejb的书一大堆网上搜索第二个问题sample:
FileInputStream longInput_modify=new FileInputStream("D:\\testfile\\install.jpg");
byte[] longStr_modify=new byte[longInput_modify.available()];
longInput_modify.read(longStr_modify);
longInput_modify.close();
ejb的书一大堆网上搜索第二个问题sample:
FileInputStream longInput_modify=new FileInputStream("D:\\testfile\\install.jpg");
byte[] longStr_modify=new byte[longInput_modify.available()];
longInput_modify.read(longStr_modify);
longInput_modify.close();
import java.util.*;
import java.sql.*;
import java.io.*;
import java.text.*;
import oracle.sql.*;
import oracle.jdbc.driver.*;public class write { public static void main(String[] args) throws SQLException,IOException
{
PreparedStatement stmt = null;
ResultSet rs = null;
InputStream fin = null;
OutputStream fout = null;
Connection conn=null;
try{
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
conn =DriverManager.getConnection ("jdbc:oracle:thin:@wuhan:1521:oral",
"system", "manager");
conn.setAutoCommit(false); stmt=conn.prepareStatement("insert into tt values (?,EMPTY_BLOB() ) ");
stmt.setInt(1,2);
stmt.execute() ;
stmt.clearParameters() ;
stmt=conn.prepareStatement( "select w from tt where id=? for update ");
stmt.setInt(1,2);
rs=stmt.executeQuery() ;
if(rs.next()) {
BLOB blob = ((OracleResultSet)rs).getBLOB("w");
fout = blob.getBinaryOutputStream();
File f = new File("gj2.doc");
fin = new FileInputStream(f);
byte[] buffer = new byte[blob.getBufferSize()];
int bytesRead = 0;
while((bytesRead = fin.read(buffer)) != -1) {
fout.write(buffer, 0, bytesRead);
} blob = null;
f = null;
buffer = null;
}
}
catch(SQLException ex) {
ex.printStackTrace(); }
catch(FileNotFoundException ef) {
ef.printStackTrace(); }
catch(Exception e) {
e.printStackTrace(); } finally {
try {
fin.close();
fout.close();
conn.commit();
stmt.close();
conn.close();
fin = null;
fout = null;
rs = null;
conn = null;
stmt = null;
}
catch(SQLException e) {
e.printStackTrace();
}
}
}}
public void initializeDB()
{
try
{
mStatement=conn.createStatement();
ResultSet rsInsert =mStatement.executeQuery("select * from imageTable");
ResultSetMetaData rsmdInsert=rsInsert.getMetaData();
for (int i = 1; i <= rsmdInsert.getColumnCount();i++)
{
mTestImageDb.jCBColumnName.addItem(rsmdInsert.getColumnName(i));
}
while (rsInsert.next())
{
miCurrentCount++;
mTestImageDb.jCBRowNumber.addItem(String.valueOf(miCurrentCount));
} rsmdInsert = null;
rsInsert.close();
rsInsert = null;
mStatement.close();
mStatement= null;
System.err.println(miCurrentCount);
}
catch (Exception exInit)
{
System.err.println("initializeDB error:"+exInit);
} }public boolean insertImage(File f)
{
String StrSql = "insert into imageTable values (?,?,?,?,?,?,?)";
String sFile = f.getName(); try
{
// File f = new File("e:\\T14.gif");
fin = new FileInputStream(f);
/*//////////////////////////////////////通过字节数组来存入数据库
/** byte[] ib = new byte[(int)f.length()];
fin.read(ib);
ByteArrayInputStream fou1 = new ByteArrayInputStream(ib);
*/
/** ps = conn.prepareStatement(StrSql); ps.setInt(1,miCurrentCount+1);
ps.setString(2,sFile);
ps.setString(3,sFile.substring(sFile.length()-3));
ps.setString(4,f.getPath());
ps.setInt(5,(int)f.length());
///时间
Calendar cc = new GregorianCalendar();
ps.setTimestamp(6,new Timestamp(cc.getTime().getTime()),cc);
/////////////////////////////////////////////////
int len = (int)f.length();
ps.setBinaryStream(7,fin,len);
ps.setBlob();
ps.executeUpdate();
ps.clearParameters();
}
catch ( Exception ex )
{
ex.printStackTrace();
return false;
} miCurrentCount++;
mTestImageDb.jCBRowNumber.addItem(String.valueOf(miCurrentCount)); return true;
} public boolean getImage()
{
try
{
fou = new FileOutputStream("e:\\temp\\2.jpg"); st = conn.createStatement();
rs = st.executeQuery("Select * from imageTable "); // rs.molast();
//System.out.println("当前数据库中的行数:" + rs.getInt("id"));
//rs.first();
while (rs.next())
{
int dLength = rs.getInt("ImageLength");
InputStream imagedata = rs.getBinaryStream("image"); idata = new byte[dLength]; int rec = imagedata.read(idata);
/*char[] c = new char[dLength];
for(int i2 = 0 ; i2 < dLength ; i2 ++)
{
c[i2] = (char)idata[i2];
}
c2b(c);*/
/** ImageIcon mImageIcon = new ImageIcon(idata);
this.mTestImageDb.jLImage.setIcon(mImageIcon);
fou.write(idata);
//idata = null;
} rs.close();
st.close();
fou.close();
}
catch (Exception ex )
{
ex.printStackTrace();
return false;
} return true;
}}
仅共参考!第一个问题:www.cn-java.com go to find it