Использование Hibernate 4.2.6 и 3.1.1 SpringПочему я получаю экземпляр AnnotationConfiguration, если AnnotationConfiguration устарел?
У меня есть один класс, подобный этому
@Entity
@Table(name = "MY_TABLE")
public class MyTable{ ... }
Тогда я следующий в моем файле hibernate.cfg.xml
<mapping class="com.mycompany.myapp.persistence.domain.MyTable"/>
Когда я запускаю тест JUnit, где я получаю сеанс и запрашиваю таблицу, я получаю следующую ошибку:
Initial SessionFactory creation failed.org.hibernate.MappingException: An AnnotationConfiguration instance is required to use <mapping class="com.mycompany.myapp.persistence.domain.MyTable"/>
Я не понимаю, почему, когда на основе того, что я прочитал, AnnotationConfiguration устарела, а функциональность переместилась в конфигурацию.
Чтобы получить сеанс, я делаю это
Configuration configuration = new Configuration();
configuration.configure();
ServiceRegistry serviceRegistry = new ServiceRegistryBuilder().applySettings(configuration.getProperties()).buildServiceRegistry();
sessionFactory = configuration.buildSessionFactory(serviceRegistry);
Session session = sessionFactory.openSession();
, но он не в состоянии получить сеанс и выдает эту ошибку.
Ох ... Не нужно ли, по крайней мере, указывать драйвер db, url и т. Д. В xml? Мне даже не нужен бит? –
roark
Ну, если я удалю это, ошибка AnnotationConfiguration исчезнет, но сеанс не получит. Теперь я получаю сообщение об ошибке «Configured SessionFactory: null». Есть ли проблемы с кодом, который начинается с Configuration configuration = new Configuration():? – roark