package net.changwoo.x1wins.dao; import java.util.List; import net.changwoo.x1wins.entity.File; import org.hibernate.SessionFactory; import org.hibernate.criterion.DetachedCriteria; import org.hibernate.criterion.Restrictions; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Repository; @Repository public class FileDao extends GenericDaoImpl <File, Integer> { private static final Logger logger = LoggerFactory.getLogger(FileDao.class); @Autowired FileDao(SessionFactory sf) { super(sf); } @Override protected Class getEntityClass() { // TODO Auto-generated method stub return File.class; } public File findFirstFile(int snum, String classname) throws Exception{ // List user = getSession().createCriteria(User.class) // .add(Restrictions.eq("userid", userid)) // .add(Restrictions.eq("password", password)).list(); DetachedCriteria criteria = createDetachedCriteria(); criteria.add(Restrictions.eq("snum", snum)).add(Restrictions.eq("classname", classname)); List list = getHibernateTemplate().findByCriteria(criteria); // List list = getSession().createCriteria(File.class) // .add(Restrictions.eq("snum", snum)) // .add(Restrictions.eq("classname", classname)).list(); logger.info(" list size : "+list.size()); File file; if(list.size()<1){ throw new Exception(); // file = null; }else{ file = (File)list.get(0); } // Iterator iter = list.iterator(); // while ( iter.hasNext() ) { // Map map = (Map) iter.next(); // file = (File) map.get(Criteria.ROOT_ALIAS); // } return file; } public List<File> findFile(int snum, String classname, String filename) throws Exception{ // List list = getSession().createCriteria(File.class) // .add(Restrictions.eq("snum", snum)) // .add(Restrictions.eq("classname", classname)) // .add(Restrictions.eq("filename", filename)).list(); DetachedCriteria criteria = createDetachedCriteria(); criteria.add(Restrictions.eq("snum", snum)); criteria.add(Restrictions.eq("classname", classname)); criteria.add(Restrictions.eq("filename", filename)); List list = getHibernateTemplate().findByCriteria(criteria); logger.info(" list size : "+list.size()); File file = (File)list.get(0); // Iterator iter = list.iterator(); // while ( iter.hasNext() ) { // Map map = (Map) iter.next(); // file = (File) map.get(Criteria.ROOT_ALIAS); // } return list; } }