import java.io.FileInputStream;
import java.io.OutputStream;
import org.hibernate.Hibernate;
import org.hibernate.LockMode;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.lob.SerializableBlob;
import org.hibernate.lob.SerializableClob;
import t_user.Testuser;
public class ReadOracleDemo {
public static void main(String[] args) throws Exception{
// TODO Auto-generated method stub
Session session=HibernateSessionFactory.getSession();
Transaction tx=session.beginTransaction();
Testuser user=new Testuser();
user.setAge((long)24);
user.setId((long)5);
user.setName("xiaoxin");
user.setUsertype((long)2);
user.setVersion((long)1);
user.setPhoto(Hibernate.createBlob(new byte[1]));
user.setResume(Hibernate.createClob(" "));
session.save(user);
session.flush();
session.refresh(user, LockMode.UPGRADE);
SerializableBlob sb = (SerializableBlob)user.getPhoto();
java.sql.Blob wrapblob = sb.getWrappedBlob();
oracle.sql.BLOB blob = (oracle.sql.BLOB) wrapblob;
OutputStream output = blob.getBinaryOutputStream();
FileInputStream input=new FileInputStream("E:/PHOTO/baby/c0.jpg");
byte b []=new byte[80*1024];
input.read(b);
output.write(b);
input.close();
output.close();
SerializableClob sc=(SerializableClob)user.getResume();
java.sql.Clob wrapclob=sc.getWrappedClob();
oracle.sql.CLOB clob=(oracle.sql.CLOB)wrapclob;
java.io.Writer writer=clob.getCharacterOutputStream();
writer.write("This is the second clob");
session.save(user);
tx.commit();
}
}