HibernateTemplate 의 일반적인 용법

HibernateTemplate 는 일반적인 추가, 삭제, 수정, 조회 등 기본 적 인 작업 을 수행 하 는 데 자주 사용 되 는 방법 을 제공 합 니 다. Spring 2.0 은 이름 SQL 조회 에 대한 지원 을 증가 하고 페이지 에 대한 지원 도 증가 합 니 다.대부분의 경우 Hibernate 의 일반적인 용법 을 사용 하면 대부분의 DAO 대상 의 CRUD 작업 을 완성 할 수 있다.다음은 HibernateTemplate 의 일반적인 방법 소개 입 니 다.
void delete (Object entity): 지정 한 지구 화 인 스 턴 스 삭제
deleteAll (Collection entities): 집합 내 모든 지구 화 클래스 인 스 턴 스 삭제
find (String query String): HQL 검색 문자열 에 따라 인 스 턴 스 집합 을 되 돌려 줍 니 다.
findByNamedQuery (String query Name): 이름 조회 에 따라 인 스 턴 스 집합 을 되 돌려 줍 니 다.
get (Class entity Class, Serializable id): 홈 키 에 따라 특정 지구 화 클래스 의 인 스 턴 스 를 불 러 옵 니 다.
save (Object entity): 새로운 인 스 턴 스 저장
saveOrUpdate (Object entity): 인 스 턴 스 상태 에 따라 저장 또는 업 데 이 트 를 선택 하 십시오.
update (Object enity): 인 스 턴 스 의 상 태 를 업데이트 하고 enity 가 지속 적 인 상태 여야 합 니 다.
setMaxResults (int maxResults): 페이지 크기 설정
다음은 완전한 DAO 종류의 소스 코드 입 니 다.

public class PersonDAOHibernate implements PersonDAO

{

    //  log4j           


private static Log log = LogFactory.getLog(NewsDAOHibernate.class);

    //           SessionFactory。


private SessionFactory sessionFactory;

//          HibernateTemplate


private HibernateTemplate hibernateTemplate = null;

         //    SessionFactory   setter  


    public void setSessionFactory(SessionFactory sessionFactory) 

{

           this.sessionFactory = sessionFactory;

    }

         //    DAO   HibernateTemplate


public HIbernateTemplate getHibernateTemplate() 

{

         //  ,     hibernateTemplate       


         if ( hibernateTemplate == null)

         {

                   //     ,    HibernateTemplate  


                   hibernateTemplate = new HibernateTemplate(sessionFactory);

         }

         return hibernateTemplate;

}

         //         


    public List getPersons()

         { 

                   //  HibernateTemplate find    Person     


           return getHibernateTemplate().find("from Person");

    }

         /**

          *           

          * @ return        Person  

          * @ param    

    public News getNews(int personid)

         {

           return (Person)getHibernateTemplate().get(Person.class, new Integer(personid));

    }

         /**

          * @ person      Person  

          */

    public void savePerson(Person person)

         { 

                   getHibernateTemplate().saveOrUpdate(person);

    }

원본 주소:http://blogold.chinaunix.net/u1/55983/showart_712831.html

좋은 웹페이지 즐겨찾기