hibernate存储图片时,报错:java.lang.AbstractMethodError: com.mysql.jdbc.PreparedStatement.setBinaryStream(ILjava/io/InputStream;J)V,
代码如下:
Students s=new Students(1,"张三丰","男",new Date(),"武当山");
//先获得照片文件
File f=new File("e:/dtbg.jpg");
//获得照片输入流
InputStream input=new FileInputStream(f);
//创建一个Blob对象
Blob image=Hibernate.getLobCreator(session).createBlob(input,input.available());
//设置照片属性
s.setPicture(image);
session.save(s);
代码其实是没问题的,主要原因是mysql-connector-java的版本较低,更换更高的版本之后,就不再报错了。之前是mysql-connector-java-5.0.8-bin.jar,更换到mysql-connector-java-5.1.22-bin.jar后,问题解决。