我正在尝试仅使用带有注释的 Hibernate 4 和一个hibernate.cfg.xml
文件。我已经做了自己的注释,并正在使用反射将其添加到配置中。我能够以这种方式很好地使用 Hibernate 4,但我的配置是使用不推荐的方法构建的。
final Configuration configuration = new Configuration();
final Reflections reflections = new Reflections(Item.class.getPackage().getName());
final Set<Class<?>> classes = reflections.getTypesAnnotatedWith(Entity.class);
for (final Class<?> clazz : classes) {
configuration.addAnnotatedClass(clazz);
}
return configuration.configure().buildSessionFactory();
(不推荐使用的代码:)buildSessionFactory();
。
甚至 hibernate 4 文档也显示以这种方式构建配置。
如果我尝试使用新方法 ( buildSessionFactory(ServiceRegistry)
,我不会得到相同的结果,而且似乎有很多不必要的代码来完全按照不推荐使用的方法做。但是,我不想继续使用这种风格,因为无论如何我都不喜欢使用已弃用的代码。
我的问题是:如何以上述方式仅从配置文件正确配置 Hibernate 4?我似乎只是造成错误并面临不必要的困难。