⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testsavablob.java

📁 实现Hibernate操作blob的开发
💻 JAVA
字号:
package main;

import java.io.File;
import java.io.FileInputStream;
import java.io.OutputStream;
import oracle.sql.*; 



import org.hibernate.Hibernate;
import org.hibernate.HibernateException;
import org.hibernate.LockMode;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.lob.SerializableBlob;

import test.hibernate.HibernateSessionFactory;
import test.hibernate.Iricinfo;
//import vteam.csps.entity.bean.IRICINFO;
//import vteam.csps.entity.dao.IIricfidsDAO;
//import vteam.csps.entity.dao.impl.IricfidsDAOImpl;
//import vteam.frame.system.exception.StException;


public class TestSavaBlob {  
	  public static void main(String [] args) { 
//		      
		    byte[] buffer = new byte[1]; 
		    buffer[0] = 1; 
		    
		    SessionFactory sf = new Configuration().configure().buildSessionFactory();
		  Session session = sf.openSession();
		  Transaction tx = session.beginTransaction();
		    try { 
		      
		      Iricinfo c = new Iricinfo(); 
		      c.setBUSDATE("2007-07-05"); 
		      c.setRICNO("1");
		      c.setFILENAME("log.zip");
		      c.setFILEINFO(Hibernate.createBlob(buffer)); 
		      
		      session.save(c); 

		      session.flush(); 
		      
		      session.refresh(c, LockMode.UPGRADE);   
		      
		      SerializableBlob blob1 = (SerializableBlob)c.getFILEINFO();

		      BLOB wrappedBlob = (BLOB) blob1.getWrappedBlob();    
		      
		      String fileName = "log.zip"; 
		      File f = new File("c:/"+fileName); 
		      
		      OutputStream out = wrappedBlob.getBinaryOutputStream();    
		      
		      FileInputStream fin = new FileInputStream(f);    
//		      int count = -1, total = 0; 
		      byte[] data = new byte[(int)fin.available()]; 
		      fin.read(data); 
		      out.write(data);
		      
//		      wrappedBlob.setBytes(1, data);
//		      c.setFILEINFO(wrappedBlob);
//		      out.write(data);      
		      fin.close(); 
		      out.close(); 
		      session.flush(); 
		      tx.commit(); 
		    
		    } catch (Exception e) { 
		    	 System.out.println("wrong");
		      System.out.println(e.getMessage()); 
		    } finally { 
		      if (session != null) 
		        try { 
		        	session.close(); 
		        } catch (Exception e) {} 
		    }
		  
//
//	      byte[] buffer = new byte[1];
//	      buffer[0] = 1;
//	     Session session =  HibernateSessionFactory.getSession();
//	    
//		  Transaction tx = session.beginTransaction();
//	     try { 
//	    	 String zipName = "BOP31000000110007070711.zip";
//	       main.IRICINFO   iricinfo  = new main.IRICINFO ();
//	       test.hibernate.Iricinfo iricinfo = new test.hibernate.Iricinfo(); 
//	       iricinfo.setBUSDATE("2007-06-07");
//	       
//	       iricinfo.setRICNO("11");
//	       iricinfo.setFILENAME(zipName);
//	       iricinfo.setFILEINFO(Hibernate.createBlob(buffer));
//	 
//
//	       
//	       session.save(iricinfo);
//	 
//	       session.flush();
//	 
//	       session.refresh(iricinfo, LockMode.UPGRADE);
//	 
//	       SerializableBlob blob1 = (SerializableBlob) iricinfo.getFILEINFO();
//	 
//	       BLOB wrappedBlob = (BLOB) blob1.getWrappedBlob();
//	 
////	       String fileName = "PABTemp.zip";
//	       File f = new File("E:/PABTemp/bop/import/" + zipName);
//
//	      OutputStream out = wrappedBlob.getBinaryOutputStream();    
//
//	      FileInputStream fin = new FileInputStream(f);
//
//	      byte[] data = new byte[ (int) fin.available()];
//	      fin.read(data);
//	      out.write(data);
//
//	      fin.close();
//	      out.close();
//	      session.flush();
//	      tx.commit();
//
//	    }
//	     catch(StException st)
//	     {
//	    	 System.out.println("1");
//	    	 System.out.println(st.getMessage());
//	     }
//	     catch(HibernateException st)
//	     {
//	    	 System.out.println("2");
//	    	 System.out.println(st.getMessage());
//	     }
//	     catch (Exception e) {
//	      System.out.println("wrong");
//	      System.out.println(e.getMessage());
//	    } finally {
//	      if (session != null)
//	        try {
//	          session.close();
//	        } catch (Exception e) {}
//	    }
		  }
//	  
		} 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -