Java中如何使用Struts2实现将图片以二进制流的形式存储到Oracle数据库,不使用JDBC?
1个回答
2013-07-02
展开全部
我写了个例子,你可以参考下,保存图片形式是二进制import java.io.*;
import java.sql.*;
public class FileImage1{
public void insert(String name,File file)
{
Connection con=null;
try {
con=DBhelper.getCon();
String sql="insert into addImage values(?,?)";
PreparedStatement ps=con.prepareStatement(sql);
BufferedInputStream input=new BufferedInputStream(new FileInputStream(file));//可缓冲字节流
//InputStream input=new FileInputStream(file);
int k=input.available();
ps.setString(1,name);
ps.setBinaryStream(2, input, k);
int result=ps.executeUpdate();
if(result>0)
System.out.println("保存成功");
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}public static void main(String[] args) {
new FileImage1().insert("张远",new File("D:\\图片\\lin.jpg"));
}
}
import java.sql.*;
public class FileImage1{
public void insert(String name,File file)
{
Connection con=null;
try {
con=DBhelper.getCon();
String sql="insert into addImage values(?,?)";
PreparedStatement ps=con.prepareStatement(sql);
BufferedInputStream input=new BufferedInputStream(new FileInputStream(file));//可缓冲字节流
//InputStream input=new FileInputStream(file);
int k=input.available();
ps.setString(1,name);
ps.setBinaryStream(2, input, k);
int result=ps.executeUpdate();
if(result>0)
System.out.println("保存成功");
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}public static void main(String[] args) {
new FileImage1().insert("张远",new File("D:\\图片\\lin.jpg"));
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询