Nir*_*tel 22 java hibernate hibernate-5.x
在Hibernate 4.3.x中,有一个getClassMapping(className)类的方法org.hibernate.cfg.Configuration.但在Hibernate 5.x中,此getClassMapping(className)方法已从Configuration类中删除.
Hibernate-5中的代码替换是什么?
请帮助解决此迁移问题.
小智 5
我发布了Broadleaf Commerce,因为他们还需要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();
}
}
Run Code Online (Sandbox Code Playgroud)
您将需要该文件:
/resources/META-INF/services/org.hibernate.boot.spi.SessionFactoryBuilderFactory
Run Code Online (Sandbox Code Playgroud)
使用完全限定的类名,在我的示例中是:
org.broadleafcommerce.openadmin.server.dao.EntityMetaData
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8240 次 |
| 最近记录: |