照着视频敲的,但是把mysql数据库改成了Oracle,之前不加图片都可以,
Students s = new Students(3,"张三","男",new Date(),"厦门");
//先获得照片文件
File file = new File("d:"+File.separator+"panda.jpg");
//获得照片文件的输入流
InputStream input = new FileInputStream(file);
//创建一个Blob对象
Blob image = Hibernate.getLobCreator(session).createBlob(input,input.available());
//设置照片属性
s.setPicture(image);
session.save(s);hibernate读写oracle中blob字段的时候要做特殊操作,因为Blob自身有一个cursor,你必须使用cursor对blob进行操作,因而你在写入Blob之前,必须获得cursor才能进行写入,获得Blob的cursor需要你先插入一个empty的blob,即首先要从数据库中查出这blob字段 ,然后给他清空 ,再通过数据流方式写入新的