2017-12-29 2 views
-1

샘플 하이버 네이트 프로그램을 만들려고하고 있는데, xml 기반의 최대 절전 모드 구성 코드를 사용하고 있기 때문에 주석과 자바 설정을 기반으로 변환하려고합니다. Employee.hbm.xml을 주석 (Employee.class의 @Entity)로 성공적으로 변환했지만 hibernate.cfg.xml에 대해 동일한 작업을 수행 할 수 없습니다.hibernate.cfg.xml을 자바 설정

Configuration cfg = new AnnotationConfiguration().addAnnotatedClass(com.hibernate.apple.Employee.class); 
    cfg.setProperty("hibernate.hbm2ddl.auto","update"); 
    cfg.setProperty("hibernate.connection.driver_class","com.mysql.jdbc.Driver"); 
    cfg.setProperty("hibernate.dialect","org.hibernate.dialect.MySQLDialect"); 
    cfg.setProperty("hibernate.connection.url","jdbc:mysql://localhost/DataBase"); 
    cfg.setProperty("hibernate.connection.username","xxx"); 
    cfg.setProperty("hibernate.connection.password","xxx"); 
Session s = cfg.configure().buildSessionFactory().openSession(); 
    Transaction t = s.beginTransaction(); 
    t.begin(); 
.... 

하지만 기부 오류 코드 위

Exception in thread "main" org.hibernate.HibernateException: /hibernate.cfg.xml not found 

내가 뭔가를 놓친 거지가, 같은를 요청하는 왜의 hibernate.hbm.xml을 대체하는 것입니다?

답변

0

당신은 방법 configure를 호출하고 그 문서는 다음 정보를 제공합니다

를 사용하여 응용 프로그램 자원 이름이있는 hibernate.cfg.xml에 지정된 매핑과 특성.

이 파일을 사용하지 않으려면 configure을 호출하지 말고 세션을 만드십시오. 그런데

Session s = cfg.buildSessionFactory().openSession(); 

, AnnotationConfiguration는 최대 절전 모드 4와 5는이 클래스를 따라서 약 updating 현재 최대 절전 모드 버전을 생각하지 않는 최대 절전 모드 3에서입니다.

관련 문제