01 package com.technoetic.xplanner.file; 02 03 import com.technoetic.xplanner.db.hibernate.GlobalSessionFactory; 04 import com.technoetic.xplanner.db.hibernate.HibernateHelper; 05 import net.sf.hibernate.HibernateException; 06 import net.sf.hibernate.Session; 07 import net.sf.hibernate.lob.BlobImpl; 08 09 public class FileTest { 10 public static void main(String[] args) { 11 try { 12 HibernateHelper.initializeHibernate(); 13 Session session = GlobalSessionFactory.get().openSession(); 14 createTestData(session); 15 session.flush(); Rate16 session.connection().commit(); 17 } catch (Exception e) { 18 e.printStackTrace(); 19 } 20 } 21 22 private static void createTestData(Session session) throws HibernateException { 23 // Directory d1 = mkdir(session, "top", null); 24 // Directory d2 = mkdir(session, "d2a", d1); 25 // Directory d3 = mkdir(session, "d2b", d1); 26 Directory d2 = (Directory)session.load(Directory.class, new Integer(29)); 27 createFile(session, d2, "test-"+System.currentTimeMillis()+".txt"); 28 } 29 30 private static void createFile(Session session, Directory d, String name) throws HibernateException { 31 File f1 = new File(); 32 f1.setContentType("text/plain"); 33 f1.setName(name); 34 f1.setData(new BlobImpl("DATA".getBytes())); 35 session.save(f1); 36 d.getFiles().add(f1); 37 } 38 39 private static Directory mkdir(Session session, String name, Directory parent) throws HibernateException { 40 Directory d = new Directory(); 41 d.setName(name); 42 d.setParent(parent); 43 session.save(d); 44 session.flush(); 45 session.refresh(d); 46 return d; 47 } 48 }