2017-12-29 22 views
-1

サンプルのhibernateプログラムを作成しようとしています。xmlベースの休止状態設定の作業コードがあり、アノテーションとjava設定に基づいて変換しようとしています。 私はEmployee.hbm.xmlを注釈(Employee.classの@Entity)に変換することに成功しましたが、hibernate.cfg.xmlに対して同じことはできません。上記のコードhibernate.cfg.xmlをJava設定

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は、Hibernate 3から休止状態4と5は、このクラスを持っていないため、現在休止バージョンupdating考えです。

関連する問題