在Hibernate 4.3.x中,有一个方法getClassMapping(className)
班级的org.hibernate.cfg.Configuration
。
但在 Hibernate 5.x 中,这getClassMapping(className)
方法已从Configuration
class.
Hibernate-5 中的代码替换是什么?
请帮助解决这个迁移问题。
I posted https://github.com/BroadleafCommerce/BroadleafCommerce/issues/593到阔叶商业公司,因为他们还需要PersistentClass
:
我一直在使用 Hibernate 5,其中一些变化......
现在要获取元数据,请使用 Serviceloader:
package org.broadleafcommerce.openadmin.server.dao;
import org.hibernate.boot.SessionFactoryBuilder;
import org.hibernate.boot.spi.MetadataImplementor;
import org.hibernate.boot.spi.SessionFactoryBuilderFactory;
import org.hibernate.boot.spi.SessionFactoryBuilderImplementor;
public class EntityMetaData implements SessionFactoryBuilderFactory {
private static final ThreadLocal<MetadataImplementor> meta = new ThreadLocal<>();
@Override
public SessionFactoryBuilder getSessionFactoryBuilder(MetadataImplementor metadata, SessionFactoryBuilderImplementor defaultBuilder) {
meta.set(metadata);
return defaultBuilder;
}
public static MetadataImplementor getMeta() {
return meta.get();
}
}
您将需要该文件:
/resources/META-INF/services/org.hibernate.boot.spi.SessionFactoryBuilderFactory
具有完全限定的类名,在我的示例中是:
org.broadleafcommerce.openadmin.server.dao.EntityMetaData
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)